Skip to content

Commit 48708e7

Browse files
artemsirykigcbot
authored andcommitted
Fixes indirect spill
Fixes indirect spill
1 parent 98c7a0b commit 48708e7

2 files changed

Lines changed: 9 additions & 3 deletions

File tree

visa/BuildIRImpl.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3893,7 +3893,7 @@ G4_SrcRegRegion *IR_Builder::getScratchSurfaceStatusIndex() {
38933893
void IR_Builder::RestoreA0() {
38943894
auto dst = createDstRegRegion(builtinA0Dot2, 1);
38953895
auto src0 =
3896-
createSrc(builtinR0->getRegVar(), 0, 8, getRegionStride1(), Type_UD);
3896+
createSrc(builtinR0->getRegVar(), 0, 8, getRegionScalar(), Type_UD);
38973897
createMov(g4::SIMD1, dst, src0, InstOpt_WriteEnable, true);
38983898
}
38993899

visa/SpillManagerGMRF.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3650,7 +3650,10 @@ void SpillManagerGRF::insertAddrTakenSpillAndFillCode(
36503650
curExSize = G4_ExecSize(0);
36513651
}
36523652

3653-
const RegionDesc *rd = kernel->fg.builder->getRegionStride1();
3653+
// If ExecSize = Width = 1, both VertStride and HorzStride must be 0.
3654+
const RegionDesc *rd = (curExSize == g4::SIMD1)
3655+
? kernel->fg.builder->getRegionScalar()
3656+
: kernel->fg.builder->getRegionStride1();
36543657

36553658
G4_SrcRegRegion *srcRex =
36563659
kernel->fg.builder->createSrc(lr->getVar(), 0, off, rd, type);
@@ -3847,7 +3850,10 @@ void SpillManagerGRF::insertAddrTakenLSSpillAndFillCode(
38473850
curExSize = G4_ExecSize(0);
38483851
}
38493852

3850-
const RegionDesc *rd = kernel->fg.builder->getRegionStride1();
3853+
// If ExecSize = Width = 1, both VertStride and HorzStride must be 0.
3854+
const RegionDesc *rd = (curExSize == g4::SIMD1)
3855+
? kernel->fg.builder->getRegionScalar()
3856+
: kernel->fg.builder->getRegionStride1();
38513857

38523858
G4_SrcRegRegion *srcRex = kernel->fg.builder->createSrc(
38533859
lr->getTopDcl()->getRegVar(), 0, off, rd, type);

0 commit comments

Comments
 (0)