2006-12-02 04:23:10 +00:00
|
|
|
; RUN: llvm-upgrade < %s | llvm-as | llc -march=alpha
|
2006-07-03 22:46:02 +00:00
|
|
|
|
|
|
|
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]
|
2007-04-28 06:03:12 +00:00
|
|
|
%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]
|
2006-07-03 22:46:02 +00:00
|
|
|
ret int %tmp3
|
|
|
|
}
|
|
|
|
|
|
|
|
void %_ZN9__gnu_cxx12__atomic_addEPVii(int* %__mem, int %__val) {
|
|
|
|
entry:
|
2007-04-28 06:03:12 +00:00
|
|
|
%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]
|
2006-07-03 22:46:02 +00:00
|
|
|
ret void
|
|
|
|
}
|