brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.7 KiB · 01b60f5 Raw
136 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64-unknown-unknown -run-pass=legalizer -mattr=+fullfp16 -verify-machineinstrs %s -o - | FileCheck %s --check-prefix=FP163# RUN: llc -mtriple=aarch64-unknown-unknown -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s --check-prefix=NO-FP164...5---6name:            s16_legal_with_full_fp167alignment:       48body:             |9  bb.0:10    liveins: $h0, $h111    ; FP16-LABEL: name: s16_legal_with_full_fp1612    ; FP16: liveins: $h0, $h113    ; FP16-NEXT: {{  $}}14    ; FP16-NEXT: %a:_(s16) = COPY $h015    ; FP16-NEXT: %b:_(s16) = COPY $h116    ; FP16-NEXT: %maxnum:_(s16) = G_FMAXNUM %a, %b17    ; FP16-NEXT: $h0 = COPY %maxnum(s16)18    ; FP16-NEXT: RET_ReallyLR implicit $h019    ;20    ; NO-FP16-LABEL: name: s16_legal_with_full_fp1621    ; NO-FP16: liveins: $h0, $h122    ; NO-FP16-NEXT: {{  $}}23    ; NO-FP16-NEXT: %a:_(s16) = COPY $h024    ; NO-FP16-NEXT: %b:_(s16) = COPY $h125    ; NO-FP16-NEXT: [[FPEXT:%[0-9]+]]:_(s32) = G_FPEXT %a(s16)26    ; NO-FP16-NEXT: [[FPEXT1:%[0-9]+]]:_(s32) = G_FPEXT %b(s16)27    ; NO-FP16-NEXT: [[FMAXNUM:%[0-9]+]]:_(s32) = G_FMAXNUM [[FPEXT]], [[FPEXT1]]28    ; NO-FP16-NEXT: %maxnum:_(s16) = G_FPTRUNC [[FMAXNUM]](s32)29    ; NO-FP16-NEXT: $h0 = COPY %maxnum(s16)30    ; NO-FP16-NEXT: RET_ReallyLR implicit $h031    %a:_(s16) = COPY $h032    %b:_(s16) = COPY $h133    %maxnum:_(s16) = G_FMAXNUM %a, %b34    $h0 = COPY %maxnum(s16)35    RET_ReallyLR implicit $h036 37...38---39name:            s32_legal40alignment:       441body:             |42  bb.0:43    liveins: $s0, $s144    ; FP16-LABEL: name: s32_legal45    ; FP16: liveins: $s0, $s146    ; FP16-NEXT: {{  $}}47    ; FP16-NEXT: %a:_(s32) = COPY $s048    ; FP16-NEXT: %b:_(s32) = COPY $s149    ; FP16-NEXT: %maxnum:_(s32) = G_FMAXNUM %a, %b50    ; FP16-NEXT: $s0 = COPY %maxnum(s32)51    ; FP16-NEXT: RET_ReallyLR implicit $s052    ;53    ; NO-FP16-LABEL: name: s32_legal54    ; NO-FP16: liveins: $s0, $s155    ; NO-FP16-NEXT: {{  $}}56    ; NO-FP16-NEXT: %a:_(s32) = COPY $s057    ; NO-FP16-NEXT: %b:_(s32) = COPY $s158    ; NO-FP16-NEXT: %maxnum:_(s32) = G_FMAXNUM %a, %b59    ; NO-FP16-NEXT: $s0 = COPY %maxnum(s32)60    ; NO-FP16-NEXT: RET_ReallyLR implicit $s061    %a:_(s32) = COPY $s062    %b:_(s32) = COPY $s163    %maxnum:_(s32) = G_FMAXNUM %a, %b64    $s0 = COPY %maxnum(s32)65    RET_ReallyLR implicit $s066 67...68---69name:            s64_legal70alignment:       471body:             |72  bb.0:73    liveins: $d0, $d174    ; FP16-LABEL: name: s64_legal75    ; FP16: liveins: $d0, $d176    ; FP16-NEXT: {{  $}}77    ; FP16-NEXT: %a:_(s64) = COPY $d078    ; FP16-NEXT: %b:_(s64) = COPY $d179    ; FP16-NEXT: %maxnum:_(s64) = G_FMAXNUM %a, %b80    ; FP16-NEXT: $d0 = COPY %maxnum(s64)81    ; FP16-NEXT: RET_ReallyLR implicit $d082    ;83    ; NO-FP16-LABEL: name: s64_legal84    ; NO-FP16: liveins: $d0, $d185    ; NO-FP16-NEXT: {{  $}}86    ; NO-FP16-NEXT: %a:_(s64) = COPY $d087    ; NO-FP16-NEXT: %b:_(s64) = COPY $d188    ; NO-FP16-NEXT: %maxnum:_(s64) = G_FMAXNUM %a, %b89    ; NO-FP16-NEXT: $d0 = COPY %maxnum(s64)90    ; NO-FP16-NEXT: RET_ReallyLR implicit $d091    %a:_(s64) = COPY $d092    %b:_(s64) = COPY $d193    %maxnum:_(s64) = G_FMAXNUM %a, %b94    $d0 = COPY %maxnum(s64)95    RET_ReallyLR implicit $d096 97...98---99name:            s128_libcall100alignment:       4101body:             |102  bb.0:103    liveins: $q0, $q1104    ; FP16-LABEL: name: s128_libcall105    ; FP16: liveins: $q0, $q1106    ; FP16-NEXT: {{  $}}107    ; FP16-NEXT: %a:_(s128) = COPY $q0108    ; FP16-NEXT: %b:_(s128) = COPY $q1109    ; FP16-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp110    ; FP16-NEXT: $q0 = COPY %a(s128)111    ; FP16-NEXT: $q1 = COPY %b(s128)112    ; FP16-NEXT: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0113    ; FP16-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp114    ; FP16-NEXT: %maxnum:_(s128) = COPY $q0115    ; FP16-NEXT: $q0 = COPY %maxnum(s128)116    ; FP16-NEXT: RET_ReallyLR implicit $q0117    ;118    ; NO-FP16-LABEL: name: s128_libcall119    ; NO-FP16: liveins: $q0, $q1120    ; NO-FP16-NEXT: {{  $}}121    ; NO-FP16-NEXT: %a:_(s128) = COPY $q0122    ; NO-FP16-NEXT: %b:_(s128) = COPY $q1123    ; NO-FP16-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp124    ; NO-FP16-NEXT: $q0 = COPY %a(s128)125    ; NO-FP16-NEXT: $q1 = COPY %b(s128)126    ; NO-FP16-NEXT: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0127    ; NO-FP16-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp128    ; NO-FP16-NEXT: %maxnum:_(s128) = COPY $q0129    ; NO-FP16-NEXT: $q0 = COPY %maxnum(s128)130    ; NO-FP16-NEXT: RET_ReallyLR implicit $q0131    %a:_(s128) = COPY $q0132    %b:_(s128) = COPY $q1133    %maxnum:_(s128) = G_FMAXNUM %a, %b134    $q0 = COPY %maxnum(s128)135    RET_ReallyLR implicit $q0136