Commit 4c853be
authored
[AArch64] Replace uaddlv with addv for popcount operation (#121934)
Replace `uaddlv` with `addv` for popcount operation as it is simpler
operation.
On certain platforms like Cortex-A510, `addv` has a latency of 3 cycles
whereas `uaddlv` has a latency of 4 cycles
GCC generates `addv` as well:
https://godbolt.org/z/MnYG9jcEo1 parent eb63cd6 commit 4c853be
File tree
5 files changed
+66
-69
lines changed- llvm
- lib/Target/AArch64
- test/CodeGen/AArch64
5 files changed
+66
-69
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10764 | 10764 | | |
10765 | 10765 | | |
10766 | 10766 | | |
10767 | | - | |
| 10767 | + | |
10768 | 10768 | | |
10769 | 10769 | | |
10770 | 10770 | | |
10771 | 10771 | | |
10772 | 10772 | | |
10773 | 10773 | | |
10774 | | - | |
10775 | | - | |
| 10774 | + | |
| 10775 | + | |
| 10776 | + | |
10776 | 10777 | | |
10777 | | - | |
| 10778 | + | |
10778 | 10779 | | |
10779 | | - | |
10780 | | - | |
10781 | | - | |
10782 | | - | |
10783 | | - | |
10784 | | - | |
| 10780 | + | |
| 10781 | + | |
10785 | 10782 | | |
10786 | 10783 | | |
10787 | 10784 | | |
10788 | 10785 | | |
10789 | | - | |
10790 | | - | |
10791 | | - | |
10792 | | - | |
| 10786 | + | |
| 10787 | + | |
10793 | 10788 | | |
10794 | | - | |
10795 | | - | |
10796 | | - | |
10797 | | - | |
| 10789 | + | |
| 10790 | + | |
10798 | 10791 | | |
10799 | 10792 | | |
10800 | 10793 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
| |||
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
82 | | - | |
83 | | - | |
| 82 | + | |
| 83 | + | |
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
210 | 222 | | |
211 | 223 | | |
212 | 224 | | |
213 | 225 | | |
214 | 226 | | |
215 | 227 | | |
216 | | - | |
217 | | - | |
| 228 | + | |
| 229 | + | |
218 | 230 | | |
219 | | - | |
220 | | - | |
221 | | - | |
| 231 | + | |
| 232 | + | |
222 | 233 | | |
223 | | - | |
224 | | - | |
225 | | - | |
| 234 | + | |
| 235 | + | |
226 | 236 | | |
227 | 237 | | |
228 | | - | |
| 238 | + | |
229 | 239 | | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
| 240 | + | |
| 241 | + | |
234 | 242 | | |
235 | 243 | | |
236 | | - | |
237 | | - | |
| 244 | + | |
| 245 | + | |
238 | 246 | | |
239 | | - | |
240 | | - | |
241 | | - | |
242 | | - | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
243 | 250 | | |
244 | 251 | | |
245 | | - | |
246 | 252 | | |
247 | 253 | | |
248 | 254 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
114 | 114 | | |
115 | 115 | | |
116 | 116 | | |
117 | | - | |
118 | | - | |
119 | | - | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
120 | 120 | | |
121 | 121 | | |
122 | 122 | | |
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
139 | | - | |
140 | | - | |
141 | | - | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| |||
158 | 158 | | |
159 | 159 | | |
160 | 160 | | |
161 | | - | |
162 | | - | |
| 161 | + | |
| 162 | + | |
163 | 163 | | |
164 | 164 | | |
165 | 165 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
| 31 | + | |
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| |||
104 | 104 | | |
105 | 105 | | |
106 | 106 | | |
107 | | - | |
108 | | - | |
| 107 | + | |
| 108 | + | |
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
| |||
191 | 191 | | |
192 | 192 | | |
193 | 193 | | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
200 | 198 | | |
201 | 199 | | |
202 | 200 | | |
| |||
0 commit comments