Hi,

On Wed, 16 Feb 2005, Gary Funck wrote:

> struct shared_ptr_struct
>   {
>     unsigned int phase  : 24;
>     unsigned short thread : 16;
>     void *addr;
>   };
> 
> On the x86_64 (ie, Opteron[tm]) platform, GCC appears to designate the
> underlying mode of this type as a BLKmode, instead of a TImode.  This
> 
> I haven't tried making the suggested change to see if the x86_64 code
> generator can fully support it.  Are there any technical reasons that
> the x86_64 shouldn't target 128 bit structs into a long double (ie, two
> 64 bit registers)?

Ugh, good catch.  If changing MAX_FIXED_MODE_SIZE doesn't affect the ABI
(and I wouldn't know why it should) then we could change it.  (it
optimizes a simple test program copying and passing your structure 
around).


Ciao,
Michael.

Reply via email to