Joseph S. Myers - Re: Complex types aliasing and MEM_IN_STRUCT_P (original) (raw)
This is the mail archive of the gcc-patches@gcc.gnu.orgmailing 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] |
- From: "Joseph S. Myers"
- To: Andrew Pinski
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Wed, 14 Feb 2007 14:01:32 +0000 (UTC)
- Subject: Re: Complex types aliasing and MEM_IN_STRUCT_P
- References: <200702140622.l1E6Mplk016854@localhost.localdomain>
On Wed, 14 Feb 2007, Andrew Pinski wrote:
What happen instead of this patch, you add to get_alias_set to return the same aliasing set as the underlying type like what happens for vector types instead of calling record_component_aliases on the type? This seems like the better way of implementing this instead of special casing complex types.
This bug has nothing to do with alias sets. It's about the special case that says that a scalar at a fixed address can't alias a struct at a varying address. The code only gets as far as checking that case in the first place if it's possible for the two alias sets to alias, so returning the same alias set for real and complex would make no difference.
An access to a component of a complex type can get marked as a struct access in store_field at least. This makes it necessary that accesses to complex types and their components never get marked as scalars. (They may sometimes be marked as not known to be either scalar or struct.)
I didn't think we had accessors to access components of vectors the same way you can access real and imaginary parts of complex types.
-- Joseph S. Myers joseph@codesourcery.com
- References:
- Re: Complex types aliasing and MEM_IN_STRUCT_P
* From: Andrew Pinski
- Re: Complex types aliasing and MEM_IN_STRUCT_P
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |