------- Comment #2 from pinskia at gcc dot gnu dot org 2007-05-20 01:13 ------- I already looked at it, forwprop is not fully to blame, it is doing the only thing it knows, it optimizes the values correctly. This is a pure RA issue as we now run out of registers as we do asm(); if (a != b) instead of doing c = a-b; asm(); if (c) which means we need one more register and the RA does not for some unknown reason spill a and b across the asm. I don't know if we can call this a regression really, the register allocator has always been this dumb.
-- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Component|tree-optimization |middle-end Keywords| |ice-on-valid-code, ra http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32004