Changeset 268077 in webkit for trunk/Source/JavaScriptCore/ChangeLog
- Timestamp:
- Oct 6, 2020, 3:04:36 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r268037 r268077 1 2020-10-05 Yusuke Suzuki <[email protected]> 2 3 [JSC] More consistent PtrTagging for code types 4 https://bugs.webkit.org/show_bug.cgi?id=217362 5 6 Reviewed by Mark Lam. 7 8 1. Avoid tagging JIT code with OperationPtrTag. OperationPtrTag should be used only for operations (C++ code). 9 2. Avoid mixing JIT and C++ code for the same tagged pointers. For exception trampoline, in JIT mode, we should have 10 JIT trampoline thunk which goes to LLInt bytecode handler code. 11 12 * bytecode/BytecodeList.rb: 13 * bytecode/CodeBlock.cpp: 14 (JSC::CodeBlock::finishCreation): 15 (JSC::CodeBlock::finalizeUnconditionally): 16 * dfg/DFGCapabilities.cpp: 17 (JSC::DFG::capabilityLevel): 18 * dfg/DFGJITCompiler.cpp: 19 (JSC::DFG::JITCompiler::compileExceptionHandlers): 20 * dfg/DFGSpeculativeJIT.cpp: 21 (JSC::DFG::SpeculativeJIT::compileMathIC): 22 * jit/ICStats.h: 23 * jit/JIT.cpp: 24 (JSC::JIT::compileWithoutLinking): 25 (JSC::JIT::link): 26 (JSC::JIT::privateCompileExceptionHandlers): 27 * jit/JIT.h: 28 (JSC::CallRecord::CallRecord): 29 * jit/JITCall.cpp: 30 (JSC::JIT::compileTailCall): 31 (JSC::JIT::compileOpCall): 32 (JSC::JIT::compileOpCallSlowCase): 33 * jit/JITCall32_64.cpp: 34 (JSC::JIT::compileOpCall): 35 (JSC::JIT::compileOpCallSlowCase): 36 * jit/JITExceptions.cpp: 37 (JSC::genericUnwind): 38 * jit/JITInlines.h: 39 (JSC::JIT::emitNakedNearCall): 40 (JSC::JIT::emitNakedNearTailCall): 41 (JSC::JIT::emitNakedCall): Deleted. 42 (JSC::JIT::emitNakedTailCall): Deleted. 43 * jit/JITPropertyAccess.cpp: 44 (JSC::JIT::privateCompilePutByVal): 45 (JSC::JIT::privateCompilePutPrivateNameWithCachedId): 46 (JSC::JIT::privateCompilePutByValWithCachedId): 47 * jit/SlowPathCall.h: 48 (JSC::JITSlowPathCall::call): 49 * llint/LLIntData.h: 50 (JSC::LLInt::getWide16CodeRef): 51 (JSC::LLInt::getWide32CodeRef): 52 (JSC::LLInt::getCodeFunctionPtr): 53 (JSC::LLInt::getWide16CodeFunctionPtr): 54 (JSC::LLInt::getWide32CodeFunctionPtr): 55 * llint/LLIntEntrypoint.cpp: 56 (JSC::LLInt::setFunctionEntrypoint): 57 (JSC::LLInt::setEvalEntrypoint): 58 (JSC::LLInt::setProgramEntrypoint): 59 (JSC::LLInt::setModuleProgramEntrypoint): 60 * llint/LLIntExceptions.cpp: 61 (JSC::LLInt::callToThrow): 62 (JSC::LLInt::handleUncaughtException): 63 (JSC::LLInt::catcher): 64 * llint/LLIntExceptions.h: 65 * llint/LLIntSlowPaths.cpp: 66 * llint/LLIntThunks.cpp: 67 (JSC::LLInt::generateThunkWithJumpTo): 68 (JSC::LLInt::functionForCallEntryThunk): 69 (JSC::LLInt::functionForConstructEntryThunk): 70 (JSC::LLInt::functionForCallArityCheckThunk): 71 (JSC::LLInt::functionForConstructArityCheckThunk): 72 (JSC::LLInt::evalEntryThunk): 73 (JSC::LLInt::programEntryThunk): 74 (JSC::LLInt::moduleProgramEntryThunk): 75 (JSC::LLInt::wasmFunctionEntryThunk): 76 (JSC::LLInt::callToThrowThunk): 77 (JSC::LLInt::handleUncaughtExceptionThunk): 78 (JSC::LLInt::catcherThunk): 79 * llint/LLIntThunks.h: 80 * llint/LowLevelInterpreter32_64.asm: 81 * llint/LowLevelInterpreter64.asm: 82 * runtime/SamplingProfiler.cpp: 83 (JSC::SamplingProfiler::processUnverifiedStackTraces): 84 * wasm/WasmOperations.cpp: 85 (JSC::Wasm::JSC_DEFINE_JIT_OPERATION): 86 1 87 2020-10-05 Ross Kirsling <[email protected]> 2 88
Note:
See TracChangeset
for help on using the changeset viewer.