Title: [157481] trunk/Source/_javascript_Core
- Revision
- 157481
- Author
- [email protected]
- Date
- 2013-10-15 20:10:46 -0700 (Tue, 15 Oct 2013)
Log Message
Get rid of the UNINTERRUPTED_SEQUENCE thing
https://bugs.webkit.org/show_bug.cgi?id=122876
Reviewed by Mark Hahnenberg.
It doesn't make sense anymore. We now use the DFG's IC logic, which never needed that.
Moreover, we should resist the temptation to bring anything like this back. We don't
want to have inline caches that only work if the assembler lays out code in a specific
predetermined way.
* jit/JIT.h:
* jit/JITCall.cpp:
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (157480 => 157481)
--- trunk/Source/_javascript_Core/ChangeLog 2013-10-16 02:19:20 UTC (rev 157480)
+++ trunk/Source/_javascript_Core/ChangeLog 2013-10-16 03:10:46 UTC (rev 157481)
@@ -1,5 +1,24 @@
2013-10-15 Filip Pizlo <[email protected]>
+ Get rid of the UNINTERRUPTED_SEQUENCE thing
+ https://bugs.webkit.org/show_bug.cgi?id=122876
+
+ Reviewed by Mark Hahnenberg.
+
+ It doesn't make sense anymore. We now use the DFG's IC logic, which never needed that.
+
+ Moreover, we should resist the temptation to bring anything like this back. We don't
+ want to have inline caches that only work if the assembler lays out code in a specific
+ predetermined way.
+
+ * jit/JIT.h:
+ * jit/JITCall.cpp:
+ (JSC::JIT::compileOpCall):
+ * jit/JITCall32_64.cpp:
+ (JSC::JIT::compileOpCall):
+
+2013-10-15 Filip Pizlo <[email protected]>
+
Baseline JIT should use the DFG GetById IC
https://bugs.webkit.org/show_bug.cgi?id=122861
Modified: trunk/Source/_javascript_Core/jit/JIT.h (157480 => 157481)
--- trunk/Source/_javascript_Core/jit/JIT.h 2013-10-16 02:19:20 UTC (rev 157480)
+++ trunk/Source/_javascript_Core/jit/JIT.h 2013-10-16 03:10:46 UTC (rev 157481)
@@ -557,20 +557,6 @@
#endif // USE(JSVALUE32_64)
-#if (defined(ASSEMBLER_HAS_CONSTANT_POOL) && ASSEMBLER_HAS_CONSTANT_POOL)
-#define BEGIN_UNINTERRUPTED_SEQUENCE(name) do { beginUninterruptedSequence(name ## InstructionSpace, name ## ConstantSpace); } while (false)
-#define END_UNINTERRUPTED_SEQUENCE_FOR_PUT(name, dst) do { endUninterruptedSequence(name ## InstructionSpace, name ## ConstantSpace, dst); } while (false)
-#define END_UNINTERRUPTED_SEQUENCE(name) END_UNINTERRUPTED_SEQUENCE_FOR_PUT(name, 0)
-
- void beginUninterruptedSequence(int, int);
- void endUninterruptedSequence(int, int, int);
-
-#else
-#define BEGIN_UNINTERRUPTED_SEQUENCE(name)
-#define END_UNINTERRUPTED_SEQUENCE(name)
-#define END_UNINTERRUPTED_SEQUENCE_FOR_PUT(name, dst)
-#endif
-
void emit_compareAndJump(OpcodeID, int op1, int op2, unsigned target, RelationalCondition);
void emit_compareAndJumpSlow(int op1, int op2, unsigned target, DoubleCondition, size_t (JIT_OPERATION *operation)(ExecState*, EncodedJSValue, EncodedJSValue), bool invert, Vector<SlowCaseEntry>::iterator&);
Modified: trunk/Source/_javascript_Core/jit/JITCall.cpp (157480 => 157481)
--- trunk/Source/_javascript_Core/jit/JITCall.cpp 2013-10-16 02:19:20 UTC (rev 157480)
+++ trunk/Source/_javascript_Core/jit/JITCall.cpp 2013-10-16 03:10:46 UTC (rev 157481)
@@ -202,9 +202,7 @@
}
DataLabelPtr addressOfLinkedFunctionCheck;
- BEGIN_UNINTERRUPTED_SEQUENCE(sequenceOpCall);
Jump slowCase = branchPtrWithPatch(NotEqual, regT0, addressOfLinkedFunctionCheck, TrustedImmPtr(0));
- END_UNINTERRUPTED_SEQUENCE(sequenceOpCall);
addSlowCase(slowCase);
ASSERT(m_callStructureStubCompilationInfo.size() == callLinkInfoIndex);
Modified: trunk/Source/_javascript_Core/jit/JITCall32_64.cpp (157480 => 157481)
--- trunk/Source/_javascript_Core/jit/JITCall32_64.cpp 2013-10-16 02:19:20 UTC (rev 157480)
+++ trunk/Source/_javascript_Core/jit/JITCall32_64.cpp 2013-10-16 03:10:46 UTC (rev 157481)
@@ -273,9 +273,7 @@
}
DataLabelPtr addressOfLinkedFunctionCheck;
- BEGIN_UNINTERRUPTED_SEQUENCE(sequenceOpCall);
Jump slowCase = branchPtrWithPatch(NotEqual, regT0, addressOfLinkedFunctionCheck, TrustedImmPtr(0));
- END_UNINTERRUPTED_SEQUENCE(sequenceOpCall);
addSlowCase(slowCase);
addSlowCase(branch32(NotEqual, regT1, TrustedImm32(JSValue::CellTag)));
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes