• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc -march=x86-64 -run-pass none -o - %s | FileCheck %s
3# This test ensures that the MIR parser parses and prints subregisters index
4# operands correctly.
5
6--- |
7
8  define zeroext i1 @t(i1 %c) {
9  entry:
10    ret i1 %c
11  }
12
13...
14---
15name:            t
16tracksRegLiveness: true
17registers:
18  - { id: 0, class: gr32 }
19  - { id: 1, class: gr8 }
20body: |
21  bb.0.entry:
22    liveins: $edi, $eax
23    ; CHECK-LABEL: name: t
24    ; CHECK: liveins: $edi, $eax
25    ; CHECK: [[INSERT_SUBREG:%[0-9]+]]:gr32 = INSERT_SUBREG $edi, $al, %subreg.sub_8bit
26    ; CHECK: [[EXTRACT_SUBREG:%[0-9]+]]:gr8 = EXTRACT_SUBREG $eax, %subreg.sub_8bit_hi
27    ; CHECK: $ax = REG_SEQUENCE [[EXTRACT_SUBREG]], %subreg.sub_8bit, [[EXTRACT_SUBREG]], %subreg.sub_8bit_hi
28    ; CHECK: RETQ $ax
29    %0 = INSERT_SUBREG $edi, $al, %subreg.sub_8bit
30    %1 = EXTRACT_SUBREG $eax, %subreg.sub_8bit_hi
31    $ax = REG_SEQUENCE %1, %subreg.sub_8bit, %1, %subreg.sub_8bit_hi
32    RETQ $ax
33...
34
35