Commit ca49a47
[PowerPC] Fix computation of offset for load-and-splat for permuted loads
Unfortunately this is another regression from my canonicalization patch
(1fed131). The patch contained two implicit assumptions:
1. That we would have a permuted load only if we are loading a partial vector
2. That a partial vector load would necessarily be as wide as the splat
However, assumption 2 is not correct since it is possible to do a wider
load and only splat a half of it. This patch corrects this assumption by
simply checking if the load is permuted and adjusting the offset if it is.
(cherry picked from commit 7d076e1)1 parent 152c2b1 commit ca49a47
File tree
2 files changed
+106
-8
lines changed- llvm
- lib/Target/PowerPC
- test/CodeGen/PowerPC
2 files changed
+106
-8
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9111 | 9111 | | |
9112 | 9112 | | |
9113 | 9113 | | |
9114 | | - | |
| 9114 | + | |
9115 | 9115 | | |
9116 | 9116 | | |
9117 | 9117 | | |
9118 | 9118 | | |
9119 | | - | |
| 9119 | + | |
| 9120 | + | |
9120 | 9121 | | |
| 9122 | + | |
9121 | 9123 | | |
9122 | 9124 | | |
9123 | 9125 | | |
| |||
9289 | 9291 | | |
9290 | 9292 | | |
9291 | 9293 | | |
9292 | | - | |
| 9294 | + | |
| 9295 | + | |
9293 | 9296 | | |
9294 | 9297 | | |
9295 | 9298 | | |
| |||
9912 | 9915 | | |
9913 | 9916 | | |
9914 | 9917 | | |
9915 | | - | |
| 9918 | + | |
| 9919 | + | |
9916 | 9920 | | |
9917 | 9921 | | |
9918 | 9922 | | |
9919 | 9923 | | |
9920 | 9924 | | |
9921 | 9925 | | |
9922 | 9926 | | |
| 9927 | + | |
| 9928 | + | |
| 9929 | + | |
| 9930 | + | |
| 9931 | + | |
| 9932 | + | |
| 9933 | + | |
| 9934 | + | |
| 9935 | + | |
| 9936 | + | |
9923 | 9937 | | |
9924 | 9938 | | |
9925 | 9939 | | |
| |||
9929 | 9943 | | |
9930 | 9944 | | |
9931 | 9945 | | |
9932 | | - | |
9933 | | - | |
9934 | | - | |
9935 | | - | |
9936 | 9946 | | |
9937 | 9947 | | |
9938 | 9948 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
446 | 446 | | |
447 | 447 | | |
448 | 448 | | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
449 | 537 | | |
450 | 538 | | |
0 commit comments