Commit 245a456
committed
[AArch64][PAC][GISel] Add missing clobbering info to LOADgotAUTH
When LOADgotAUTH is selected by GlobalISel, the existing MachineInstr is
updated in-place instead of constructing a fresh instance by calling
MIB.buildInstr(). This way, implicit-def operands have to be added
manually for register allocator to take them into account.
This patch fixes miscompilation possibility observed when compiling
with GlobalISel enabled or at -O0 optimization level.1 parent 7731ecf commit 245a456
File tree
2 files changed
+31
-3
lines changed- llvm
- lib/Target/AArch64/GISel
- test/CodeGen/AArch64/GlobalISel
2 files changed
+31
-3
lines changedLines changed: 8 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2914 | 2914 | | |
2915 | 2915 | | |
2916 | 2916 | | |
2917 | | - | |
2918 | | - | |
2919 | | - | |
| 2917 | + | |
| 2918 | + | |
2920 | 2919 | | |
| 2920 | + | |
| 2921 | + | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
| 2925 | + | |
2921 | 2926 | | |
2922 | 2927 | | |
2923 | 2928 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
0 commit comments