Commit 0051f474 authored by Ryan Hunt's avatar Ryan Hunt
Browse files

Bug 1574865 - Wasm: Allow stackmaps that are indexed at an x86 indirect call...

Bug 1574865 - Wasm: Allow stackmaps that are indexed at an x86 indirect call instruction with any register. r=jseward

Cranelift fails this assertion and it's not clear to me that there is any restriction inside
Cranelift that would limit the set of registers we'd need to check here.

Differential Revision: https://phabricator.services.mozilla.com/D58887

--HG--
extra : moz-landing-system : lando
parent eedd7642
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -13004,7 +13004,7 @@ bool js::wasm::IsValidStackMapKey(bool debugEnabled, const uint8_t* nextPC) {
#  if defined(JS_CODEGEN_X64) || defined(JS_CODEGEN_X86)
  const uint8_t* insn = nextPC;
  return (insn[-2] == 0x0F && insn[-1] == 0x0B) ||           // ud2
         (insn[-2] == 0xFF && insn[-1] == 0xD0) ||  // call *%{rax,eax}
         (insn[-2] == 0xFF && (insn[-1] & 0xF8) == 0xD0) ||  // call *%r_
         insn[-5] == 0xE8 ||                                 // call simm32
         (debugEnabled && insn[-5] == 0x0F && insn[-4] == 0x1F &&
          insn[-3] == 0x44 && insn[-2] == 0x00 &&