Bug 1354275 - Fix handling of Array() throwing in Ion r=jandem

MozReview-Commit-ID: 4bwSYSmvLUV

--HG--
extra : rebase_source : e9e1fd64dfa2ba330582dd0945b14de873a36f7e
This commit is contained in:
Ted Campbell 2017-04-10 10:40:47 -04:00
Родитель 569aeb1300
Коммит fd1224b2e7
2 изменённых файлов: 20 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,16 @@
// --ion-eager --ion-offthread-compile=off
function f(t) {
for (var i = 0; i < 2; i++) {
try {
var x = 1;
Array(1);
x = 2;
Array(t);
} catch (e) {
assertEq(x, 2);
}
}
}
f(-1);

Просмотреть файл

@ -517,6 +517,10 @@ IonBuilder::inlineArray(CallInfo& callInfo)
arg);
current->add(ins);
current->push(ins);
// This may throw, so we need a resume point.
MOZ_TRY(resumeAfter(ins));
return InliningStatus_Inlined;
}