86 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 42# REQUIRES: asserts3# RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -verify-machineinstrs \4# RUN: -run-pass ppc-mi-peepholes %s -o - | FileCheck %s --check-prefix=ALL5# RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -verify-machineinstrs \6# RUN: -run-pass ppc-mi-peepholes %s -o - -debug-counter=ppc-xtoi-peephole=0-7 \7# RUN: | FileCheck %s --check-prefix=ALL8# RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -verify-machineinstrs \9# RUN: -run-pass ppc-mi-peepholes %s -o - -debug-counter=ppc-xtoi-peephole=3-4 \10# RUN: | FileCheck %s --check-prefix=ONE-FIRSTSTORE11# RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -verify-machineinstrs \12# RUN: -run-pass ppc-mi-peepholes %s -o - -debug-counter=ppc-xtoi-peephole=5-6 \13# RUN: | FileCheck %s --check-prefix=ONE-SECONDSTORE14# RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -verify-machineinstrs \15# RUN: -run-pass ppc-mi-peepholes %s -o - -debug-counter=ppc-xtoi-peephole=3-6 \16# RUN: | FileCheck %s --check-prefix=TWO17 18---19name: foldDForm20tracksRegLiveness: true21body: |22 bb.0.entry:23 liveins: $x324 25 ; ALL-LABEL: name: foldDForm26 ; ALL: liveins: $x327 ; ALL-NEXT: {{ $}}28 ; ALL-NEXT: [[COPY:%[0-9]+]]:g8rc_and_g8rc_nox0 = COPY killed $x329 ; ALL-NEXT: dead [[ADDI8_:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 14430 ; ALL-NEXT: [[LI8_:%[0-9]+]]:g8rc = LI8 031 ; ALL-NEXT: STD [[LI8_]], 160, [[COPY]]32 ; ALL-NEXT: dead [[ADDI8_1:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 16033 ; ALL-NEXT: STD [[LI8_]], 176, [[COPY]]34 ; ALL-NEXT: dead [[ADDI8_2:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 17635 ; ALL-NEXT: STD killed [[LI8_]], 192, killed [[COPY]]36 ; ALL-NEXT: BLR8 implicit $lr8, implicit $rm37 ;38 ; ONE-FIRSTSTORE-LABEL: name: foldDForm39 ; ONE-FIRSTSTORE: liveins: $x340 ; ONE-FIRSTSTORE-NEXT: {{ $}}41 ; ONE-FIRSTSTORE-NEXT: [[COPY:%[0-9]+]]:g8rc_and_g8rc_nox0 = COPY killed $x342 ; ONE-FIRSTSTORE-NEXT: dead [[ADDI8_:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 14443 ; ONE-FIRSTSTORE-NEXT: [[LI8_:%[0-9]+]]:g8rc = LI8 044 ; ONE-FIRSTSTORE-NEXT: STD [[LI8_]], 160, [[COPY]]45 ; ONE-FIRSTSTORE-NEXT: [[ADDI8_1:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 16046 ; ONE-FIRSTSTORE-NEXT: STD [[LI8_]], 16, killed [[ADDI8_1]]47 ; ONE-FIRSTSTORE-NEXT: [[ADDI8_2:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 killed [[COPY]], 17648 ; ONE-FIRSTSTORE-NEXT: STD killed [[LI8_]], 16, killed [[ADDI8_2]]49 ; ONE-FIRSTSTORE-NEXT: BLR8 implicit $lr8, implicit $rm50 ;51 ; ONE-SECONDSTORE-LABEL: name: foldDForm52 ; ONE-SECONDSTORE: liveins: $x353 ; ONE-SECONDSTORE-NEXT: {{ $}}54 ; ONE-SECONDSTORE-NEXT: [[COPY:%[0-9]+]]:g8rc_and_g8rc_nox0 = COPY killed $x355 ; ONE-SECONDSTORE-NEXT: [[ADDI8_:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 14456 ; ONE-SECONDSTORE-NEXT: [[LI8_:%[0-9]+]]:g8rc = LI8 057 ; ONE-SECONDSTORE-NEXT: STD [[LI8_]], 16, killed [[ADDI8_]]58 ; ONE-SECONDSTORE-NEXT: dead [[ADDI8_1:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 16059 ; ONE-SECONDSTORE-NEXT: STD [[LI8_]], 176, [[COPY]]60 ; ONE-SECONDSTORE-NEXT: [[ADDI8_2:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 killed [[COPY]], 17661 ; ONE-SECONDSTORE-NEXT: STD killed [[LI8_]], 16, killed [[ADDI8_2]]62 ; ONE-SECONDSTORE-NEXT: BLR8 implicit $lr8, implicit $rm63 ;64 ; TWO-LABEL: name: foldDForm65 ; TWO: liveins: $x366 ; TWO-NEXT: {{ $}}67 ; TWO-NEXT: [[COPY:%[0-9]+]]:g8rc_and_g8rc_nox0 = COPY killed $x368 ; TWO-NEXT: dead [[ADDI8_:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 14469 ; TWO-NEXT: [[LI8_:%[0-9]+]]:g8rc = LI8 070 ; TWO-NEXT: STD [[LI8_]], 160, [[COPY]]71 ; TWO-NEXT: dead [[ADDI8_1:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 [[COPY]], 16072 ; TWO-NEXT: STD [[LI8_]], 176, [[COPY]]73 ; TWO-NEXT: [[ADDI8_2:%[0-9]+]]:g8rc_and_g8rc_nox0 = ADDI8 killed [[COPY]], 17674 ; TWO-NEXT: STD killed [[LI8_]], 16, killed [[ADDI8_2]]75 ; TWO-NEXT: BLR8 implicit $lr8, implicit $rm76 %0:g8rc_and_g8rc_nox0 = COPY $x377 %1:g8rc_and_g8rc_nox0 = ADDI8 %0:g8rc_and_g8rc_nox0, 14478 %2:g8rc = LI8 079 STD %2:g8rc, 16, %1:g8rc_and_g8rc_nox080 %3:g8rc_and_g8rc_nox0 = ADDI8 %0:g8rc_and_g8rc_nox0, 16081 STD %2:g8rc, 16, %3:g8rc_and_g8rc_nox082 %4:g8rc_and_g8rc_nox0 = ADDI8 %0:g8rc_and_g8rc_nox0, 17683 STD killed %2:g8rc, 16, %4:g8rc_and_g8rc_nox084 BLR8 implicit $lr8, implicit $rm85...86