1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc -mtriple=x86_64-linux-gnu -run-pass=legalizer %s -o - | FileCheck %s
3--- |
4
5  define void @test_ashr() { ret void }
6  define void @test_ashr_i1() { ret void }
7...
8---
9name:            test_ashr
10alignment:       16
11legalized:       false
12regBankSelected: false
13tracksRegLiveness: true
14registers:
15  - { id: 0, class: _, preferred-register: '' }
16  - { id: 1, class: _, preferred-register: '' }
17  - { id: 2, class: _, preferred-register: '' }
18  - { id: 3, class: _, preferred-register: '' }
19  - { id: 4, class: _, preferred-register: '' }
20  - { id: 5, class: _, preferred-register: '' }
21  - { id: 6, class: _, preferred-register: '' }
22  - { id: 7, class: _, preferred-register: '' }
23  - { id: 8, class: _, preferred-register: '' }
24  - { id: 9, class: _, preferred-register: '' }
25  - { id: 10, class: _, preferred-register: '' }
26  - { id: 11, class: _, preferred-register: '' }
27body:             |
28  bb.1 (%ir-block.0):
29    liveins: $rdi, $rsi
30
31    ; CHECK-LABEL: name: test_ashr
32    ; CHECK: liveins: $rdi, $rsi
33    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $rdi
34    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY $rsi
35    ; CHECK: RET 0
36    %0(s64) = COPY $rdi
37    %1(s64) = COPY $rsi
38    %2(s64) = G_ASHR %0, %1
39
40    %3(s32) = G_TRUNC %0
41    %4(s32) = G_TRUNC %1
42    %5(s32) = G_ASHR %3, %4
43
44    %6(s16) = G_TRUNC %0
45    %7(s16) = G_TRUNC %1
46    %8(s16) = G_ASHR %6, %7
47
48    %9(s8) = G_TRUNC %0
49    %10(s8) = G_TRUNC %1
50    %11(s8) = G_ASHR %9, %10
51
52    RET 0
53
54...
55---
56name:            test_ashr_i1
57alignment:       16
58legalized:       false
59regBankSelected: false
60tracksRegLiveness: true
61registers:
62  - { id: 0, class: _, preferred-register: '' }
63  - { id: 1, class: _, preferred-register: '' }
64  - { id: 2, class: _, preferred-register: '' }
65  - { id: 3, class: _, preferred-register: '' }
66  - { id: 4, class: _, preferred-register: '' }
67body:             |
68  bb.1 (%ir-block.0):
69    liveins: $rdi, $rsi
70
71    ; CHECK-LABEL: name: test_ashr_i1
72    ; CHECK: liveins: $rdi, $rsi
73    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $rdi
74    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY $rsi
75    ; CHECK: RET 0
76    %0(s64) = COPY $rdi
77    %1(s64) = COPY $rsi
78    %2(s1) = G_TRUNC %0
79    %3(s1) = G_TRUNC %1
80    %4(s1) = G_ASHR %2, %3
81
82    RET 0
83
84...
85