Skip to content

Commit ba22382

Browse files
omern1tru
authored andcommitted
[X86] Add negative test for D145930
This patch adds a negative test for the issue discovered in D145930. Differential Revision: https://reviews.llvm.org/D145933 (cherry picked from commit d8c2a10)
1 parent 2861fa2 commit ba22382

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

llvm/test/CodeGen/X86/pr61384.ll

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2+
; RUN: llc -mtriple=x86_64-unknown-linux-gnu -show-mc-encoding < %s | FileCheck %s
3+
4+
@a = external dso_local global { { i64 } }
5+
6+
define i32 @atomic_global() nounwind {
7+
; CHECK-LABEL: atomic_global:
8+
; CHECK: # %bb.0: # %entry
9+
; CHECK-NEXT: xorl %eax, %eax # encoding: [0x31,0xc0]
10+
; CHECK-NEXT: lock btsq %rax, a(%rip) # encoding: [0xf0,0x48,0x0f,0xab,0x05,A,A,A,A]
11+
; CHECK-NEXT: # fixup A - offset: 5, value: a-5, kind: reloc_riprel_4byte
12+
; CHECK-NEXT: xorl %eax, %eax # encoding: [0x31,0xc0]
13+
; CHECK-NEXT: retq # encoding: [0xc3]
14+
entry:
15+
%shl.i = shl i64 1, 0
16+
%0 = atomicrmw or ptr @a, i64 %shl.i monotonic, align 8
17+
%and.i = and i64 %shl.i, %0
18+
ret i32 0
19+
}

0 commit comments

Comments
 (0)