blob: 00d1cc3c43bd1c8da3caab70cdb837c26f51eaef [file] [log] [blame]
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
/* { dg-options { -fasm-blocks } } */
/* <rdar://problem/7763139> */
#include <stdio.h>
#if !__x86_64__ && !__i386__
#error compile with -arch x86_64 or -arch i386
#endif
int main()
{
float a = 1.0;
float *aPtr = NULL;
double b = 2.0;
double *bPtr = NULL;
__asm__
{
#if __x86_64__
lea rax,a
mov aPtr,rax
lea rax,b
mov bPtr,rax
#elif __i386__
lea eax,a
mov aPtr,eax
lea eax,b
mov bPtr,eax
#endif
}
printf("a: %f, b: %lf\n", *aPtr, *bPtr);
return 0;
}