[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / AArch64 / GlobalISel / select-abs.mir
blob3f0a7adaa8310720c9771af450fb977ba0d63e9b
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=aarch64-apple-ios -run-pass=instruction-select %s -o - | FileCheck %s
4 ...
5 ---
6 name:            v4s16
7 legalized:       true
8 regBankSelected: true
9 tracksRegLiveness: true
10 body:             |
11   bb.0:
12     liveins: $d0
14     ; CHECK-LABEL: name: v4s16
15     ; CHECK: liveins: $d0
16     ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY $d0
17     ; CHECK: [[ABSv4i16_:%[0-9]+]]:fpr64 = ABSv4i16 [[COPY]]
18     ; CHECK: $d0 = COPY [[ABSv4i16_]]
19     ; CHECK: RET_ReallyLR implicit $d0
20     %0:fpr(<4 x s16>) = COPY $d0
21     %1:fpr(<4 x s16>) = G_ABS %0
22     $d0 = COPY %1(<4 x s16>)
23     RET_ReallyLR implicit $d0
25 ...
26 ---
27 name:            v8s16
28 legalized:       true
29 regBankSelected: true
30 tracksRegLiveness: true
31 body:             |
32   bb.0:
33     liveins: $q0
35     ; CHECK-LABEL: name: v8s16
36     ; CHECK: liveins: $q0
37     ; CHECK: [[COPY:%[0-9]+]]:fpr128 = COPY $q0
38     ; CHECK: [[ABSv8i16_:%[0-9]+]]:fpr128 = ABSv8i16 [[COPY]]
39     ; CHECK: $q0 = COPY [[ABSv8i16_]]
40     ; CHECK: RET_ReallyLR implicit $q0
41     %0:fpr(<8 x s16>) = COPY $q0
42     %1:fpr(<8 x s16>) = G_ABS %0
43     $q0 = COPY %1(<8 x s16>)
44     RET_ReallyLR implicit $q0
46 ...
47 ---
48 name:            v2s32
49 legalized:       true
50 regBankSelected: true
51 tracksRegLiveness: true
52 body:             |
53   bb.0:
54     liveins: $d0
56     ; CHECK-LABEL: name: v2s32
57     ; CHECK: liveins: $d0
58     ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY $d0
59     ; CHECK: [[ABSv2i32_:%[0-9]+]]:fpr64 = ABSv2i32 [[COPY]]
60     ; CHECK: $d0 = COPY [[ABSv2i32_]]
61     ; CHECK: RET_ReallyLR implicit $d0
62     %0:fpr(<2 x s32>) = COPY $d0
63     %1:fpr(<2 x s32>) = G_ABS %0
64     $d0 = COPY %1(<2 x s32>)
65     RET_ReallyLR implicit $d0
67 ...
68 ---
69 name:            v4s32
70 legalized:       true
71 regBankSelected: true
72 tracksRegLiveness: true
73 body:             |
74   bb.0:
75     liveins: $q0
77     ; CHECK-LABEL: name: v4s32
78     ; CHECK: liveins: $q0
79     ; CHECK: [[COPY:%[0-9]+]]:fpr128 = COPY $q0
80     ; CHECK: [[ABSv4i32_:%[0-9]+]]:fpr128 = ABSv4i32 [[COPY]]
81     ; CHECK: $q0 = COPY [[ABSv4i32_]]
82     ; CHECK: RET_ReallyLR implicit $q0
83     %0:fpr(<4 x s32>) = COPY $q0
84     %1:fpr(<4 x s32>) = G_ABS %0
85     $q0 = COPY %1(<4 x s32>)
86     RET_ReallyLR implicit $q0
88 ...
89 ---
90 name:            v4s8
91 legalized:       true
92 regBankSelected: true
93 tracksRegLiveness: true
94 body:             |
95   bb.0:
96     liveins: $d0
98     ; CHECK-LABEL: name: v4s8
99     ; CHECK: liveins: $d0
100     ; CHECK: [[COPY:%[0-9]+]]:fpr64 = COPY $d0
101     ; CHECK: [[ABSv8i8_:%[0-9]+]]:fpr64 = ABSv8i8 [[COPY]]
102     ; CHECK: $d0 = COPY [[ABSv8i8_]]
103     ; CHECK: RET_ReallyLR implicit $d0
104     %0:fpr(<8 x s8>) = COPY $d0
105     %1:fpr(<8 x s8>) = G_ABS %0
106     $d0 = COPY %1(<8 x s8>)
107     RET_ReallyLR implicit $d0
111 name:            v16s8
112 legalized:       true
113 regBankSelected: true
114 tracksRegLiveness: true
115 body:             |
116   bb.0:
117     liveins: $q0
119     ; CHECK-LABEL: name: v16s8
120     ; CHECK: liveins: $q0
121     ; CHECK: [[COPY:%[0-9]+]]:fpr128 = COPY $q0
122     ; CHECK: [[ABSv16i8_:%[0-9]+]]:fpr128 = ABSv16i8 [[COPY]]
123     ; CHECK: $q0 = COPY [[ABSv16i8_]]
124     ; CHECK: RET_ReallyLR implicit $q0
125     %0:fpr(<16 x s8>) = COPY $q0
126     %1:fpr(<16 x s8>) = G_ABS %0
127     $q0 = COPY %1(<16 x s8>)
128     RET_ReallyLR implicit $q0