On Wed, Apr 11, 2012 at 11:01 PM, Eric Botcazou <ebotca...@adacore.com> wrote: > Hi, > > this is the spurious error on asm statements of the form: > > error: 'asm' operand requires impossible reload > > present for IA-64 on mainline and 4.7 branch. As diagnosed by Ulrich, the > code > responsible for the error implicitly assumes that constraints accepting memory > operands also accept pseudo-registers during reload. That isn't true for the > Q constraint of IA-64. The patch also fixes the MEM_VOLATILE_P access not > properly guarded by a MEM_P test in the expression. > > Bootstrapped/regtested on IA-64/Linux, OK for mainline and 4.7 branch?
How ugly ;) Can we have a generic helper for the pseudo-created-by-reload test on trunk please? Ok. Thanks, Richard. > > 2012-04-11 Eric Botcazou <ebotca...@adacore.com> > > PR target/48496 > * config/ia64/constraints.md (Q): Only accept non-volatile MEMs and > also pseudo-registers during reload. > > > 2012-04-11 Eric Botcazou <ebotca...@adacore.com> > > * gcc.target/ia64/pr48496.c: New test. > * gcc.target/ia64/pr52657.c: Likewise. > > > -- > Eric Botcazou