This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: objects_must_conflict_p
- From: Eric Botcazou <ebotcazou at libertysurf dot fr>
- To: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Cc: gcc at gcc dot gnu dot org
- Date: Sat, 5 Jul 2003 13:52:04 +0200
- Subject: Re: objects_must_conflict_p
- References: <10307051053.AA17907@vlsi1.ultra.nyu.edu>
> I think you're right. It would be enough to check if the alias sets have
> a common subset.
Are you sure this would be sufficient? Both aggregates can have an 'int'
field and this won't prevent problems between 'int' and 'double' fields.
> In which case, we essentially *never* share stack slots since they aren't
> allocated for scalars.
Hum... yes, you're right, this seems to be a bit drastic.
For arrays, we can obviously do better. For records and unions, we could
check that every single member of the first conflicts with every single
member of the second, but this would be costly.
Btw, why did you choose to always return 0 for scalar vs aggregate? In this
case, I think that alias_sets_conflict_p is the right criterion.
--
Eric Botcazou