From cf4a7fa44403bb3bae9c98afb80222d5e03798c5 Mon Sep 17 00:00:00 2001 From: Ulf Hermann Date: Mon, 6 May 2019 12:19:07 +0200 Subject: Remove the bootstrap code from assembler and JIT We don't build the assembler or the JIT in bootstrap mode. Change-Id: Idc3a56cc1e9cfba415bef9cba221c8a60ee75010 Reviewed-by: Simon Hausmann --- src/3rdparty/masm/assembler/ARM64Assembler.h | 7 +-- src/3rdparty/masm/assembler/ARMv7Assembler.h | 25 +------- .../masm/assembler/AbstractMacroAssembler.h | 14 ++--- src/3rdparty/masm/assembler/LinkBuffer.h | 6 +- src/3rdparty/masm/assembler/MacroAssembler.h | 14 +---- src/3rdparty/masm/assembler/MacroAssemblerARM64.h | 31 +--------- src/3rdparty/masm/assembler/MacroAssemblerARMv7.h | 71 +--------------------- src/3rdparty/masm/assembler/MacroAssemblerX86.h | 32 ---------- src/3rdparty/masm/assembler/MacroAssemblerX86_64.h | 27 -------- src/3rdparty/masm/assembler/X86Assembler.h | 41 ------------- 10 files changed, 19 insertions(+), 249 deletions(-) (limited to 'src/3rdparty/masm/assembler') diff --git a/src/3rdparty/masm/assembler/ARM64Assembler.h b/src/3rdparty/masm/assembler/ARM64Assembler.h index a9166e83a2..ca6b33d39a 100644 --- a/src/3rdparty/masm/assembler/ARM64Assembler.h +++ b/src/3rdparty/masm/assembler/ARM64Assembler.h @@ -26,7 +26,7 @@ #ifndef ARM64Assembler_h #define ARM64Assembler_h -#if ENABLE(ASSEMBLER) && (CPU(ARM64) || defined(V4_BOOTSTRAP)) +#if ENABLE(ASSEMBLER) && CPU(ARM64) #include "AssemblerBuffer.h" #include "AbstractMacroAssembler.h" @@ -3021,10 +3021,7 @@ public: static void cacheFlush(void* code, size_t size) { -#if defined(V4_BOOTSTRAP) - UNUSED_PARAM(code) - UNUSED_PARAM(size) -#elif OS(IOS) +#if OS(IOS) sys_cache_control(kCacheFunctionPrepareForExecution, code, size); #elif OS(LINUX) size_t page = pageSize(); diff --git a/src/3rdparty/masm/assembler/ARMv7Assembler.h b/src/3rdparty/masm/assembler/ARMv7Assembler.h index d57e5a7c78..f2e8dc1a1b 100644 --- a/src/3rdparty/masm/assembler/ARMv7Assembler.h +++ b/src/3rdparty/masm/assembler/ARMv7Assembler.h @@ -27,7 +27,7 @@ #ifndef ARMAssembler_h #define ARMAssembler_h -#if ENABLE(ASSEMBLER) && (CPU(ARM_THUMB2) || defined(V4_BOOTSTRAP)) +#if ENABLE(ASSEMBLER) && CPU(ARM_THUMB2) #include "AssemblerBuffer.h" #include "MacroAssemblerCodeRef.h" @@ -2166,7 +2166,6 @@ public: linkJumpAbsolute(location, to); } -#if !defined(V4_BOOTSTRAP) static void linkCall(void* code, AssemblerLabel from, void* to) { ASSERT(!(reinterpret_cast(code) & 1)); @@ -2175,14 +2174,12 @@ public: setPointer(reinterpret_cast(reinterpret_cast(code) + from.m_offset) - 1, to, false); } -#endif static void linkPointer(void* code, AssemblerLabel where, void* value) { setPointer(reinterpret_cast(code) + where.m_offset, value, false); } -#if !defined(V4_BOOTSTRAP) static void relinkJump(void* from, void* to) { ASSERT(!(reinterpret_cast(from) & 1)); @@ -2205,7 +2202,6 @@ public: { return readPointer(reinterpret_cast(from) - 1); } -#endif static void repatchInt32(void* where, int32_t value) { @@ -2234,7 +2230,6 @@ public: cacheFlush(location, sizeof(uint16_t) * 2); } -#if !defined(V4_BOOTSTRAP) static void repatchPointer(void* where, void* value) { ASSERT(!(reinterpret_cast(where) & 1)); @@ -2246,7 +2241,6 @@ public: { return reinterpret_cast(readInt32(where)); } -#endif static void replaceWithJump(void* instructionStart, void* to) { @@ -2321,7 +2315,7 @@ public: unsigned debugOffset() { return m_formatter.debugOffset(); } -#if OS(LINUX) && !defined(V4_BOOTSTRAP) +#if OS(LINUX) static inline void linuxPageFlush(uintptr_t begin, uintptr_t end) { asm volatile( @@ -2341,10 +2335,7 @@ public: static void cacheFlush(void* code, size_t size) { -#if defined(V4_BOOTSTRAP) - UNUSED_PARAM(code) - UNUSED_PARAM(size) -#elif OS(IOS) +#if OS(IOS) sys_cache_control(kCacheFunctionPrepareForExecution, code, size); #elif OS(LINUX) size_t page = pageSize(); @@ -2662,11 +2653,6 @@ private: static void linkBX(uint16_t* instruction, void* target) { -#if defined(V4_BOOTSTRAP) - UNUSED_PARAM(instruction); - UNUSED_PARAM(target); - RELEASE_ASSERT_NOT_REACHED(); -#else // FIMXE: this should be up in the MacroAssembler layer. :-( ASSERT(!(reinterpret_cast(instruction) & 1)); ASSERT(!(reinterpret_cast(target) & 1)); @@ -2679,7 +2665,6 @@ private: instruction[-3] = twoWordOp5i6Imm4Reg4EncodedImmFirst(OP_MOVT, hi16); instruction[-2] = twoWordOp5i6Imm4Reg4EncodedImmSecond(JUMP_TEMPORARY_REGISTER, hi16); instruction[-1] = OP_BX | (JUMP_TEMPORARY_REGISTER << 3); -#endif } void linkConditionalBX(Condition cond, uint16_t* instruction, void* target) @@ -2712,9 +2697,6 @@ private: instruction[-3] = OP_NOP_T2b; linkJumpT4(instruction, target); } else { -#if defined(V4_BOOTSTRAP) - RELEASE_ASSERT_NOT_REACHED(); -#else const uint16_t JUMP_TEMPORARY_REGISTER = ARMRegisters::ip; ARMThumbImmediate lo16 = ARMThumbImmediate::makeUInt16(static_cast(reinterpret_cast(target) + 1)); ARMThumbImmediate hi16 = ARMThumbImmediate::makeUInt16(static_cast(reinterpret_cast(target) >> 16)); @@ -2723,7 +2705,6 @@ private: instruction[-3] = twoWordOp5i6Imm4Reg4EncodedImmFirst(OP_MOVT, hi16); instruction[-2] = twoWordOp5i6Imm4Reg4EncodedImmSecond(JUMP_TEMPORARY_REGISTER, hi16); instruction[-1] = OP_BX | (JUMP_TEMPORARY_REGISTER << 3); -#endif } } diff --git a/src/3rdparty/masm/assembler/AbstractMacroAssembler.h b/src/3rdparty/masm/assembler/AbstractMacroAssembler.h index d0c1c4613e..14644a4193 100644 --- a/src/3rdparty/masm/assembler/AbstractMacroAssembler.h +++ b/src/3rdparty/masm/assembler/AbstractMacroAssembler.h @@ -66,7 +66,7 @@ public: typedef MacroAssemblerCodePtr CodePtr; typedef MacroAssemblerCodeRef CodeRef; -#if !CPU(ARM_THUMB2) && !CPU(ARM64) && !defined(V4_BOOTSTRAP) +#if !CPU(ARM_THUMB2) && !CPU(ARM64) class Jump; #endif @@ -328,7 +328,7 @@ public: friend class AbstractMacroAssembler; friend struct DFG::OSRExit; -#if CPU(ARM_THUMB2) || CPU(ARM64) || defined(V4_BOOTSTRAP) +#if CPU(ARM_THUMB2) || CPU(ARM64) using Jump = typename AssemblerType::template Jump