Bug 1332155 - Skip non-try-related trynotes when asserting jump targets

Issue #74
This commit is contained in:
janekptacijarabaci 2018-03-25 12:37:44 +02:00 committed by Roy Tam
commit da23a493b7

View file

@ -2804,9 +2804,10 @@ JSScript::assertValidJumpTargets() const
for (; tn < tnlimit; tn++) {
jsbytecode* tryStart = mainEntry + tn->start;
jsbytecode* tryPc = tryStart - 1;
if (JSOp(*tryPc) != JSOP_TRY)
if (tn->kind != JSTRY_CATCH && tn->kind != JSTRY_FINALLY)
continue;
MOZ_ASSERT(JSOp(*tryPc) == JSOP_TRY);
jsbytecode* tryTarget = tryStart + tn->length;
MOZ_ASSERT(mainEntry <= tryTarget && tryTarget < end);
MOZ_ASSERT(BytecodeIsJumpTarget(JSOp(*tryTarget)));