59 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 42; RUN: llc -verify-machineinstrs -simplify-mir -mtriple=powerpc64-ibm-aix \3; RUN: -mcpu=pwr7 -stop-after=finalize-isel %s -o - | FileCheck %s4; RUN: llc -verify-machineinstrs -simplify-mir -mtriple=powerpc-ibm-aix \5; RUN: -mcpu=pwr7 -stop-after=finalize-isel %s -o - | FileCheck --check-prefix=CHECK-32 %s6 7define signext i32 @foo(ptr nocapture noundef %dummy) #0 {8 ; CHECK-LABEL: name: foo9 ; CHECK: bb.0.entry:10 ; CHECK-NEXT: successors: %bb.1, %bb.211 ; CHECK-NEXT: liveins: $x312 ; CHECK-NEXT: {{ $}}13 ; CHECK-NEXT: [[COPY:%[0-9]+]]:g8rc_and_g8rc_nox0 = COPY $x314 ; CHECK-NEXT: [[LWZ:%[0-9]+]]:gprc_and_gprc_nor0 = LWZ 0, [[COPY]] :: (load (s32) from %ir.dummy)15 ; CHECK-NEXT: [[ADDI:%[0-9]+]]:gprc_and_gprc_nor0 = nsw ADDI [[LWZ]], 116 ; CHECK-NEXT: [[CMPWI:%[0-9]+]]:crrc = CMPWI [[LWZ]], 75017 ; CHECK-NEXT: [[LI:%[0-9]+]]:gprc_and_gprc_nor0 = LI 118 ; CHECK-NEXT: BCC 12, [[CMPWI]], %bb.219 ; CHECK-NEXT: {{ $}}20 ; CHECK-NEXT: bb.1.entry:21 ; CHECK-NEXT: {{ $}}22 ; CHECK-NEXT: bb.2.entry:23 ; CHECK-NEXT: [[PHI:%[0-9]+]]:gprc = PHI [[LI]], %bb.1, [[ADDI]], %bb.024 ; CHECK-NEXT: STW killed [[PHI]], 0, [[COPY]] :: (store (s32) into %ir.dummy)25 ; CHECK-NEXT: [[LI8_:%[0-9]+]]:g8rc = LI8 026 ; CHECK-NEXT: $x3 = COPY [[LI8_]]27 ; CHECK-NEXT: BLR8 implicit $lr8, implicit $rm, implicit $x328 ;29 ; CHECK-32-LABEL: name: foo30 ; CHECK-32: bb.0.entry:31 ; CHECK-32-NEXT: successors: %bb.1, %bb.232 ; CHECK-32-NEXT: liveins: $r333 ; CHECK-32-NEXT: {{ $}}34 ; CHECK-32-NEXT: [[COPY:%[0-9]+]]:gprc_and_gprc_nor0 = COPY $r335 ; CHECK-32-NEXT: [[LWZ:%[0-9]+]]:gprc_and_gprc_nor0 = LWZ 0, [[COPY]] :: (load (s32) from %ir.dummy)36 ; CHECK-32-NEXT: [[ADDI:%[0-9]+]]:gprc_and_gprc_nor0 = nsw ADDI [[LWZ]], 137 ; CHECK-32-NEXT: [[CMPWI:%[0-9]+]]:crrc = CMPWI [[LWZ]], 75038 ; CHECK-32-NEXT: [[LI:%[0-9]+]]:gprc_and_gprc_nor0 = LI 139 ; CHECK-32-NEXT: BCC 12, [[CMPWI]], %bb.240 ; CHECK-32-NEXT: {{ $}}41 ; CHECK-32-NEXT: bb.1.entry:42 ; CHECK-32-NEXT: {{ $}}43 ; CHECK-32-NEXT: bb.2.entry:44 ; CHECK-32-NEXT: [[PHI:%[0-9]+]]:gprc = PHI [[LI]], %bb.1, [[ADDI]], %bb.045 ; CHECK-32-NEXT: STW killed [[PHI]], 0, [[COPY]] :: (store (s32) into %ir.dummy)46 ; CHECK-32-NEXT: [[LI1:%[0-9]+]]:gprc = LI 047 ; CHECK-32-NEXT: $r3 = COPY [[LI1]]48 ; CHECK-32-NEXT: BLR implicit $lr, implicit $rm, implicit $r349entry:50 %0 = load i32, ptr %dummy, align 451 %cmp = icmp slt i32 %0, 75052 %inc = add nsw i32 %0, 153 %storemerge = select i1 %cmp, i32 %inc, i32 154 store i32 %storemerge, ptr %dummy, align 455 ret i32 056}57 58attributes #0 = { "target-features"="-isel" }59