36 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \2; RUN: -mcpu=pwr8 < %s | FileCheck %s3; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu \4; RUN: -mcpu=pwr7 < %s | FileCheck %s5; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-aix \6; RUN: -mcpu=pwr7 < %s | FileCheck %s7 8@ull = external global i64, align 89@ull_addr = external global ptr, align 810 11define dso_local void @test_builtin_ppc_store8r() {12; CHECK-LABEL: test_builtin_ppc_store8r:13; CHECK: stdbrx 3, 0, 414; CHECK-NEXT: blr15;16entry:17 %0 = load i64, ptr @ull, align 818 %1 = load ptr, ptr @ull_addr, align 819 call void @llvm.ppc.store8r(i64 %0, ptr %1)20 ret void21}22 23declare void @llvm.ppc.store8r(i64, ptr)24 25define dso_local i64 @test_builtin_ppc_load8r() {26; CHECK-LABEL: test_builtin_ppc_load8r:27; CHECK: ldbrx 3, 0, 328; CHECK-NEXT: blr29entry:30 %0 = load ptr, ptr @ull_addr, align 831 %1 = call i64 @llvm.ppc.load8r(ptr %0)32 ret i64 %133}34 35declare i64 @llvm.ppc.load8r(ptr)36