Title: [157588] trunk/Source/_javascript_Core
Revision
157588
Author
[email protected]
Date
2013-10-17 12:22:27 -0700 (Thu, 17 Oct 2013)

Log Message

Eliminate all ASSERT references to OBJECT_OFFSETOF(struct JITStackFrame,...) in JITStubsXXX.h.
https://bugs.webkit.org/show_bug.cgi?id=122979.

Reviewed by Michael Saboff.

* jit/JITStubs.cpp:
* jit/JITStubs.h:
* jit/JITStubsARM.h:
* jit/JITStubsARM64.h:
* jit/JITStubsARMv7.h:
* jit/JITStubsMIPS.h:
* jit/JITStubsSH4.h:
* jit/JITStubsX86.h:
* jit/JITStubsX86_64.h:
* runtime/VM.cpp:
(JSC::VM::VM):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (157587 => 157588)


--- trunk/Source/_javascript_Core/ChangeLog	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/ChangeLog	2013-10-17 19:22:27 UTC (rev 157588)
@@ -1,3 +1,22 @@
+2013-10-17  Mark Lam  <[email protected]>
+
+        Eliminate all ASSERT references to OBJECT_OFFSETOF(struct JITStackFrame,...) in JITStubsXXX.h.
+        https://bugs.webkit.org/show_bug.cgi?id=122979.
+
+        Reviewed by Michael Saboff.
+
+        * jit/JITStubs.cpp:
+        * jit/JITStubs.h:
+        * jit/JITStubsARM.h:
+        * jit/JITStubsARM64.h:
+        * jit/JITStubsARMv7.h:
+        * jit/JITStubsMIPS.h:
+        * jit/JITStubsSH4.h:
+        * jit/JITStubsX86.h:
+        * jit/JITStubsX86_64.h:
+        * runtime/VM.cpp:
+        (JSC::VM::VM):
+
 2013-10-17  Michael Saboff  <[email protected]>
 
         Remove saving callFrameRegister to JITStackFrame in JITCompiler::compileFunction()

Modified: trunk/Source/_javascript_Core/jit/JITStubs.cpp (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubs.cpp	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubs.cpp	2013-10-17 19:22:27 UTC (rev 157588)
@@ -109,24 +109,6 @@
     #define CTI_SAMPLER 0
 #endif
 
-void performPlatformSpecificJITAssertions(VM* vm)
-{
-    if (!vm->canUseJIT())
-        return;
-
-#if CPU(ARM_THUMB2)
-    performARMv7JITAssertions();
-#elif CPU(ARM64)
-    performARM64JITAssertions();
-#elif CPU(ARM_TRADITIONAL)
-    performARMJITAssertions();
-#elif CPU(MIPS)
-    performMIPSJITAssertions();
-#elif CPU(SH4)
-    performSH4JITAssertions();
-#endif
-}
-
 #if USE(JSVALUE32_64)
 EncodedExceptionHandler JIT_STUB cti_vm_handle_exception(CallFrame* callFrame)
 {

Modified: trunk/Source/_javascript_Core/jit/JITStubs.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubs.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubs.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -351,8 +351,6 @@
 extern "C" void ctiMasmProbeTrampoline();
 #endif
 
-void performPlatformSpecificJITAssertions(VM*);
-
 extern "C" {
 
 #if USE(JSVALUE32_64)

Modified: trunk/Source/_javascript_Core/jit/JITStubsARM.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsARM.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsARM.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -476,13 +476,6 @@
 */
 #endif // COMPILER(MSVC)
 
-
-static void performARMJITAssertions()
-{
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, thunkReturnAddress) == THUNK_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR4) == PRESERVEDR4_OFFSET);
-}
-
 } // namespace JSC
 
 #endif // JITStubsARM_h

Modified: trunk/Source/_javascript_Core/jit/JITStubsARM64.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsARM64.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsARM64.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -148,27 +148,6 @@
 
 #endif // COMPILER(GCC)
 
-static void performARM64JITAssertions()
-{
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, thunkReturnAddress) == THUNK_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedReturnAddress) == PRESERVED_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX19) == PRESERVED_X19_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX20) == PRESERVED_X20_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX21) == PRESERVED_X21_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX22) == PRESERVED_X22_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX23) == PRESERVED_X23_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX24) == PRESERVED_X24_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX25) == PRESERVED_X25_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX26) == PRESERVED_X26_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX27) == PRESERVED_X27_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedX28) == PRESERVED_X28_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, stack) == REGISTER_FILE_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, callFrame) == CALLFRAME_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, enabledProfilerReference) == PROFILER_REFERENCE_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, vm) == VM_OFFSET);
-    ASSERT(sizeof(struct JITStackFrame) == SIZEOF_JITSTACKFRAME);
-}
-
 } // namespace JSC
 
 #endif // JITStubsARM64_h

Modified: trunk/Source/_javascript_Core/jit/JITStubsARMv7.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsARMv7.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsARMv7.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -534,29 +534,6 @@
 
 #endif // COMPILER(RVCT)
 
