1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
commit fef467b5a93d
Author: Luke Wagner <luke@mozilla.com>
Date: Thu Mar 22 10:28:13 2018 -0500
Bug 1447359 - Baldr: add AutoForbidPools in a few missing places (r=lth)
--HG--
extra : rebase_source : 75f1909deb352391529ce5e58a89e5f9cfeb3662
---
js/src/jit/arm64/MacroAssembler-arm64-inl.h | 1 +
js/src/jit/arm64/MacroAssembler-arm64.cpp | 2 ++
2 files changed, 3 insertions(+)
diff --git js/src/jit/arm64/MacroAssembler-arm64-inl.h js/src/jit/arm64/MacroAssembler-arm64-inl.h
index 7061cbfd93ebb..190442f7afa0a 100644
--- js/src/jit/arm64/MacroAssembler-arm64-inl.h
+++ js/src/jit/arm64/MacroAssembler-arm64-inl.h
@@ -359,6 +359,7 @@ MacroAssembler::sub32FromStackPtrWithPatch(Register dest)
{
vixl::UseScratchRegisterScope temps(this);
const ARMRegister scratch = temps.AcquireX();
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 3);
CodeOffset offs = CodeOffset(currentOffset());
movz(scratch, 0, 0);
movk(scratch, 0, 16);
diff --git js/src/jit/arm64/MacroAssembler-arm64.cpp js/src/jit/arm64/MacroAssembler-arm64.cpp
index 7b599b7e9d610..4e8fdb6a67019 100644
--- js/src/jit/arm64/MacroAssembler-arm64.cpp
+++ js/src/jit/arm64/MacroAssembler-arm64.cpp
@@ -707,6 +707,7 @@ MacroAssembler::patchFarJump(CodeOffset farJump, uint32_t targetOffset)
CodeOffset
MacroAssembler::nopPatchableToCall(const wasm::CallSiteDesc& desc)
{
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 1);
CodeOffset offset(currentOffset());
Nop();
append(desc, CodeOffset(currentOffset()));
@@ -1077,6 +1078,7 @@ MacroAssembler::comment(const char* msg)
CodeOffset
MacroAssembler::wasmTrapInstruction()
{
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 1);
CodeOffset offs(currentOffset());
Unreachable();
return offs;
|