[llvm-commits] CVS: llvm/test/Regression/CodeGen/Alpha/2006-07-03-ASMFormalLowering.ll
Andrew Lenharth
alenhar2 at cs.uiuc.edu
Mon Jul 3 15:46:26 PDT 2006
Changes in directory llvm/test/Regression/CodeGen/Alpha:
2006-07-03-ASMFormalLowering.ll added (r1.1)
---
Log message:
Legalize does not handle this correctly
---
Diffs of the changes: (+21 -0)
2006-07-03-ASMFormalLowering.ll | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+)
Index: llvm/test/Regression/CodeGen/Alpha/2006-07-03-ASMFormalLowering.ll
diff -c /dev/null llvm/test/Regression/CodeGen/Alpha/2006-07-03-ASMFormalLowering.ll:1.1
*** /dev/null Mon Jul 3 17:46:12 2006
--- llvm/test/Regression/CodeGen/Alpha/2006-07-03-ASMFormalLowering.ll Mon Jul 3 17:46:02 2006
***************
*** 0 ****
--- 1,21 ----
+ ;RUN: llvm-as < %s | llc -march=alpha
+
+ ; ModuleID = 'atomicity.cc'
+ target endian = little
+ target pointersize = 64
+ target triple = "alphaev67-unknown-linux-gnu"
+
+ implementation ; Functions:
+
+ int %_ZN9__gnu_cxx18__exchange_and_addEPVii(int* %__mem, int %__val) {
+ entry:
+ %__tmp = alloca int, align 4 ; <int*> [#uses=1]
+ %tmp3 = call int asm sideeffect "\0A$$Lxadd_0:\0A\09ldl_l $0,$3\0A\09addl $0,$4,$1\0A\09stl_c $1,$2\0A\09beq $1,$$Lxadd_0\0A\09mb", "=&r,==&r,==m,m,r"( int* %__tmp, int* %__mem, int* %__mem, int %__val ) ; <int> [#uses=1]
+ ret int %tmp3
+ }
+
+ void %_ZN9__gnu_cxx12__atomic_addEPVii(int* %__mem, int %__val) {
+ entry:
+ %tmp2 = call int asm sideeffect "\0A$$Ladd_1:\0A\09ldl_l $0,$2\0A\09addl $0,$3,$0\0A\09stl_c $0,$1\0A\09beq $0,$$Ladd_1\0A\09mb", "=&r,==m,m,r"( int* %__mem, int* %__mem, int %__val ) ; <int> [#uses=0]
+ ret void
+ }
More information about the llvm-commits
mailing list