Commit 5f63c34
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 33609bd commit 5f63c34
File tree
6 files changed
+1487
-797
lines changed- llvm
- lib/Target/AArch64
- test/CodeGen/AArch64
6 files changed
+1487
-797
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2380 | 2380 | | |
2381 | 2381 | | |
2382 | 2382 | | |
2383 | | - | |
2384 | | - | |
2385 | | - | |
2386 | | - | |
2387 | | - | |
2388 | | - | |
2389 | | - | |
2390 | 2383 | | |
2391 | 2384 | | |
2392 | 2385 | | |
| |||
2402 | 2395 | | |
2403 | 2396 | | |
2404 | 2397 | | |
| 2398 | + | |
2405 | 2399 | | |
2406 | 2400 | | |
2407 | 2401 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
805 | 805 | | |
806 | 806 | | |
807 | 807 | | |
808 | | - | |
| 808 | + | |
809 | 809 | | |
810 | 810 | | |
811 | 811 | | |
| |||
1318 | 1318 | | |
1319 | 1319 | | |
1320 | 1320 | | |
| 1321 | + | |
| 1322 | + | |
| 1323 | + | |
| 1324 | + | |
| 1325 | + | |
| 1326 | + | |
| 1327 | + | |
| 1328 | + | |
| 1329 | + | |
| 1330 | + | |
| 1331 | + | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
1321 | 1341 | | |
1322 | 1342 | | |
1323 | 1343 | | |
| |||
1418 | 1438 | | |
1419 | 1439 | | |
1420 | 1440 | | |
| 1441 | + | |
1421 | 1442 | | |
1422 | 1443 | | |
1423 | 1444 | | |
| |||
1483 | 1504 | | |
1484 | 1505 | | |
1485 | 1506 | | |
1486 | | - | |
1487 | 1507 | | |
1488 | 1508 | | |
1489 | 1509 | | |
| |||
1510 | 1530 | | |
1511 | 1531 | | |
1512 | 1532 | | |
1513 | | - | |
1514 | | - | |
1515 | | - | |
1516 | | - | |
1517 | | - | |
1518 | | - | |
1519 | | - | |
1520 | | - | |
1521 | | - | |
1522 | | - | |
1523 | | - | |
1524 | | - | |
1525 | | - | |
1526 | | - | |
1527 | | - | |
1528 | | - | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
| 1540 | + | |
| 1541 | + | |
| 1542 | + | |
| 1543 | + | |
| 1544 | + | |
| 1545 | + | |
| 1546 | + | |
| 1547 | + | |
| 1548 | + | |
| 1549 | + | |
| 1550 | + | |
1529 | 1551 | | |
1530 | 1552 | | |
1531 | | - | |
1532 | | - | |
1533 | | - | |
1534 | | - | |
1535 | 1553 | | |
1536 | 1554 | | |
1537 | 1555 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
183 | 187 | | |
184 | 188 | | |
185 | 189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
165 | | - | |
| 165 | + | |
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
173 | | - | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
174 | 172 | | |
175 | 173 | | |
176 | 174 | | |
177 | | - | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
178 | 178 | | |
179 | | - | |
| 179 | + | |
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
183 | | - | |
184 | | - | |
185 | | - | |
| 183 | + | |
| 184 | + | |
186 | 185 | | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
192 | 189 | | |
193 | 190 | | |
194 | 191 | | |
195 | 192 | | |
196 | 193 | | |
197 | 194 | | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
203 | 198 | | |
204 | 199 | | |
205 | 200 | | |
206 | 201 | | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
212 | 205 | | |
213 | 206 | | |
214 | 207 | | |
215 | 208 | | |
216 | | - | |
| 209 | + | |
217 | 210 | | |
218 | 211 | | |
219 | 212 | | |
220 | 213 | | |
221 | | - | |
| 214 | + | |
222 | 215 | | |
223 | 216 | | |
224 | 217 | | |
| |||
0 commit comments