46 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64 -O0 -run-pass=legalizer -global-isel-abort=2 %s -o - | FileCheck %s3 4---5name: test_merge_s46body: |7 bb.0:8 ; CHECK-LABEL: name: test_merge_s49 ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 010 ; CHECK-NEXT: [[C1:%[0-9]+]]:_(s64) = G_CONSTANT i64 411 ; CHECK-NEXT: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[C]], [[C1]](s64)12 ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY [[C]](s32)13 ; CHECK-NEXT: [[OR:%[0-9]+]]:_(s32) = G_OR [[COPY]], [[SHL]]14 ; CHECK-NEXT: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[OR]](s32)15 ; CHECK-NEXT: $x0 = COPY [[ANYEXT]](s64)16 %0:_(s64) = G_CONSTANT i64 017 %1:_(s4) = G_TRUNC %018 19 %2:_(s8) = G_MERGE_VALUES %1, %120 %3:_(s8) = COPY %221 %4:_(s64) = G_ANYEXT %322 $x0 = COPY %423...24---25name: test_merge_s16_s826body: |27 bb.0:28 29 ; CHECK-LABEL: name: test_merge_s16_s830 ; CHECK: %a:_(s32) = COPY $w031 ; CHECK-NEXT: %b:_(s32) = COPY $w132 ; CHECK-NEXT: %a_t:_(s8) = G_TRUNC %a(s32)33 ; CHECK-NEXT: %b_t:_(s8) = G_TRUNC %b(s32)34 ; CHECK-NEXT: %m:_(s16) = G_MERGE_VALUES %a_t(s8), %b_t(s8)35 ; CHECK-NEXT: %ext:_(s64) = G_ANYEXT %m(s16)36 ; CHECK-NEXT: $x0 = COPY %ext(s64)37 %a:_(s32) = COPY $w038 %b:_(s32) = COPY $w139 %a_t:_(s8) = G_TRUNC %a40 %b_t:_(s8) = G_TRUNC %b41 42 %m:_(s16) = G_MERGE_VALUES %a_t, %b_t43 %ext:_(s64) = G_ANYEXT %m44 $x0 = COPY %ext45...46