Fix short param forwarding of struct elements
This commit is contained in:
parent
5aeec2fad4
commit
68b57bb9a8
|
@ -7732,7 +7732,7 @@ void InterCodeBasicBlock::UpdateLocalIntegerRangeSetsForward(const GrowingVariab
|
|||
vr = ins->mDst.mRange;
|
||||
|
||||
if (ins->mSrc[0].mTemp < 0 && ins->mSrc[0].mMemory == IM_FPARAM)
|
||||
vr.Limit(mLocalParamValueRange[ins->mSrc[0].mVarIndex]);
|
||||
vr.Limit(mLocalParamValueRange[ins->mSrc[0].mVarIndex + ins->mSrc[0].mIntConst]);
|
||||
#if 1
|
||||
if (ins->mDst.mType == IT_INT8)
|
||||
{
|
||||
|
@ -8409,7 +8409,7 @@ void InterCodeBasicBlock::UpdateLocalIntegerRangeSetsForward(const GrowingVariab
|
|||
else if (ins->mCode == IC_STORE)
|
||||
{
|
||||
if (ins->mSrc[1].mTemp < 0 && ins->mSrc[1].mMemory == IM_FPARAM)
|
||||
mLocalParamValueRange[ins->mSrc[1].mVarIndex] = ins->mSrc[0].mRange;
|
||||
mLocalParamValueRange[ins->mSrc[1].mVarIndex + ins->mSrc[0].mIntConst] = ins->mSrc[0].mRange;
|
||||
}
|
||||
|
||||
assert(mProc->mLocalValueRange.Size() == mExitRequiredTemps.Size());
|
||||
|
@ -21992,7 +21992,7 @@ void InterCodeProcedure::Close(void)
|
|||
{
|
||||
GrowingTypeArray tstack(IT_NONE);
|
||||
|
||||
CheckFunc = !strcmp(mIdent->mString, "main");
|
||||
CheckFunc = !strcmp(mIdent->mString, "f");
|
||||
CheckCase = false;
|
||||
|
||||
mEntryBlock = mBlocks[0];
|
||||
|
|
Loading…
Reference in New Issue