Fixed assembler errors not blacklisting the loop header, resulting in senseless re-recordings (bug 467854, r=gal).

This commit is contained in:
David Anderson 2008-12-04 16:24:55 -08:00
parent beea650730
commit 9ba9c170dc

View File

@ -2226,8 +2226,10 @@ TraceRecorder::compile(Fragmento* fragmento)
::compile(fragmento->assm(), fragment); ::compile(fragmento->assm(), fragment);
if (anchor) if (anchor)
fragmento->assm()->patch(anchor); fragmento->assm()->patch(anchor);
if (fragmento->assm()->error() != nanojit::None) if (fragmento->assm()->error() != nanojit::None) {
js_BlacklistPC(fragmento, fragment);
return; return;
}
JS_ASSERT(fragment->code()); JS_ASSERT(fragment->code());
JS_ASSERT(!fragment->vmprivate); JS_ASSERT(!fragment->vmprivate);
if (fragment == fragment->root) if (fragment == fragment->root)