Eric Botcazou <ebotca...@adacore.com> writes: >> Anyway, others can have different opinion on what "X" should mean, >> CCing Jeff and Eric. > > I personally think that we should not change it and adjust LRA instead to > error out instead of ICEing (even if this means erroring out in a few more > cases with LRA than with reload for now, e.g. gcc.dg/torture/asm-subreg-1.c > which looks somewhat dubious to me).
But the error isn't really under user control. The original asm in the testcase is: __asm__ __volatile__ ("..." : : "X" (ptr)); which seems fine, rather than: __asm__ __volatile__ ("..." : : "X" (*x + y * z / 11)); I don't think it's the user's fault that the compiler decided to convert the former to the latter. Thanks, Richard