Commit 2bd7d29
committed
[AArch64][SME] Support
This was left out of the original patch (llvm#142392) to simplify the initial
implementation. However, after refactoring the SVE prologue/epilogue code
in llvm#162253, it's not much of an extension to support this case.
The main change here is when restoring the SP from the FP for the SVE
restores, we may need an additional frame offset to move from the start
of the ZPR callee-saves to the start of the PPR callee-saves.
This patch also fixes a previously latent bug where we'd add the
`RealignmentPadding` when allocating the PPR locals, then again for the
ZPR locals. This was unnecessary as the stack only needs to be realigned
after all SVE allocations.aarch64-split-sve-objects with VLAs/realignment1 parent 8b93f27 commit 2bd7d29
File tree
6 files changed
+1490
-802
lines changed- llvm
- lib/Target/AArch64
- test/CodeGen/AArch64
6 files changed
+1490
-802
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2373 | 2373 | | |
2374 | 2374 | | |
2375 | 2375 | | |
2376 | | - | |
2377 | | - | |
2378 | | - | |
2379 | | - | |
2380 | | - | |
2381 | | - | |
2382 | | - | |
2383 | 2376 | | |
2384 | 2377 | | |
2385 | 2378 | | |
| |||
2395 | 2388 | | |
2396 | 2389 | | |
2397 | 2390 | | |
| 2391 | + | |
2398 | 2392 | | |
2399 | 2393 | | |
2400 | 2394 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
793 | 793 | | |
794 | 794 | | |
795 | 795 | | |
796 | | - | |
797 | | - | |
798 | | - | |
799 | | - | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
800 | 799 | | |
801 | 800 | | |
802 | 801 | | |
| |||
1308 | 1307 | | |
1309 | 1308 | | |
1310 | 1309 | | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
| 1315 | + | |
| 1316 | + | |
| 1317 | + | |
| 1318 | + | |
| 1319 | + | |
| 1320 | + | |
| 1321 | + | |
| 1322 | + | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
| 1328 | + | |
| 1329 | + | |
1311 | 1330 | | |
1312 | 1331 | | |
1313 | 1332 | | |
| |||
1408 | 1427 | | |
1409 | 1428 | | |
1410 | 1429 | | |
| 1430 | + | |
1411 | 1431 | | |
1412 | 1432 | | |
1413 | 1433 | | |
| |||
1474 | 1494 | | |
1475 | 1495 | | |
1476 | 1496 | | |
1477 | | - | |
1478 | | - | |
1479 | 1497 | | |
1480 | 1498 | | |
1481 | 1499 | | |
| |||
1490 | 1508 | | |
1491 | 1509 | | |
1492 | 1510 | | |
1493 | | - | |
| 1511 | + | |
1494 | 1512 | | |
1495 | 1513 | | |
1496 | 1514 | | |
| |||
1501 | 1519 | | |
1502 | 1520 | | |
1503 | 1521 | | |
1504 | | - | |
1505 | | - | |
1506 | | - | |
1507 | | - | |
1508 | | - | |
1509 | | - | |
1510 | | - | |
1511 | | - | |
1512 | | - | |
1513 | | - | |
1514 | | - | |
1515 | | - | |
1516 | | - | |
1517 | | - | |
1518 | | - | |
1519 | | - | |
| 1522 | + | |
| 1523 | + | |
| 1524 | + | |
| 1525 | + | |
| 1526 | + | |
| 1527 | + | |
| 1528 | + | |
| 1529 | + | |
| 1530 | + | |
| 1531 | + | |
| 1532 | + | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
1520 | 1540 | | |
1521 | 1541 | | |
1522 | | - | |
1523 | | - | |
1524 | | - | |
1525 | | - | |
1526 | 1542 | | |
1527 | 1543 | | |
1528 | 1544 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
177 | 181 | | |
178 | 182 | | |
179 | 183 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
185 | | - | |
| 185 | + | |
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
194 | 192 | | |
195 | 193 | | |
196 | 194 | | |
197 | | - | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
198 | 198 | | |
199 | | - | |
| 199 | + | |
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
203 | | - | |
204 | | - | |
205 | | - | |
| 203 | + | |
| 204 | + | |
206 | 205 | | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
212 | 209 | | |
213 | 210 | | |
214 | 211 | | |
215 | 212 | | |
216 | 213 | | |
217 | 214 | | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
223 | 218 | | |
224 | 219 | | |
225 | 220 | | |
226 | 221 | | |
227 | | - | |
228 | | - | |
229 | | - | |
230 | | - | |
231 | | - | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
232 | 225 | | |
233 | 226 | | |
234 | 227 | | |
235 | 228 | | |
236 | | - | |
| 229 | + | |
237 | 230 | | |
238 | 231 | | |
239 | 232 | | |
240 | 233 | | |
241 | | - | |
| 234 | + | |
242 | 235 | | |
243 | 236 | | |
244 | 237 | | |
| |||
0 commit comments