brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.6 KiB · 3aa6093 Raw
238 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -verify-machineinstrs -mtriple aarch64-unknown-unknown -run-pass=legalizer -mattr=-fullfp16 -global-isel %s -o - | FileCheck %s --check-prefix=NOFP163# RUN: llc -verify-machineinstrs -mtriple aarch64-unknown-unknown -run-pass=legalizer -mattr=+fullfp16 -global-isel %s -o - | FileCheck %s --check-prefix=FP164 5name:            test_f16.rint6alignment:       47tracksRegLiveness: true8machineFunctionInfo: {}9body:             |10  bb.0:11    liveins: $h012 13    %0:_(s16) = COPY $h014    %1:_(s16) = G_FRINT %015    $h0 = COPY %1(s16)16    RET_ReallyLR implicit $h017 18...19---20name:            test_f32.rint21alignment:       422tracksRegLiveness: true23machineFunctionInfo: {}24body:             |25  bb.0:26    liveins: $s027 28    ; NOFP16-LABEL: name: test_f32.rint29    ; NOFP16: liveins: $s030    ; NOFP16-NEXT: {{  $}}31    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $s032    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(s32) = G_FRINT [[COPY]]33    ; NOFP16-NEXT: $s0 = COPY [[FRINT]](s32)34    ; NOFP16-NEXT: RET_ReallyLR implicit $s035    ;36    ; FP16-LABEL: name: test_f32.rint37    ; FP16: liveins: $s038    ; FP16-NEXT: {{  $}}39    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $s040    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(s32) = G_FRINT [[COPY]]41    ; FP16-NEXT: $s0 = COPY [[FRINT]](s32)42    ; FP16-NEXT: RET_ReallyLR implicit $s043    %0:_(s32) = COPY $s044    %1:_(s32) = G_FRINT %045    $s0 = COPY %1(s32)46    RET_ReallyLR implicit $s047 48...49---50name:            test_f64.rint51alignment:       452tracksRegLiveness: true53machineFunctionInfo: {}54body:             |55  bb.0:56    liveins: $d057 58    ; NOFP16-LABEL: name: test_f64.rint59    ; NOFP16: liveins: $d060    ; NOFP16-NEXT: {{  $}}61    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(s64) = COPY $d062    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(s64) = G_FRINT [[COPY]]63    ; NOFP16-NEXT: $d0 = COPY [[FRINT]](s64)64    ; NOFP16-NEXT: RET_ReallyLR implicit $d065    ;66    ; FP16-LABEL: name: test_f64.rint67    ; FP16: liveins: $d068    ; FP16-NEXT: {{  $}}69    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(s64) = COPY $d070    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(s64) = G_FRINT [[COPY]]71    ; FP16-NEXT: $d0 = COPY [[FRINT]](s64)72    ; FP16-NEXT: RET_ReallyLR implicit $d073    %0:_(s64) = COPY $d074    %1:_(s64) = G_FRINT %075    $d0 = COPY %1(s64)76    RET_ReallyLR implicit $d077 78...79---80name:            test_v4f32.rint81alignment:       482tracksRegLiveness: true83machineFunctionInfo: {}84body:             |85  bb.0:86    liveins: $q087 88    ; NOFP16-LABEL: name: test_v4f32.rint89    ; NOFP16: liveins: $q090    ; NOFP16-NEXT: {{  $}}91    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $q092    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(<4 x s32>) = G_FRINT [[COPY]]93    ; NOFP16-NEXT: $q0 = COPY [[FRINT]](<4 x s32>)94    ; NOFP16-NEXT: RET_ReallyLR implicit $q095    ;96    ; FP16-LABEL: name: test_v4f32.rint97    ; FP16: liveins: $q098    ; FP16-NEXT: {{  $}}99    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(<4 x s32>) = COPY $q0100    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(<4 x s32>) = G_FRINT [[COPY]]101    ; FP16-NEXT: $q0 = COPY [[FRINT]](<4 x s32>)102    ; FP16-NEXT: RET_ReallyLR implicit $q0103    %0:_(<4 x s32>) = COPY $q0104    %1:_(<4 x s32>) = G_FRINT %0105    $q0 = COPY %1(<4 x s32>)106    RET_ReallyLR implicit $q0107 108...109---110name:            test_v2f64.rint111alignment:       4112tracksRegLiveness: true113machineFunctionInfo: {}114body:             |115  bb.0:116    liveins: $q0117 118    ; NOFP16-LABEL: name: test_v2f64.rint119    ; NOFP16: liveins: $q0120    ; NOFP16-NEXT: {{  $}}121    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(<2 x s64>) = COPY $q0122    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(<2 x s64>) = G_FRINT [[COPY]]123    ; NOFP16-NEXT: $q0 = COPY [[FRINT]](<2 x s64>)124    ; NOFP16-NEXT: RET_ReallyLR implicit $q0125    ;126    ; FP16-LABEL: name: test_v2f64.rint127    ; FP16: liveins: $q0128    ; FP16-NEXT: {{  $}}129    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(<2 x s64>) = COPY $q0130    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(<2 x s64>) = G_FRINT [[COPY]]131    ; FP16-NEXT: $q0 = COPY [[FRINT]](<2 x s64>)132    ; FP16-NEXT: RET_ReallyLR implicit $q0133    %0:_(<2 x s64>) = COPY $q0134    %1:_(<2 x s64>) = G_FRINT %0135    $q0 = COPY %1(<2 x s64>)136    RET_ReallyLR implicit $q0137 138...139---140name:            test_v4f16.rint141alignment:       4142tracksRegLiveness: true143machineFunctionInfo: {}144body:             |145  bb.0:146    liveins: $d0147 148    ; NOFP16-LABEL: name: test_v4f16.rint149    ; NOFP16: liveins: $d0150    ; NOFP16-NEXT: {{  $}}151    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $d0152    ; NOFP16-NEXT: [[FPEXT:%[0-9]+]]:_(<4 x s32>) = G_FPEXT [[COPY]](<4 x s16>)153    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(<4 x s32>) = G_FRINT [[FPEXT]]154    ; NOFP16-NEXT: [[FPTRUNC:%[0-9]+]]:_(<4 x s16>) = G_FPTRUNC [[FRINT]](<4 x s32>)155    ; NOFP16-NEXT: $d0 = COPY [[FPTRUNC]](<4 x s16>)156    ; NOFP16-NEXT: RET_ReallyLR implicit $d0157    ;158    ; FP16-LABEL: name: test_v4f16.rint159    ; FP16: liveins: $d0160    ; FP16-NEXT: {{  $}}161    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(<4 x s16>) = COPY $d0162    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(<4 x s16>) = G_FRINT [[COPY]]163    ; FP16-NEXT: $d0 = COPY [[FRINT]](<4 x s16>)164    ; FP16-NEXT: RET_ReallyLR implicit $d0165    %0:_(<4 x s16>) = COPY $d0166    %1:_(<4 x s16>) = G_FRINT %0167    $d0 = COPY %1(<4 x s16>)168    RET_ReallyLR implicit $d0169 170...171---172name:            test_v8f16.rint173alignment:       4174tracksRegLiveness: true175machineFunctionInfo: {}176body:             |177  bb.0:178    liveins: $q0179 180    ; NOFP16-LABEL: name: test_v8f16.rint181    ; NOFP16: liveins: $q0182    ; NOFP16-NEXT: {{  $}}183    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(<8 x s16>) = COPY $q0184    ; NOFP16-NEXT: [[UV:%[0-9]+]]:_(<4 x s16>), [[UV1:%[0-9]+]]:_(<4 x s16>) = G_UNMERGE_VALUES [[COPY]](<8 x s16>)185    ; NOFP16-NEXT: [[FPEXT:%[0-9]+]]:_(<4 x s32>) = G_FPEXT [[UV]](<4 x s16>)186    ; NOFP16-NEXT: [[FPEXT1:%[0-9]+]]:_(<4 x s32>) = G_FPEXT [[UV1]](<4 x s16>)187    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(<4 x s32>) = G_FRINT [[FPEXT]]188    ; NOFP16-NEXT: [[FRINT1:%[0-9]+]]:_(<4 x s32>) = G_FRINT [[FPEXT1]]189    ; NOFP16-NEXT: [[FPTRUNC:%[0-9]+]]:_(<4 x s16>) = G_FPTRUNC [[FRINT]](<4 x s32>)190    ; NOFP16-NEXT: [[FPTRUNC1:%[0-9]+]]:_(<4 x s16>) = G_FPTRUNC [[FRINT1]](<4 x s32>)191    ; NOFP16-NEXT: [[CONCAT_VECTORS:%[0-9]+]]:_(<8 x s16>) = G_CONCAT_VECTORS [[FPTRUNC]](<4 x s16>), [[FPTRUNC1]](<4 x s16>)192    ; NOFP16-NEXT: $q0 = COPY [[CONCAT_VECTORS]](<8 x s16>)193    ; NOFP16-NEXT: RET_ReallyLR implicit $q0194    ;195    ; FP16-LABEL: name: test_v8f16.rint196    ; FP16: liveins: $q0197    ; FP16-NEXT: {{  $}}198    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(<8 x s16>) = COPY $q0199    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(<8 x s16>) = G_FRINT [[COPY]]200    ; FP16-NEXT: $q0 = COPY [[FRINT]](<8 x s16>)201    ; FP16-NEXT: RET_ReallyLR implicit $q0202    %0:_(<8 x s16>) = COPY $q0203    %1:_(<8 x s16>) = G_FRINT %0204    $q0 = COPY %1(<8 x s16>)205    RET_ReallyLR implicit $q0206 207...208---209name:            test_v2f32.rint210alignment:       4211tracksRegLiveness: true212machineFunctionInfo: {}213body:             |214  bb.0:215    liveins: $d0216 217    ; NOFP16-LABEL: name: test_v2f32.rint218    ; NOFP16: liveins: $d0219    ; NOFP16-NEXT: {{  $}}220    ; NOFP16-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $d0221    ; NOFP16-NEXT: [[FRINT:%[0-9]+]]:_(<2 x s32>) = G_FRINT [[COPY]]222    ; NOFP16-NEXT: $d0 = COPY [[FRINT]](<2 x s32>)223    ; NOFP16-NEXT: RET_ReallyLR implicit $d0224    ;225    ; FP16-LABEL: name: test_v2f32.rint226    ; FP16: liveins: $d0227    ; FP16-NEXT: {{  $}}228    ; FP16-NEXT: [[COPY:%[0-9]+]]:_(<2 x s32>) = COPY $d0229    ; FP16-NEXT: [[FRINT:%[0-9]+]]:_(<2 x s32>) = G_FRINT [[COPY]]230    ; FP16-NEXT: $d0 = COPY [[FRINT]](<2 x s32>)231    ; FP16-NEXT: RET_ReallyLR implicit $d0232    %0:_(<2 x s32>) = COPY $d0233    %1:_(<2 x s32>) = G_FRINT %0234    $d0 = COPY %1(<2 x s32>)235    RET_ReallyLR implicit $d0236 237...238