This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Incorrect bitfield aliasing with Tree SSA


On 6/16/07, Eric Botcazou <ebotcazou@libertysurf.fr> wrote:
> HMm, i'd just record it for all of them, since the [fields] are accessible
> through a pointer to the structure.

They are indeed accessible this way...

> Just because you can't directly take the address of a bitfield doesn't
> mean you can't access one through a pointer, which is the entire
> purpose of knowing alias sets (knowing what a pointer dereference
> could affect).

...but DECL_NONADDRESSABLE_P precisely means that the alias set used for
accessing these fields at the RTL level is that of the containing structure:

If that was really true, we would get this right.

Adam has simply run with C into another form of the same discrepancy we have run into when we tried to enable struct aliasing with Ada, see PR 25737.

You guys have come up with a very weird idea of what non-addressability means.


These fields are all addressable, they are just not directly addressable.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]