diff options
Diffstat (limited to 'src/macro-assembler-interface.h')
-rw-r--r-- | src/macro-assembler-interface.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/macro-assembler-interface.h b/src/macro-assembler-interface.h index 86c74d30..0d4d0780 100644 --- a/src/macro-assembler-interface.h +++ b/src/macro-assembler-interface.h @@ -38,12 +38,19 @@ class MacroAssemblerInterface { virtual ~MacroAssemblerInterface() {} virtual bool AllowMacroInstructions() const = 0; + virtual bool ArePoolsBlocked() const = 0; + + protected: virtual void SetAllowMacroInstructions(bool allow) = 0; virtual void BlockPools() = 0; virtual void ReleasePools() = 0; - virtual bool ArePoolsBlocked() const = 0; virtual void EnsureEmitPoolsFor(size_t size) = 0; + + // The following scopes need access to the above method in order to implement + // pool blocking and temporarily disable the macro-assembler. + friend class ExactAssemblyScope; + friend class EmissionCheckScope; }; } // namespace vixl |