diff options
Diffstat (limited to 'src/compiler/codegen/RallocUtil.cc')
| -rw-r--r-- | src/compiler/codegen/RallocUtil.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/compiler/codegen/RallocUtil.cc b/src/compiler/codegen/RallocUtil.cc index 8f5d1bbe5a..d5f6720071 100644 --- a/src/compiler/codegen/RallocUtil.cc +++ b/src/compiler/codegen/RallocUtil.cc @@ -141,6 +141,12 @@ void clobberSRegBody(RegisterInfo* p, int numRegs, int sReg) /* Clobber any temp associated with an sReg. Could be in either class */ extern void oatClobberSReg(CompilationUnit* cUnit, int sReg) { +#ifndef NDEBUG + /* Reset live temp tracking sanity checker */ + if (sReg == cUnit->liveSReg) { + cUnit->liveSReg = INVALID_SREG; + } +#endif clobberSRegBody(cUnit->regPool->coreRegs, cUnit->regPool->numCoreRegs, sReg); clobberSRegBody(cUnit->regPool->FPRegs, cUnit->regPool->numFPRegs, |