SSE ABI change proof for Jan's old patch

Andrew Pinski pinskia@physics.uc.edu
Tue Dec 30 05:56:00 GMT 2003


On Dec 29, 2003, at 23:59, Richard Henderson wrote:

> On Mon, Dec 29, 2003 at 08:50:27PM -0500, Andrew Pinski wrote:
>> Why do we want one for x86 or should we add one for PPC also?
>
> PPC has -mabi=altivec that explicitly changes the abi.

But on Darwin where -mabi=altivec is on by default, so this is not the 
case so that is
not quite true, see how there was no warning but an abi change.


#define  vector __attribute__((vector_size(16)))
vector float t()
{
   vector float g = (vector float){1.0, 2.0, 3.0, 4.0};
   return g;

}

[omni:src/objdir-arm/gcc] pinskia% ~/fsf-clean-nocheck/bin/gcc -O3 -S 
-o - test.c -maltivec -static

.data
.const
         .align 4
LC0:
         .long   1065353216
         .long   1073741824
         .long   1077936128
         .long   1082130432
.text
         .align 2
         .globl _t
_t:
         lis r3,ha16(LC0)
         la r2,lo16(LC0)(r3)
         lvx v2,0,r2
         blr
[omni:src/objdir-arm/gcc] pinskia% ~/fsf-clean-nocheck/bin/gcc -O3 -S 
-o - test.c -static

.text
         .align 2
         .globl _t
_t:
         lis r6,0x3f80
         lis r4,0x4040
         mr r7,r4
         mr r9,r6
         stmw r26,-24(r1)
         lis r12,0x4000
         lmw r26,-24(r1)
         mr r3,r9
         mr r4,r12
         mr r5,r7
         lis r6,0x4080
         blr


Thanks,
Andrew Pinski



More information about the Gcc-patches mailing list