[Bug target/45291] avr miscompilations related to frame pointer registers
avr at gjlay dot de
gcc-bugzilla@gcc.gnu.org
Thu Nov 4 16:04:00 GMT 2010
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45291
Georg Lay <avr at gjlay dot de> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |avr at gjlay dot de
--- Comment #2 from Georg Lay <avr at gjlay dot de> 2010-11-04 16:04:02 UTC ---
insn 34 renders insn 33 invalid. This is due to subreg semantics. There are
several places in several versions of avr backend that use this technique and
will introduce similar bugs that might look different or become visible in
different passes. Amongst them are:
o bytewise shift
o bytewise rotate
o zero-extending
o bytewise insert
o perhaps many more
Without tracking it down, this particular case semms to be generated by a
zero-extend.
Moreover, there are several optimization flaws that are connected with this
resp. optimization opportunities not implemented yet. As some recrafting will
be needed to fix this anyway, I propose to write the backend so that these
optimization issues will be kicked out (or will vanish without any effort if
patterns are defined appropriately).
As I see Erik CC'ed and I think he has a better overview of bugs/optimization
flaws related to this issue, maybe it's best if he picks one bug and marks the
others as duplicate of it.
More information about the Gcc-bugs
mailing list