This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: objects_must_conflict_p
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: ebotcazou at libertysurf dot fr
- Cc: gcc at gcc dot gnu dot org
- Date: Sat, 5 Jul 03 06:53:23 EDT
- Subject: Re: objects_must_conflict_p
I think that's overly optimistic: what will ensure that an operation on a
field of the first aggregate will always conflict with an operation on a
field of the second aggregate, if they happen to be given the same address
on the stack? Nothing I'd say, like in PR optimization/11198.
I think you're right. It would be enough to check if the alias sets have
a common subset.
So, unless we want to recursively check that every member of the first
aggregate conflicts with every member of the second aggregate that
will overlap it on the stack, we should return 0 too for aggregate vs
aggregate.
In which case, we essentially *never* share stack slots since they aren't
allocated for scalars.