Commit 884130b
authored
AMDGPU: Allow folding multiple uses of some immediates into copies (llvm#154757)
In some cases this will require an avoidable re-defining of
a register, but it works out better most of the time. Also allow
folding 64-bit immediates into subregister extracts, unless it would
break an inline constant.
We could be more aggressive here, but this set of conditions seems
to do a reasonable job without introducing too many regressions.1 parent 7c5b535 commit 884130b
File tree
47 files changed
+1988
-1834
lines changed- llvm
- lib/Target/AMDGPU
- test/CodeGen/AMDGPU
- GlobalISel
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
47 files changed
+1988
-1834
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3554 | 3554 | | |
3555 | 3555 | | |
3556 | 3556 | | |
3557 | | - | |
3558 | | - | |
3559 | | - | |
3560 | 3557 | | |
3561 | 3558 | | |
3562 | 3559 | | |
3563 | 3560 | | |
| 3561 | + | |
| 3562 | + | |
3564 | 3563 | | |
3565 | 3564 | | |
3566 | 3565 | | |
| |||
3572 | 3571 | | |
3573 | 3572 | | |
3574 | 3573 | | |
| 3574 | + | |
| 3575 | + | |
| 3576 | + | |
| 3577 | + | |
| 3578 | + | |
| 3579 | + | |
| 3580 | + | |
| 3581 | + | |
| 3582 | + | |
| 3583 | + | |
| 3584 | + | |
| 3585 | + | |
| 3586 | + | |
| 3587 | + | |
| 3588 | + | |
| 3589 | + | |
| 3590 | + | |
| 3591 | + | |
| 3592 | + | |
3575 | 3593 | | |
3576 | 3594 | | |
3577 | 3595 | | |
| |||
3659 | 3677 | | |
3660 | 3678 | | |
3661 | 3679 | | |
| 3680 | + | |
| 3681 | + | |
| 3682 | + | |
3662 | 3683 | | |
3663 | 3684 | | |
3664 | 3685 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3341 | 3341 | | |
3342 | 3342 | | |
3343 | 3343 | | |
3344 | | - | |
3345 | | - | |
3346 | | - | |
3347 | | - | |
3348 | | - | |
3349 | | - | |
3350 | | - | |
3351 | | - | |
3352 | | - | |
3353 | | - | |
3354 | | - | |
3355 | | - | |
3356 | | - | |
3357 | | - | |
3358 | | - | |
3359 | | - | |
| 3344 | + | |
| 3345 | + | |
| 3346 | + | |
3360 | 3347 | | |
3361 | 3348 | | |
3362 | | - | |
3363 | | - | |
| 3349 | + | |
| 3350 | + | |
| 3351 | + | |
| 3352 | + | |
| 3353 | + | |
| 3354 | + | |
| 3355 | + | |
| 3356 | + | |
| 3357 | + | |
| 3358 | + | |
| 3359 | + | |
3364 | 3360 | | |
3365 | 3361 | | |
3366 | 3362 | | |
| |||
3547 | 3543 | | |
3548 | 3544 | | |
3549 | 3545 | | |
3550 | | - | |
3551 | | - | |
3552 | | - | |
3553 | | - | |
3554 | | - | |
3555 | | - | |
3556 | | - | |
3557 | | - | |
3558 | | - | |
3559 | | - | |
| 3546 | + | |
| 3547 | + | |
| 3548 | + | |
| 3549 | + | |
| 3550 | + | |
| 3551 | + | |
| 3552 | + | |
| 3553 | + | |
3560 | 3554 | | |
3561 | | - | |
3562 | | - | |
3563 | | - | |
3564 | | - | |
3565 | | - | |
3566 | | - | |
3567 | | - | |
| 3555 | + | |
| 3556 | + | |
| 3557 | + | |
3568 | 3558 | | |
3569 | 3559 | | |
| 3560 | + | |
| 3561 | + | |
3570 | 3562 | | |
3571 | 3563 | | |
3572 | 3564 | | |
| |||
Lines changed: 6 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
358 | 358 | | |
359 | 359 | | |
360 | 360 | | |
361 | | - | |
| 361 | + | |
362 | 362 | | |
363 | | - | |
| 363 | + | |
364 | 364 | | |
365 | 365 | | |
366 | | - | |
| 366 | + | |
367 | 367 | | |
368 | 368 | | |
369 | 369 | | |
| |||
383 | 383 | | |
384 | 384 | | |
385 | 385 | | |
386 | | - | |
| 386 | + | |
387 | 387 | | |
388 | | - | |
| 388 | + | |
389 | 389 | | |
390 | 390 | | |
391 | | - | |
| 391 | + | |
392 | 392 | | |
393 | 393 | | |
394 | 394 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1379 | 1379 | | |
1380 | 1380 | | |
1381 | 1381 | | |
1382 | | - | |
| 1382 | + | |
1383 | 1383 | | |
1384 | 1384 | | |
1385 | | - | |
| 1385 | + | |
1386 | 1386 | | |
1387 | 1387 | | |
1388 | | - | |
| 1388 | + | |
1389 | 1389 | | |
1390 | 1390 | | |
1391 | | - | |
1392 | 1391 | | |
1393 | 1392 | | |
1394 | 1393 | | |
1395 | 1394 | | |
1396 | 1395 | | |
1397 | 1396 | | |
1398 | | - | |
| 1397 | + | |
1399 | 1398 | | |
1400 | 1399 | | |
1401 | | - | |
| 1400 | + | |
1402 | 1401 | | |
1403 | 1402 | | |
1404 | | - | |
| 1403 | + | |
1405 | 1404 | | |
1406 | 1405 | | |
1407 | | - | |
1408 | 1406 | | |
1409 | 1407 | | |
1410 | 1408 | | |
1411 | 1409 | | |
1412 | 1410 | | |
1413 | 1411 | | |
1414 | | - | |
1415 | | - | |
| 1412 | + | |
1416 | 1413 | | |
1417 | 1414 | | |
1418 | 1415 | | |
1419 | 1416 | | |
1420 | | - | |
| 1417 | + | |
| 1418 | + | |
1421 | 1419 | | |
1422 | 1420 | | |
1423 | 1421 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
229 | 229 | | |
230 | 230 | | |
231 | 231 | | |
232 | | - | |
| 232 | + | |
| 233 | + | |
233 | 234 | | |
234 | 235 | | |
235 | 236 | | |
236 | | - | |
| 237 | + | |
237 | 238 | | |
238 | | - | |
| 239 | + | |
239 | 240 | | |
240 | 241 | | |
241 | 242 | | |
242 | 243 | | |
| 244 | + | |
243 | 245 | | |
244 | 246 | | |
245 | 247 | | |
246 | | - | |
| 248 | + | |
247 | 249 | | |
248 | 250 | | |
249 | 251 | | |
| |||
2951 | 2953 | | |
2952 | 2954 | | |
2953 | 2955 | | |
2954 | | - | |
| 2956 | + | |
| 2957 | + | |
2955 | 2958 | | |
2956 | 2959 | | |
2957 | | - | |
| 2960 | + | |
2958 | 2961 | | |
2959 | | - | |
| 2962 | + | |
| 2963 | + | |
2960 | 2964 | | |
2961 | | - | |
2962 | | - | |
| 2965 | + | |
2963 | 2966 | | |
2964 | | - | |
2965 | 2967 | | |
| 2968 | + | |
| 2969 | + | |
| 2970 | + | |
2966 | 2971 | | |
2967 | | - | |
2968 | 2972 | | |
2969 | 2973 | | |
2970 | 2974 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1067 | 1067 | | |
1068 | 1068 | | |
1069 | 1069 | | |
1070 | | - | |
1071 | | - | |
1072 | | - | |
1073 | | - | |
1074 | | - | |
1075 | | - | |
1076 | | - | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
1077 | 1074 | | |
1078 | | - | |
1079 | 1075 | | |
1080 | 1076 | | |
1081 | | - | |
| 1077 | + | |
1082 | 1078 | | |
1083 | | - | |
1084 | | - | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
1085 | 1084 | | |
1086 | | - | |
1087 | | - | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
1088 | 1088 | | |
1089 | 1089 | | |
1090 | 1090 | | |
| |||
1660 | 1660 | | |
1661 | 1661 | | |
1662 | 1662 | | |
1663 | | - | |
1664 | | - | |
1665 | | - | |
1666 | | - | |
1667 | | - | |
1668 | | - | |
1669 | | - | |
| 1663 | + | |
| 1664 | + | |
| 1665 | + | |
| 1666 | + | |
1670 | 1667 | | |
1671 | | - | |
1672 | 1668 | | |
1673 | 1669 | | |
1674 | | - | |
| 1670 | + | |
1675 | 1671 | | |
1676 | | - | |
1677 | | - | |
| 1672 | + | |
| 1673 | + | |
| 1674 | + | |
| 1675 | + | |
| 1676 | + | |
1678 | 1677 | | |
1679 | | - | |
1680 | | - | |
| 1678 | + | |
| 1679 | + | |
| 1680 | + | |
1681 | 1681 | | |
1682 | 1682 | | |
1683 | 1683 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
233 | 233 | | |
234 | 234 | | |
235 | 235 | | |
236 | | - | |
237 | | - | |
238 | | - | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
239 | 239 | | |
240 | | - | |
| 240 | + | |
241 | 241 | | |
242 | 242 | | |
| 243 | + | |
243 | 244 | | |
244 | 245 | | |
245 | | - | |
| 246 | + | |
246 | 247 | | |
247 | 248 | | |
248 | 249 | | |
| |||
1260 | 1261 | | |
1261 | 1262 | | |
1262 | 1263 | | |
1263 | | - | |
| 1264 | + | |
| 1265 | + | |
1264 | 1266 | | |
1265 | 1267 | | |
1266 | 1268 | | |
| |||
1279 | 1281 | | |
1280 | 1282 | | |
1281 | 1283 | | |
1282 | | - | |
| 1284 | + | |
| 1285 | + | |
1283 | 1286 | | |
1284 | 1287 | | |
1285 | 1288 | | |
| |||
0 commit comments