-
-static void performARMv7JITAssertions()
-{
-    // Unfortunate the arm compiler does not like the use of offsetof on JITStackFrame (since it contains non POD types),
-    // and the OBJECT_OFFSETOF macro does not appear constantish enough for it to be happy with its use in COMPILE_ASSERT
-    // macros.
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedReturnAddress) == PRESERVED_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR4) == PRESERVED_R4_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR5) == PRESERVED_R5_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR6) == PRESERVED_R6_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR7) == PRESERVED_R7_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR8) == PRESERVED_R8_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR9) == PRESERVED_R9_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR10) == PRESERVED_R10_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedR11) == PRESERVED_R11_OFFSET);
-
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, stack) == REGISTER_FILE_OFFSET);
-    // The fifth argument is the first item already on the stack.
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, unused1) == FIRST_STACK_ARGUMENT);
-
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, thunkReturnAddress) == THUNK_RETURN_ADDRESS_OFFSET);
-}
-
 } // namespace JSC
 
 #endif // JITStubsARMv7_h

Modified: trunk/Source/_javascript_Core/jit/JITStubsMIPS.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsMIPS.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsMIPS.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -206,19 +206,6 @@
 
 #endif // WTF_MIPS_PIC
 
-
-static void performMIPSJITAssertions()
-{
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedGP) == PRESERVED_GP_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedS0) == PRESERVED_S0_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedS1) == PRESERVED_S1_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedS2) == PRESERVED_S2_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, preservedReturnAddress) == PRESERVED_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, thunkReturnAddress) == THUNK_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, stack) == REGISTER_FILE_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, vm) == VM_OFFSET);
-}
-
 } // namespace JSC
 
 #endif // JITStubsMIPS_h

Modified: trunk/Source/_javascript_Core/jit/JITStubsSH4.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsSH4.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsSH4.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -141,12 +141,6 @@
     ); \
     rtype JITStubThunked_##op(STUB_ARGS_DECLARATION)
 
-static void performSH4JITAssertions()
-{
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, thunkReturnAddress) == THUNK_RETURN_ADDRESS_OFFSET);
-    ASSERT(OBJECT_OFFSETOF(struct JITStackFrame, savedR8) == SAVED_R8_OFFSET);
-}
-
 } // namespace JSC
 
 #endif // JITStubsSH4_h

Modified: trunk/Source/_javascript_Core/jit/JITStubsX86.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsX86.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsX86.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -45,13 +45,6 @@
 
 #if COMPILER(GCC)
 
-// These ASSERTs remind you that, if you change the layout of JITStackFrame, you
-// need to change the assembly trampolines below to match.
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) % 16 == 0x0, JITStackFrame_maintains_16byte_stack_alignment);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) == 0x3c, JITStackFrame_stub_argument_space_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, JITStackFrame_callFrame_offset_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x50, JITStackFrame_code_offset_matches_ctiTrampoline);
-
 asm (
 ".text\n"
 ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
@@ -255,13 +248,6 @@
 
 #if COMPILER(MSVC)
 
-// These ASSERTs remind you that, if you change the layout of JITStackFrame, you
-// need to change the assembly trampolines below to match.
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) % 16 == 0x0, JITStackFrame_maintains_16byte_stack_alignment);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, savedEBX) == 0x3c, JITStackFrame_stub_argument_space_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, JITStackFrame_callFrame_offset_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x50, JITStackFrame_code_offset_matches_ctiTrampoline);
-
 extern "C" {
 
     __declspec(naked) EncodedJSValue ctiTrampoline(void* code, JSStack*, CallFrame*, void* /*unused1*/, void* /*unused2*/, VM*)

Modified: trunk/Source/_javascript_Core/jit/JITStubsX86_64.h (157587 => 157588)


--- trunk/Source/_javascript_Core/jit/JITStubsX86_64.h	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/jit/JITStubsX86_64.h	2013-10-17 19:22:27 UTC (rev 157588)
@@ -45,12 +45,6 @@
 
 #if COMPILER(GCC)
 
-// These ASSERTs remind you that, if you change the layout of JITStackFrame, you
-// need to change the assembly trampolines below to match.
-COMPILE_ASSERT(offsetof(struct JITStackFrame, callFrame) == 0x58, JITStackFrame_callFrame_offset_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) == 0x48, JITStackFrame_code_offset_matches_ctiTrampoline);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) == 0x78, JITStackFrame_stub_argument_space_matches_ctiTrampoline);
-
 asm (
 ".text\n"
 ".globl " SYMBOL_STRING(ctiTrampoline) "\n"
@@ -281,15 +275,6 @@
 
 #endif // COMPILER(GCC)
 
-#if COMPILER(MSVC)
-
-// These ASSERTs remind you that, if you change the layout of JITStackFrame, you
-// need to change the assembly trampolines in JITStubsMSVC64.asm to match.
-COMPILE_ASSERT(offsetof(struct JITStackFrame, code) % 16 == 0x0, JITStackFrame_maintains_16byte_stack_alignment);
-COMPILE_ASSERT(offsetof(struct JITStackFrame, savedRBX) == 0x58, JITStackFrame_stub_argument_space_matches_ctiTrampoline);
-
-#endif // COMPILER(MSVC)
-
 } // namespace JSC
 
 #endif // JITStubsX86_64_h

Modified: trunk/Source/_javascript_Core/runtime/VM.cpp (157587 => 157588)


--- trunk/Source/_javascript_Core/runtime/VM.cpp	2013-10-17 19:15:20 UTC (rev 157587)
+++ trunk/Source/_javascript_Core/runtime/VM.cpp	2013-10-17 19:22:27 UTC (rev 157588)
@@ -253,7 +253,6 @@
 
 #if ENABLE(JIT)
     jitStubs = adoptPtr(new JITThunks());
-    performPlatformSpecificJITAssertions(this);
 #endif
 
 #if ENABLE(FTL_JIT)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to