aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/PowerPC/pr30451.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/PowerPC/pr30451.ll')
-rw-r--r--test/CodeGen/PowerPC/pr30451.ll69
1 files changed, 0 insertions, 69 deletions
diff --git a/test/CodeGen/PowerPC/pr30451.ll b/test/CodeGen/PowerPC/pr30451.ll
deleted file mode 100644
index 9b07df00f9c3..000000000000
--- a/test/CodeGen/PowerPC/pr30451.ll
+++ /dev/null
@@ -1,69 +0,0 @@
-; RUN: llc < %s -mcpu=pwr8 -mtriple=powerpc64le-unknown-unknown | FileCheck %s
-define i8 @atomic_min_i8() {
- top:
- %0 = alloca i8, align 2
- %1 = bitcast i8* %0 to i8*
- call void @llvm.lifetime.start.p0i8(i64 2, i8* %1)
- store i8 -1, i8* %0, align 2
- %2 = atomicrmw min i8* %0, i8 0 acq_rel
- %3 = load atomic i8, i8* %0 acquire, align 8
- call void @llvm.lifetime.end.p0i8(i64 2, i8* %1)
- ret i8 %3
-; CHECK-LABEL: atomic_min_i8
-; CHECK: lbarx [[DST:[0-9]+]],
-; CHECK-NEXT: extsb [[EXT:[0-9]+]], [[DST]]
-; CHECK-NEXT: cmpw {{[0-9]+}}, [[EXT]]
-; CHECK-NEXT: bge 0
-}
-define i16 @atomic_min_i16() {
- top:
- %0 = alloca i16, align 2
- %1 = bitcast i16* %0 to i8*
- call void @llvm.lifetime.start.p0i8(i64 2, i8* %1)
- store i16 -1, i16* %0, align 2
- %2 = atomicrmw min i16* %0, i16 0 acq_rel
- %3 = load atomic i16, i16* %0 acquire, align 8
- call void @llvm.lifetime.end.p0i8(i64 2, i8* %1)
- ret i16 %3
-; CHECK-LABEL: atomic_min_i16
-; CHECK: lharx [[DST:[0-9]+]],
-; CHECK-NEXT: extsh [[EXT:[0-9]+]], [[DST]]
-; CHECK-NEXT: cmpw {{[0-9]+}}, [[EXT]]
-; CHECK-NEXT: bge 0
-}
-
-define i8 @atomic_max_i8() {
- top:
- %0 = alloca i8, align 2
- %1 = bitcast i8* %0 to i8*
- call void @llvm.lifetime.start.p0i8(i64 2, i8* %1)
- store i8 -1, i8* %0, align 2
- %2 = atomicrmw max i8* %0, i8 0 acq_rel
- %3 = load atomic i8, i8* %0 acquire, align 8
- call void @llvm.lifetime.end.p0i8(i64 2, i8* %1)
- ret i8 %3
-; CHECK-LABEL: atomic_max_i8
-; CHECK: lbarx [[DST:[0-9]+]],
-; CHECK-NEXT: extsb [[EXT:[0-9]+]], [[DST]]
-; CHECK-NEXT: cmpw {{[0-9]+}}, [[EXT]]
-; CHECK-NEXT: ble 0
-}
-define i16 @atomic_max_i16() {
- top:
- %0 = alloca i16, align 2
- %1 = bitcast i16* %0 to i8*
- call void @llvm.lifetime.start.p0i8(i64 2, i8* %1)
- store i16 -1, i16* %0, align 2
- %2 = atomicrmw max i16* %0, i16 0 acq_rel
- %3 = load atomic i16, i16* %0 acquire, align 8
- call void @llvm.lifetime.end.p0i8(i64 2, i8* %1)
- ret i16 %3
-; CHECK-LABEL: atomic_max_i16
-; CHECK: lharx [[DST:[0-9]+]],
-; CHECK-NEXT: extsh [[EXT:[0-9]+]], [[DST]]
-; CHECK-NEXT: cmpw {{[0-9]+}}, [[EXT]]
-; CHECK-NEXT: ble 0
-}
-
-declare void @llvm.lifetime.start.p0i8(i64, i8*)
-declare void @llvm.lifetime.end.p0i8(i64, i8*)