brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.1 KiB · b225020 Raw
157 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: %legalize_me:_(s16) = G_FMAXIMUM %a, %b17    ; FP16-NEXT: $h0 = COPY %legalize_me(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: [[FMAXIMUM:%[0-9]+]]:_(s32) = G_FMAXIMUM [[FPEXT]], [[FPEXT1]]28    ; NO-FP16-NEXT: %legalize_me:_(s16) = G_FPTRUNC [[FMAXIMUM]](s32)29    ; NO-FP16-NEXT: $h0 = COPY %legalize_me(s16)30    ; NO-FP16-NEXT: RET_ReallyLR implicit $h031    %a:_(s16) = COPY $h032    %b:_(s16) = COPY $h133    %legalize_me:_(s16) = G_FMAXIMUM %a, %b34    $h0 = COPY %legalize_me(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: %legalize_me:_(s32) = G_FMAXIMUM %a, %b50    ; FP16-NEXT: $s0 = COPY %legalize_me(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: %legalize_me:_(s32) = G_FMAXIMUM %a, %b59    ; NO-FP16-NEXT: $s0 = COPY %legalize_me(s32)60    ; NO-FP16-NEXT: RET_ReallyLR implicit $s061    %a:_(s32) = COPY $s062    %b:_(s32) = COPY $s163    %legalize_me:_(s32) = G_FMAXIMUM %a, %b64    $s0 = COPY %legalize_me(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: %legalize_me:_(s64) = G_FMAXIMUM %a, %b80    ; FP16-NEXT: $d0 = COPY %legalize_me(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: %legalize_me:_(s64) = G_FMAXIMUM %a, %b89    ; NO-FP16-NEXT: $d0 = COPY %legalize_me(s64)90    ; NO-FP16-NEXT: RET_ReallyLR implicit $d091    %a:_(s64) = COPY $d092    %b:_(s64) = COPY $d193    %legalize_me:_(s64) = G_FMAXIMUM %a, %b94    $d0 = COPY %legalize_me(s64)95    RET_ReallyLR implicit $d096...97---98name:            v2s3299alignment:       4100body:             |101  bb.0:102    liveins: $d0, $d1103    ; FP16-LABEL: name: v2s32104    ; FP16: liveins: $d0, $d1105    ; FP16-NEXT: {{  $}}106    ; FP16-NEXT: %a:_(<2 x s32>) = COPY $d0107    ; FP16-NEXT: %b:_(<2 x s32>) = COPY $d1108    ; FP16-NEXT: %maximum:_(<2 x s32>) = G_FMAXIMUM %a, %b109    ; FP16-NEXT: $d0 = COPY %maximum(<2 x s32>)110    ; FP16-NEXT: RET_ReallyLR implicit $d0111    ;112    ; NO-FP16-LABEL: name: v2s32113    ; NO-FP16: liveins: $d0, $d1114    ; NO-FP16-NEXT: {{  $}}115    ; NO-FP16-NEXT: %a:_(<2 x s32>) = COPY $d0116    ; NO-FP16-NEXT: %b:_(<2 x s32>) = COPY $d1117    ; NO-FP16-NEXT: %maximum:_(<2 x s32>) = G_FMAXIMUM %a, %b118    ; NO-FP16-NEXT: $d0 = COPY %maximum(<2 x s32>)119    ; NO-FP16-NEXT: RET_ReallyLR implicit $d0120    %a:_(<2 x s32>) = COPY $d0121    %b:_(<2 x s32>) = COPY $d1122    %maximum:_(<2 x s32>) = G_FMAXIMUM %a, %b123    $d0 = COPY %maximum(<2 x s32>)124    RET_ReallyLR implicit $d0125 126...127---128name:            v4s32129alignment:       4130body:             |131  bb.0:132    liveins: $q0, $q1133    ; FP16-LABEL: name: v4s32134    ; FP16: liveins: $q0, $q1135    ; FP16-NEXT: {{  $}}136    ; FP16-NEXT: %a:_(<4 x s32>) = COPY $q0137    ; FP16-NEXT: %b:_(<4 x s32>) = COPY $q1138    ; FP16-NEXT: %maximum:_(<4 x s32>) = G_FMAXIMUM %a, %b139    ; FP16-NEXT: $q0 = COPY %maximum(<4 x s32>)140    ; FP16-NEXT: RET_ReallyLR implicit $q0141    ;142    ; NO-FP16-LABEL: name: v4s32143    ; NO-FP16: liveins: $q0, $q1144    ; NO-FP16-NEXT: {{  $}}145    ; NO-FP16-NEXT: %a:_(<4 x s32>) = COPY $q0146    ; NO-FP16-NEXT: %b:_(<4 x s32>) = COPY $q1147    ; NO-FP16-NEXT: %maximum:_(<4 x s32>) = G_FMAXIMUM %a, %b148    ; NO-FP16-NEXT: $q0 = COPY %maximum(<4 x s32>)149    ; NO-FP16-NEXT: RET_ReallyLR implicit $q0150    %a:_(<4 x s32>) = COPY $q0151    %b:_(<4 x s32>) = COPY $q1152    %maximum:_(<4 x s32>) = G_FMAXIMUM %a, %b153    $q0 = COPY %maximum(<4 x s32>)154    RET_ReallyLR implicit $q0155 156...157