blob: 5d31bc3798dc18431f24520e54a2d4f79505acd0 [file] [log] [blame]
Dan Gohmanda594cf2009-09-09 00:09:15 +00001; RUN: llc < %s -march=alpha
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +00003target datalayout = "e-p:64:64"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00004target triple = "alphaev67-unknown-linux-gnu"
5
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +00006define i32 @_ZN9__gnu_cxx18__exchange_and_addEPVii(i32* %__mem, i32 %__val) {
Dan Gohmanf17a25c2007-07-18 16:29:46 +00007entry:
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +00008 %__tmp = alloca i32, align 4 ; <i32*> [#uses=1]
9 %tmp3 = call i32 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"( i32* %__tmp, i32* %__mem, i32* %__mem, i32 %__val ) ; <i32> [#uses=1]
10 ret i32 %tmp3
Dan Gohmanf17a25c2007-07-18 16:29:46 +000011}
12
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +000013define void @_ZN9__gnu_cxx12__atomic_addEPVii(i32* %__mem, i32 %__val) {
Dan Gohmanf17a25c2007-07-18 16:29:46 +000014entry:
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +000015 %tmp2 = call i32 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"( i32* %__mem, i32* %__mem, i32 %__val ) ; <i32> [#uses=0]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000016 ret void
17}
Tanya Lattnerf28e0ce2008-02-19 01:41:04 +000018