Skip to content

Commit f07e02a

Browse files
pratikasharigcbot
authored andcommitted
[Autobackout][FuncReg]Revert of change: e0e7ff6
Treat spilled relocatable operands specially When RA spills a variable that is known to always contain a compile time constant, we optimize the fill by reloading the constant using a mov rather than loading from memory. However, this optimization is illegal when constant being written in to spilled variable is a relocatable value. This change prevents spill/fill optimization for such relocatable operands.
1 parent 3ea1fbb commit f07e02a

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

visa/SpillManagerGMRF.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -800,8 +800,7 @@ static bool immFillCandidate(G4_INST *inst) {
800800
return inst->opcode() == G4_mov && inst->getExecSize() == g4::SIMD1 &&
801801
inst->getSrc(0)->isImm() && inst->isWriteEnableInst() &&
802802
inst->getDst()->getType() == inst->getSrc(0)->getType() &&
803-
!inst->getPredicate() && !inst->getCondMod() && !inst->getSaturate() &&
804-
!inst->getSrc(0)->isRelocImm();
803+
!inst->getPredicate() && !inst->getCondMod() && !inst->getSaturate();
805804
}
806805

807806
G4_SrcRegRegion *getSpillFillHeader(IR_Builder &builder, G4_Declare *decl);

0 commit comments

Comments
 (0)