зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1687959 - Move setBailoutKind() out of MLoadDynamicSlotAndUnbox, MLoadElementAndUnbox r=jandem
All three load operations are handled consistently now. Depends on D138586 Differential Revision: https://phabricator.services.mozilla.com/D138691
This commit is contained in:
Родитель
20ae294814
Коммит
a6ff477d0d
|
@ -4044,7 +4044,6 @@ bool jit::FoldLoadsWithUnbox(MIRGenerator* mir, MIRGraph& graph) {
|
|||
auto* loadIns = load->toLoadFixedSlot();
|
||||
replacement = MLoadFixedSlotAndUnbox::New(
|
||||
graph.alloc(), loadIns->object(), loadIns->slot(), mode, type);
|
||||
replacement->setBailoutKind(BailoutKind::UnboxFolding);
|
||||
break;
|
||||
}
|
||||
case MDefinition::Opcode::LoadDynamicSlot: {
|
||||
|
@ -4063,6 +4062,7 @@ bool jit::FoldLoadsWithUnbox(MIRGenerator* mir, MIRGraph& graph) {
|
|||
default:
|
||||
MOZ_CRASH("Unexpected instruction");
|
||||
}
|
||||
replacement->setBailoutKind(BailoutKind::UnboxFolding);
|
||||
|
||||
block->insertBefore(load, replacement);
|
||||
unbox->replaceAllUsesWith(replacement);
|
||||
|
|
|
@ -6540,7 +6540,6 @@ class MLoadElementAndUnbox : public MBinaryInstruction,
|
|||
if (mode_ == MUnbox::Fallible) {
|
||||
setGuard();
|
||||
}
|
||||
setBailoutKind(BailoutKind::UnboxFolding);
|
||||
}
|
||||
|
||||
public:
|
||||
|
@ -7214,7 +7213,6 @@ class MLoadDynamicSlotAndUnbox : public MUnaryInstruction,
|
|||
if (mode_ == MUnbox::Fallible) {
|
||||
setGuard();
|
||||
}
|
||||
setBailoutKind(BailoutKind::UnboxFolding);
|
||||
}
|
||||
|
||||
public:
|
||||
|
|
Загрузка…
Ссылка в новой задаче