libffi for ARM

Daniel Jacobowitz drow@false.org
Tue Jul 3 17:04:00 GMT 2007


On Tue, Jul 03, 2007 at 09:55:54AM -0700, David Daney wrote:
> Andrew Haley wrote:
> 
> > +   __asm __volatile ("swi 0x9f0002		@ sys_cacheflush"	\
> > +	   		    : "=r" (_beg)				\
> > +	   		    : "0" (_beg), "r" (_end), "r" (_flg));	\
> > + })
> 
> Can that be correct?  Both _end and _flg have the generic "r" register 
> constraint.  Shouldn't they be forced into specific registers?

Yes, it's correct.  Their declarations force them into particular
registers; there's no constraints for the specific registers we need.

I've wondered before if special handling for constraints that allowed
single register names without needing new constraint letters might be
useful...

-- 
Daniel Jacobowitz
CodeSourcery



More information about the Gcc-patches mailing list