x86-allocate-registers bug

Matthew Fluet Matthew Fluet <fluet@CS.Cornell.EDU>
Thu, 13 Sep 2001 10:22:36 -0400 (EDT)


> # directive: Cache: caches: MEM<l>{Temp}[(indexTemp)+(0*4)] -> %eax 
> entries:
> %esi MEM<l>{GCStateHold}[((gcState+12))+(0*4)] 1978 false NO
> %edi MEM<l>{GCStateHold}[((gcState+40))+(0*4)] 924 false NO
> %ebp MEM<l>{Locals}[(localpointer)+(4*4)] 979 false NO
> %eax MEM<l>{Temp}[(indexTemp)+(0*4)] 1019 true NO
> %edx MEM<l>{Locals}[(localpointer)+(5*4)] 1019 false NO
> %esp MEM<l>{Temp}[(indexTemp)+(0*4)] 1039 false NO
> reserved:
> %eax
> fltstack:

Yuck!  The "really bad thing" about this is the register allocation thinks
that indexTemp is in both %eax and $esp.  

Could you run that G0 on the regressions and benchmarks and see if it
shows up on anything smaller?