This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: fix opt/13862


> On Wed, Mar 03, 2004 at 11:44:13PM +0100, Jan Hubicka wrote:
> > You are right that this rule out gcse, but still can't CSE get it?
> > We CSE asm statements as long as they are not volatile...
> 
> And outputs match, etc.  I wouldn't expect a multi-output asm
> to match much at all, only single output.

We apparently can CSE multiple set asm in the testcase:

static inline f(int *a, int *b)
{
	asm("asm":"=r"(*a),"=r"(*b));
}
t()
{
	int a,b,c,d;
	f(&a,&b);
	f(&c,&d);
	return a+b+c+d;
}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]