xref: /llvm-project/llvm/test/CodeGen/ARM/atomic-cmp.ll (revision 50ef7611aa711c2c5a0cf6150442199b320b86c5)
1; RUN: llc < %s -mtriple=armv7-apple-darwin -verify-machineinstrs   | FileCheck %s -check-prefix=ARM
2; RUN: llc < %s -mtriple=thumbv7-apple-darwin -verify-machineinstrs | FileCheck %s -check-prefix=T2
3; rdar://8964854
4
5define i8 @t(i8* %a, i8 %b, i8 %c) nounwind {
6; ARM: t:
7; ARM: ldrexb
8; ARM: strexb
9
10; T2: t:
11; T2: ldrexb
12; T2: strexb
13  %tmp0 = tail call i8 @llvm.atomic.cmp.swap.i8.p0i8(i8* %a, i8 %b, i8 %c)
14  ret i8 %tmp0
15}
16
17declare i8 @llvm.atomic.cmp.swap.i8.p0i8(i8* nocapture, i8, i8) nounwind
18