110 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64 -run-pass=legalizer -O0 %s -o - | FileCheck %s3---4name: test_implicit_def5body: |6 bb.0.entry:7 liveins:8 9 ; CHECK-LABEL: name: test_implicit_def10 ; CHECK: [[DEF:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF11 ; CHECK-NEXT: $x0 = COPY [[DEF]](s64)12 %0:_(s128) = G_IMPLICIT_DEF13 %1:_(s64) = G_TRUNC %0(s128)14 $x0 = COPY %1(s64)15...16 17---18name: test_implicit_def_s319body: |20 bb.0:21 liveins:22 23 ; CHECK-LABEL: name: test_implicit_def_s324 ; CHECK: [[DEF:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF25 ; CHECK-NEXT: [[SEXT_INREG:%[0-9]+]]:_(s64) = G_SEXT_INREG [[DEF]], 326 ; CHECK-NEXT: $x0 = COPY [[SEXT_INREG]](s64)27 %0:_(s3) = G_IMPLICIT_DEF28 %1:_(s64) = G_SEXT %029 $x0 = COPY %1(s64)30...31 32# FIXME: s2 not correctly handled33 34---35name: test_implicit_def_v4s3236body: |37 bb.0:38 39 ; CHECK-LABEL: name: test_implicit_def_v4s3240 ; CHECK: [[DEF:%[0-9]+]]:_(<2 x s32>) = G_IMPLICIT_DEF41 ; CHECK-NEXT: $x0 = COPY [[DEF]](<2 x s32>)42 ; CHECK-NEXT: $x1 = COPY [[DEF]](<2 x s32>)43 %0:_(<4 x s32>) = G_IMPLICIT_DEF44 %1:_(<2 x s32> ), %2:_(<2 x s32>) = G_UNMERGE_VALUES %045 $x0 = COPY %146 $x1 = COPY %247...48 49---50name: test_implicit_def_v4s6451body: |52 bb.0:53 54 ; CHECK-LABEL: name: test_implicit_def_v4s6455 ; CHECK: [[DEF:%[0-9]+]]:_(<2 x s64>) = G_IMPLICIT_DEF56 ; CHECK-NEXT: $q0 = COPY [[DEF]](<2 x s64>)57 ; CHECK-NEXT: $q1 = COPY [[DEF]](<2 x s64>)58 %0:_(<4 x s64>) = G_IMPLICIT_DEF59 %1:_(<2 x s64> ), %2:_(<2 x s64>) = G_UNMERGE_VALUES %060 $q0 = COPY %161 $q1 = COPY %262...63---64name: test_implicit_def_v2s3265body: |66 bb.0:67 68 ; CHECK-LABEL: name: test_implicit_def_v2s3269 ; CHECK: [[DEF:%[0-9]+]]:_(s32) = G_IMPLICIT_DEF70 ; CHECK-NEXT: $w0 = COPY [[DEF]](s32)71 ; CHECK-NEXT: $w1 = COPY [[DEF]](s32)72 %0:_(<2 x s32>) = G_IMPLICIT_DEF73 %1:_(s32), %2:_(s32) = G_UNMERGE_VALUES %074 $w0 = COPY %175 $w1 = COPY %276...77---78name: test_implicit_def_v16s879body: |80 bb.0:81 82 ; CHECK-LABEL: name: test_implicit_def_v16s883 ; CHECK: [[DEF:%[0-9]+]]:_(<16 x s8>) = G_IMPLICIT_DEF84 ; CHECK-NEXT: $q0 = COPY [[DEF]](<16 x s8>)85 %0:_(<16 x s8>) = G_IMPLICIT_DEF86 $q0 = COPY %087...88---89name: test_implicit_def_v8s1690body: |91 bb.0:92 93 ; CHECK-LABEL: name: test_implicit_def_v8s1694 ; CHECK: [[DEF:%[0-9]+]]:_(<8 x s16>) = G_IMPLICIT_DEF95 ; CHECK-NEXT: $q0 = COPY [[DEF]](<8 x s16>)96 %0:_(<8 x s16>) = G_IMPLICIT_DEF97 $q0 = COPY %098...99---100name: test_implicit_def_s88101body: |102 bb.0:103 liveins:104 ; CHECK-LABEL: name: test_implicit_def_s88105 ; CHECK: [[DEF:%[0-9]+]]:_(s64) = G_IMPLICIT_DEF106 ; CHECK-NEXT: $x0 = COPY [[DEF]](s64)107 %undef:_(s88) = G_IMPLICIT_DEF108 %trunc:_(s64) = G_TRUNC %undef109 $x0 = COPY %trunc(s64)110