[llvm-commits] [llvm-gcc-4.2] r98863 - /llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c
Stuart Hastings
stuart at apple.com
Thu Mar 18 13:28:51 PDT 2010
Author: stuart
Date: Thu Mar 18 15:28:51 2010
New Revision: 98863
URL: http://llvm.org/viewvc/llvm-project?rev=98863&view=rev
Log:
Test case for r98841.
Added:
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c?rev=98863&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-68.c Thu Mar 18 15:28:51 2010
@@ -0,0 +1,37 @@
+/* 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;
+}
More information about the llvm-commits
mailing list