30 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -passes=atomic-expand -S -mtriple=powerpc64le-unknown-unknown \3; RUN: %s | FileCheck %s4; RUN: opt -passes=atomic-expand -S -mtriple=powerpc64-unknown-unknown \5; RUN: %s | FileCheck %s6 7define ptr @foo(ptr %p) {8; CHECK-LABEL: @foo(9; CHECK-NEXT: entry:10; CHECK-NEXT: [[TMP0:%.*]] = load atomic ptr, ptr [[P:%.*]] monotonic, align 811; CHECK-NEXT: call void @llvm.ppc.cfence.p0(ptr [[TMP0]])12; CHECK-NEXT: ret ptr [[TMP0]]13;14entry:15 %0 = load atomic ptr, ptr %p acquire, align 816 ret ptr %017}18 19define void @foobar(ptr addrspace(11) %p) {20; CHECK-LABEL: @foobar(21; CHECK-NEXT: entry:22; CHECK-NEXT: [[TMP0:%.*]] = load atomic ptr addrspace(10), ptr addrspace(11) [[P:%.*]] monotonic, align 823; CHECK-NEXT: call void @llvm.ppc.cfence.p10(ptr addrspace(10) [[TMP0]])24; CHECK-NEXT: unreachable25;26entry:27 %0 = load atomic ptr addrspace(10), ptr addrspace(11) %p acquire, align 828 unreachable29}30