зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1628836: Add missing JSOp::Pow case for string-int32 arithmetic in CacheIR. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D70807 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
258bf85876
Коммит
2de8122c49
|
@ -13,6 +13,9 @@ function test(zero, one) {
|
||||||
assertEq(one / 1, 1);
|
assertEq(one / 1, 1);
|
||||||
assertEq(10 % one, 0);
|
assertEq(10 % one, 0);
|
||||||
assertEq(one % 1, 0);
|
assertEq(one % 1, 0);
|
||||||
|
|
||||||
|
assertEq(10 ** one, 10);
|
||||||
|
assertEq(one ** 4, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = 0; i < 10; i++) {
|
for (var i = 0; i < 10; i++) {
|
||||||
|
|
|
@ -7036,6 +7036,10 @@ AttachDecision BinaryArithIRGenerator::tryAttachStringInt32Arith() {
|
||||||
writer.int32ModResult(lhsIntId, rhsIntId);
|
writer.int32ModResult(lhsIntId, rhsIntId);
|
||||||
trackAttached("BinaryArith.StringInt32.Mod");
|
trackAttached("BinaryArith.StringInt32.Mod");
|
||||||
break;
|
break;
|
||||||
|
case JSOp::Pow:
|
||||||
|
writer.int32PowResult(lhsIntId, rhsIntId);
|
||||||
|
trackAttached("BinaryArith.StringInt32.Pow");
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
MOZ_CRASH("Unhandled op in tryAttachStringInt32Arith");
|
MOZ_CRASH("Unhandled op in tryAttachStringInt32Arith");
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче