[Bug middle-end/23623] volatile keyword changes bitfield access size from 32bit to 8bit

m dot reszat at kostal dot com gcc-bugzilla@gcc.gnu.org
Tue Aug 30 13:42:00 GMT 2005


------- Additional Comments From m dot reszat at kostal dot com  2005-08-30 13:40 -------
(In reply to comment #4)
> Note this also happens on ARM where (in the EABI) it is definitely a bug

I will try and dig up the EABI for PowerPC, but it's not just about sticking to
a paper. It simply does not work for me (and probably others) the way it is. My
system traps out on me or, worce, writes garbage to the 'untouched' register
parts for some peripherals. NEC V850 and, I think, MIPS do the same.
I can't quite see what can be gained by minimizing access size, but not knowing
the complete rationale (why are non-bitfields NOT minimized, e.g. volatile int x
|= 1), how about a command line switch to let the user select?

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23623



More information about the Gcc-bugs mailing list