[Bug rtl-optimization/48696] Horrible bitfield code generation on x86
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Apr 20 09:44:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48696
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |x86_64-*-*, i?86-*-*
Status|UNCONFIRMED |NEW
Known to work| |3.3.3, 4.0.3
Version|unknown |4.5.2
Keywords| |missed-optimization
Last reconfirmed| |2011.04.20 09:43:28
Component|other |rtl-optimization
CC| |rguenth at gcc dot gnu.org
Ever Confirmed|0 |1
Known to fail| |4.0.4, 4.1.2, 4.3.5, 4.5.2,
| |4.6.0, 4.7.0
--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-20 09:43:28 UTC ---
First of all, confirmed.
We already expand to a byte read-modify-write and later do not realize
that with a word one we could combine the later read. Thus, we optimize
the bitfield store on its own, not looking at surroundings.
I'm not sure where to best address this, rather than throwing in again
the idea of lowering bitfield accesses early on trees.
Eventually simply always doing whole-bitfield read-modify-write at expansion
time will be beneficial, at least when not optimizing for size.
More information about the Gcc-bugs
mailing list