- removed assert that got triggered in an edge case that must pass here.

This commit is contained in:
Christoph Oelckers 2018-12-02 23:35:18 +01:00 committed by drfrag
parent 1bfa1fd5a6
commit 0a36ad0182

View file

@ -492,7 +492,9 @@ void VMFunctionBuilder::RegAvailability::Return(int reg, int count)
mask <<= firstbit;
// If we are trying to return registers that are already free,
// it probably means that the caller messed up somewhere.
assert((Used[firstword] & mask) == mask);
// Unfortunately this can happen if an 'action' function gets called from a non-action context,
// because for that case it pushes the self pointer a second time without reallocating, so it gets freed twice.
//assert((Used[firstword] & mask) == mask);
Used[firstword] &= ~mask;
}
else