brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.9 KiB · abcebbf Raw
104 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu < %s | \3; RUN:   FileCheck %s4; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-aix -mcpu=pwr7 \5; RUN:   < %s | FileCheck %s --check-prefix=CHECK-AIX646; RUN: llc -verify-machineinstrs -mtriple=powerpc-unknown-aix -mcpu=pwr8 < %s | \7; RUN:   FileCheck %s --check-prefix=CHECK-AIX328 9define dso_local void @mtfsb0() local_unnamed_addr #0 {10; CHECK-LABEL: mtfsb0:11; CHECK:       # %bb.0: # %entry12; CHECK-NEXT:    mtfsb0 1013; CHECK-NEXT:    blr14;15; CHECK-AIX64-LABEL: mtfsb0:16; CHECK-AIX64:       # %bb.0: # %entry17; CHECK-AIX64-NEXT:    mtfsb0 1018; CHECK-AIX64-NEXT:    blr19;20; CHECK-AIX32-LABEL: mtfsb0:21; CHECK-AIX32:       # %bb.0: # %entry22; CHECK-AIX32-NEXT:    mtfsb0 1023; CHECK-AIX32-NEXT:    blr24entry:25  tail call void @llvm.ppc.mtfsb0(i32 10)26  ret void27}28 29define dso_local void @mtfsb1() local_unnamed_addr #0 {30; CHECK-LABEL: mtfsb1:31; CHECK:       # %bb.0: # %entry32; CHECK-NEXT:    mtfsb1 033; CHECK-NEXT:    blr34;35; CHECK-AIX64-LABEL: mtfsb1:36; CHECK-AIX64:       # %bb.0: # %entry37; CHECK-AIX64-NEXT:    mtfsb1 038; CHECK-AIX64-NEXT:    blr39;40; CHECK-AIX32-LABEL: mtfsb1:41; CHECK-AIX32:       # %bb.0: # %entry42; CHECK-AIX32-NEXT:    mtfsb1 043; CHECK-AIX32-NEXT:    blr44entry:45  tail call void @llvm.ppc.mtfsb1(i32 0)46  ret void47}48 49define dso_local void @callmtfsf(i32 zeroext %a) local_unnamed_addr {50; CHECK-LABEL: callmtfsf:51; CHECK:       # %bb.0: # %entry52; CHECK-NEXT:    mtfprwz 0, 353; CHECK-NEXT:    xscvuxddp 0, 054; CHECK-NEXT:    mtfsf 7, 055; CHECK-NEXT:    blr56;57; CHECK-AIX64-LABEL: callmtfsf:58; CHECK-AIX64:       # %bb.0: # %entry59; CHECK-AIX64-NEXT:    stw 3, -4(1)60; CHECK-AIX64-NEXT:    addi 3, 1, -461; CHECK-AIX64-NEXT:    lfiwzx 0, 0, 362; CHECK-AIX64-NEXT:    xscvuxddp 0, 063; CHECK-AIX64-NEXT:    mtfsf 7, 064; CHECK-AIX64-NEXT:    blr65;66; CHECK-AIX32-LABEL: callmtfsf:67; CHECK-AIX32:       # %bb.0: # %entry68; CHECK-AIX32-NEXT:    stw 3, -4(1)69; CHECK-AIX32-NEXT:    addi 3, 1, -470; CHECK-AIX32-NEXT:    lfiwzx 0, 0, 371; CHECK-AIX32-NEXT:    xscvuxddp 0, 072; CHECK-AIX32-NEXT:    mtfsf 7, 073; CHECK-AIX32-NEXT:    blr74entry:75  %0 = uitofp i32 %a to double76  tail call void @llvm.ppc.mtfsf(i32 7, double %0)77  ret void78}79 80define dso_local void @callmtfsfi(i32 zeroext %a) local_unnamed_addr {81; CHECK-LABEL: callmtfsfi:82; CHECK:       # %bb.0: # %entry83; CHECK-NEXT:    mtfsfi 1, 384; CHECK-NEXT:    blr85;86; CHECK-AIX64-LABEL: callmtfsfi:87; CHECK-AIX64:       # %bb.0: # %entry88; CHECK-AIX64-NEXT:    mtfsfi 1, 389; CHECK-AIX64-NEXT:    blr90;91; CHECK-AIX32-LABEL: callmtfsfi:92; CHECK-AIX32:       # %bb.0: # %entry93; CHECK-AIX32-NEXT:    mtfsfi 1, 394; CHECK-AIX32-NEXT:    blr95entry:96  tail call void @llvm.ppc.mtfsfi(i32 1, i32 3)97  ret void98}99 100declare void @llvm.ppc.mtfsb0(i32)101declare void @llvm.ppc.mtfsb1(i32)102declare void @llvm.ppc.mtfsfi(i32, i32)103declare void @llvm.ppc.mtfsf(i32, double)104