Title: [237728] trunk/Source/_javascript_Core
- Revision
- 237728
- Author
- [email protected]
- Date
- 2018-11-02 03:46:34 -0700 (Fri, 02 Nov 2018)
Log Message
REGRESSION(r237547): Exception handlers should be aware of wide opcodes when JIT is disabled
https://bugs.webkit.org/show_bug.cgi?id=191175
Reviewed by Keith Miller.
https://bugs.webkit.org/show_bug.cgi?id=191108 did not handle the case where JIT is not enabled
* jit/JITExceptions.cpp:
(JSC::genericUnwind):
* llint/LLIntData.h:
(JSC::LLInt::getWideCodePtr):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (237727 => 237728)
--- trunk/Source/_javascript_Core/ChangeLog 2018-11-02 10:04:22 UTC (rev 237727)
+++ trunk/Source/_javascript_Core/ChangeLog 2018-11-02 10:46:34 UTC (rev 237728)
@@ -1,3 +1,17 @@
+2018-11-02 Tadeu Zagallo <[email protected]>
+
+ REGRESSION(r237547): Exception handlers should be aware of wide opcodes when JIT is disabled
+ https://bugs.webkit.org/show_bug.cgi?id=191175
+
+ Reviewed by Keith Miller.
+
+ https://bugs.webkit.org/show_bug.cgi?id=191108 did not handle the case where JIT is not enabled
+
+ * jit/JITExceptions.cpp:
+ (JSC::genericUnwind):
+ * llint/LLIntData.h:
+ (JSC::LLInt::getWideCodePtr):
+
2018-11-01 Fujii Hironori <[email protected]>
Rename <wtf/unicode/UTF8.h> to <wtf/unicode/UTF8Conversion.h> in order to avoid conflicting with ICU's unicode/utf8.h
Modified: trunk/Source/_javascript_Core/jit/JITExceptions.cpp (237727 => 237728)
--- trunk/Source/_javascript_Core/jit/JITExceptions.cpp 2018-11-02 10:04:22 UTC (rev 237727)
+++ trunk/Source/_javascript_Core/jit/JITExceptions.cpp 2018-11-02 10:46:34 UTC (rev 237728)
@@ -73,7 +73,9 @@
#if ENABLE(JIT)
catchRoutine = handler->nativeCode.executableAddress();
#else
- catchRoutine = LLInt::getCodePtr(catchPCForInterpreter->opcodeID());
+ catchRoutine = catchPCForInterpreter->isWide()
+ ? LLInt::getWideCodePtr(catchPCForInterpreter->opcodeID())
+ : LLInt::getCodePtr(catchPCForInterpreter->opcodeID());
#endif
} else
catchRoutine = LLInt::getCodePtr<ExceptionHandlerPtrTag>(handleUncaughtException).executableAddress();
Modified: trunk/Source/_javascript_Core/llint/LLIntData.h (237727 => 237728)
--- trunk/Source/_javascript_Core/llint/LLIntData.h 2018-11-02 10:04:22 UTC (rev 237727)
+++ trunk/Source/_javascript_Core/llint/LLIntData.h 2018-11-02 10:46:34 UTC (rev 237728)
@@ -140,6 +140,11 @@
{
return reinterpret_cast<void*>(getOpcode(id));
}
+
+ALWAYS_INLINE void* getWideCodePtr(OpcodeID id)
+{
+ return reinterpret_cast<void*>(getOpcodeWide(id));
+}
#endif
ALWAYS_INLINE void* getCodePtr(JSC::EncodedJSValue glueHelper())
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes