• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc  -march=aarch64 -O0 -run-pass=legalizer  %s -o - | FileCheck %s
3
4---
5name:            test_merge_s4
6body: |
7  bb.0:
8    ; CHECK-LABEL: name: test_merge_s4
9    ; CHECK: [[C:%[0-9]+]]:_(s8) = G_CONSTANT i8 4
10    ; CHECK: [[C1:%[0-9]+]]:_(s32) = G_CONSTANT i32 15
11    ; CHECK: [[C2:%[0-9]+]]:_(s32) = G_CONSTANT i32 0
12    ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[C2]], [[C1]]
13    ; CHECK: [[C3:%[0-9]+]]:_(s64) = G_CONSTANT i64 4
14    ; CHECK: [[SHL:%[0-9]+]]:_(s32) = G_SHL [[AND]], [[C3]](s64)
15    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY [[C2]](s32)
16    ; CHECK: [[AND1:%[0-9]+]]:_(s32) = G_AND [[COPY]], [[C1]]
17    ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[SHL]](s32)
18    ; CHECK: [[OR:%[0-9]+]]:_(s32) = G_OR [[AND1]], [[COPY1]]
19    ; CHECK: [[ANYEXT:%[0-9]+]]:_(s64) = G_ANYEXT [[OR]](s32)
20    ; CHECK: $x0 = COPY [[ANYEXT]](s64)
21    %0:_(s64) = G_CONSTANT i64 0
22    %1:_(s4) = G_TRUNC %0
23
24    %2:_(s8) = G_MERGE_VALUES %1, %1
25    %3:_(s8) = COPY %2
26    %4:_(s64) = G_ANYEXT %3
27    $x0 = COPY %4
28...
29