insv vs one-bit fields
Paul Schlie
schlie@comcast.net
Sun Sep 4 21:02:00 GMT 2005
Richard Henderson writes:
> On Fri, Sep 02, 2005 at 09:40:20PM -0400, DJ Delorie wrote:
> http://gcc.gnu.org/ml/gcc/2005-09/msg00064.html
> > So... why is it illegal to put a constant into a single bit field?
>
> Probably because it was more efficient to use some other pattern
> for some other target.
>
> But there's absolutely zero chance you can reliably use a volatile
> bit field to emit a given insn sequence necessary for accessing a
> hardware register.
- Out of curiosity, how's that?
As it would seem that as HW control/I/O registers are often typically
mapped into a processor's data memory address space, they may be
correspondingly addressable via a read/mask/write as any N bit field
may be?
Candidly the only potential problem I see may occur if multiple
independent volatile bit fields of any size are defined within the same
uniquely addressable UNIT, as then an access to any would necessitate an
access to all (although even this is likely fine, as if in fact the bit
fields were defined in this way, it would be unavoidably physically
required).
More information about the Gcc
mailing list