148 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=FP323# RUN: llc -O0 -mtriple=mipsel-linux-gnu -mattr=+fp64,+mips32r2 -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=FP644--- |5 6 define void @ceil_f32() {entry: ret void}7 define void @ceil_f64() {entry: ret void}8 define void @floor_f32() {entry: ret void}9 define void @floor_f64() {entry: ret void}10 11...12---13name: ceil_f3214alignment: 415tracksRegLiveness: true16body: |17 bb.1.entry:18 liveins: $f1219 20 ; FP32-LABEL: name: ceil_f3221 ; FP32: liveins: $f1222 ; FP32: [[COPY:%[0-9]+]]:_(s32) = COPY $f1223 ; FP32: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp24 ; FP32: $f12 = COPY [[COPY]](s32)25 ; FP32: JAL &ceilf, csr_o32, implicit-def $ra, implicit-def $sp, implicit $f12, implicit-def $f026 ; FP32: [[COPY1:%[0-9]+]]:_(s32) = COPY $f027 ; FP32: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp28 ; FP32: $f0 = COPY [[COPY1]](s32)29 ; FP32: RetRA implicit $f030 ; FP64-LABEL: name: ceil_f3231 ; FP64: liveins: $f1232 ; FP64: [[COPY:%[0-9]+]]:_(s32) = COPY $f1233 ; FP64: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp34 ; FP64: $f12 = COPY [[COPY]](s32)35 ; FP64: JAL &ceilf, csr_o32_fp64, implicit-def $ra, implicit-def $sp, implicit $f12, implicit-def $f036 ; FP64: [[COPY1:%[0-9]+]]:_(s32) = COPY $f037 ; FP64: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp38 ; FP64: $f0 = COPY [[COPY1]](s32)39 ; FP64: RetRA implicit $f040 %0:_(s32) = COPY $f1241 %1:_(s32) = G_FCEIL %042 $f0 = COPY %1(s32)43 RetRA implicit $f044 45...46---47name: ceil_f6448alignment: 449tracksRegLiveness: true50body: |51 bb.1.entry:52 liveins: $d653 54 ; FP32-LABEL: name: ceil_f6455 ; FP32: liveins: $d656 ; FP32: [[COPY:%[0-9]+]]:_(s64) = COPY $d657 ; FP32: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp58 ; FP32: $d6 = COPY [[COPY]](s64)59 ; FP32: JAL &ceil, csr_o32, implicit-def $ra, implicit-def $sp, implicit $d6, implicit-def $d060 ; FP32: [[COPY1:%[0-9]+]]:_(s64) = COPY $d061 ; FP32: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp62 ; FP32: $d0 = COPY [[COPY1]](s64)63 ; FP32: RetRA implicit $d064 ; FP64-LABEL: name: ceil_f6465 ; FP64: liveins: $d666 ; FP64: [[COPY:%[0-9]+]]:_(s64) = COPY $d667 ; FP64: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp68 ; FP64: $d12_64 = COPY [[COPY]](s64)69 ; FP64: JAL &ceil, csr_o32_fp64, implicit-def $ra, implicit-def $sp, implicit $d12_64, implicit-def $d0_6470 ; FP64: [[COPY1:%[0-9]+]]:_(s64) = COPY $d0_6471 ; FP64: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp72 ; FP64: $d0 = COPY [[COPY1]](s64)73 ; FP64: RetRA implicit $d074 %0:_(s64) = COPY $d675 %1:_(s64) = G_FCEIL %076 $d0 = COPY %1(s64)77 RetRA implicit $d078 79...80---81name: floor_f3282alignment: 483tracksRegLiveness: true84body: |85 bb.1.entry:86 liveins: $f1287 88 ; FP32-LABEL: name: floor_f3289 ; FP32: liveins: $f1290 ; FP32: [[COPY:%[0-9]+]]:_(s32) = COPY $f1291 ; FP32: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp92 ; FP32: $f12 = COPY [[COPY]](s32)93 ; FP32: JAL &floorf, csr_o32, implicit-def $ra, implicit-def $sp, implicit $f12, implicit-def $f094 ; FP32: [[COPY1:%[0-9]+]]:_(s32) = COPY $f095 ; FP32: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp96 ; FP32: $f0 = COPY [[COPY1]](s32)97 ; FP32: RetRA implicit $f098 ; FP64-LABEL: name: floor_f3299 ; FP64: liveins: $f12100 ; FP64: [[COPY:%[0-9]+]]:_(s32) = COPY $f12101 ; FP64: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp102 ; FP64: $f12 = COPY [[COPY]](s32)103 ; FP64: JAL &floorf, csr_o32_fp64, implicit-def $ra, implicit-def $sp, implicit $f12, implicit-def $f0104 ; FP64: [[COPY1:%[0-9]+]]:_(s32) = COPY $f0105 ; FP64: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp106 ; FP64: $f0 = COPY [[COPY1]](s32)107 ; FP64: RetRA implicit $f0108 %0:_(s32) = COPY $f12109 %1:_(s32) = G_FFLOOR %0110 $f0 = COPY %1(s32)111 RetRA implicit $f0112 113...114---115name: floor_f64116alignment: 4117tracksRegLiveness: true118body: |119 bb.1.entry:120 liveins: $d6121 122 ; FP32-LABEL: name: floor_f64123 ; FP32: liveins: $d6124 ; FP32: [[COPY:%[0-9]+]]:_(s64) = COPY $d6125 ; FP32: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp126 ; FP32: $d6 = COPY [[COPY]](s64)127 ; FP32: JAL &floor, csr_o32, implicit-def $ra, implicit-def $sp, implicit $d6, implicit-def $d0128 ; FP32: [[COPY1:%[0-9]+]]:_(s64) = COPY $d0129 ; FP32: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp130 ; FP32: $d0 = COPY [[COPY1]](s64)131 ; FP32: RetRA implicit $d0132 ; FP64-LABEL: name: floor_f64133 ; FP64: liveins: $d6134 ; FP64: [[COPY:%[0-9]+]]:_(s64) = COPY $d6135 ; FP64: ADJCALLSTACKDOWN 16, 0, implicit-def $sp, implicit $sp136 ; FP64: $d12_64 = COPY [[COPY]](s64)137 ; FP64: JAL &floor, csr_o32_fp64, implicit-def $ra, implicit-def $sp, implicit $d12_64, implicit-def $d0_64138 ; FP64: [[COPY1:%[0-9]+]]:_(s64) = COPY $d0_64139 ; FP64: ADJCALLSTACKUP 16, 0, implicit-def $sp, implicit $sp140 ; FP64: $d0 = COPY [[COPY1]](s64)141 ; FP64: RetRA implicit $d0142 %0:_(s64) = COPY $d6143 %1:_(s64) = G_FFLOOR %0144 $d0 = COPY %1(s64)145 RetRA implicit $d0146 147...148