We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 2234bb6 + a4b6b9f commit 07152d2Copy full SHA for 07152d2
llvm/lib/CodeGen/Yk/FixStackmapsSpillReloads.cpp
@@ -137,7 +137,11 @@ bool FixStackmapsSpillReloads::runOnMachineFunction(MachineFunction &MF) {
137
Register Reg = MOI->getReg();
138
// Check if the register operand in the stackmap is a restored
139
// spill.
140
- if (Spills.count(Reg) > 0) {
+ // Since implicit operands are ignored by stackmaps (they are not
141
+ // added into the record) we must not replace them with spills so
142
+ // we don't add extra locations that aren't needed. Doing so leads
143
+ // to bugs during deoptimisation.
144
+ if (Spills.count(Reg) > 0 && !MOI->isImplicit()) {
145
// Get spill reload instruction
146
MachineInstr *SMI = Spills[Reg];
147
int FI;
0 commit comments