diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-08-14 09:21:48.792442811 -0600
+++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-08-14 09:21:48.792442811 -0600
@@ -225,7 +225,7 @@ macro doCallToJavaScript(makeCall)
storep 0, ArgumentCount[cfr]
storep vm, Callee[cfr]
loadp VM::topCallFrame[vm], temp2
- storep temp2, ScopeChain[cfr]
+ storep temp2, ScopeChain + PayloadOffset[cfr]
storep 1, CodeBlock[cfr]
if X86
loadp 28[sp], previousPC
@@ -324,7 +324,7 @@ macro doCallToJavaScript(makeCall)
.calleeFramePopped:
loadp Callee[cfr], temp3 # VM
- loadp ScopeChain[cfr], temp4 # previous topCallFrame
+ loadp ScopeChain + PayloadOffset[cfr], temp4 # previous topCallFrame
storep temp4, VM::topCallFrame[temp3]
callToJavaScriptEpilogue()
@@ -383,10 +383,10 @@ _handleUncaughtException:
# Check if we need to pop to the sentinel frame and do the necessary clean up for
# returning to the caller C frame.
bpeq CodeBlock[cfr], 1, .handleUncaughtExceptionAlreadyIsSentinel
- loadp CallerFrame + PayloadOffset[cfr], cfr
+ loadp CallerFrame[cfr], cfr
.handleUncaughtExceptionAlreadyIsSentinel:
- loadp Callee + PayloadOffset[cfr], t3 # VM
+ loadp Callee[cfr], t3 # VM
loadp ScopeChain + PayloadOffset[cfr], t5 # previous topCallFrame
storep t5, VM::topCallFrame[t3]
@@ -664,7 +664,7 @@ macro functionArityCheck(doneLabel, slow
end
macro branchIfException(label)
- loadp ScopeChain[cfr], t3
+ loadp ScopeChain + PayloadOffset[cfr], t3
andp MarkedBlockMask, t3
loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException
@@ -2110,7 +2110,7 @@ macro nativeCallTrampoline(executableOff
loadp JSFunction::m_executable[t1], t1
checkStackPointerAlignment(t3, 0xdead0001)
call executableOffsetToFunction[t1]
- loadp ScopeChain[cfr], t3
+ loadp ScopeChain + PayloadOffset[cfr], t3
andp MarkedBlockMask, t3
loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
addp 8, sp
@@ -2133,7 +2133,7 @@ macro nativeCallTrampoline(executableOff
else
call executableOffsetToFunction[t1]
end
- loadp ScopeChain[cfr], t3
+ loadp ScopeChain + PayloadOffset[cfr], t3
andp MarkedBlockMask, t3
loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3
addp 8, sp
@@ -2176,7 +2176,7 @@ macro resolveScope()
addi 1, t2
.resolveScopeAfterActivationCheck:
- loadp ScopeChain[cfr], t0
+ loadp ScopeChain + PayloadOffset[cfr], t0
btiz t2, .resolveScopeLoopEnd
.resolveScopeLoop:
@@ -2235,7 +2235,7 @@ _llint_op_resolve_scope:
macro loadWithStructureCheck(operand, slowPath)
loadisFromInstruction(operand, t0)
- loadp [cfr, t0, 8], t0
+ loadp PayloadOffset[cfr, t0, 8], t0
loadpFromInstruction(5, t1)
bpneq JSCell::m_structureID[t0], t1, slowPath
end
diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-08-14 23:57:06.193271648 -0600
+++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-08-15 00:00:45.613943623 -0600
@@ -2114,7 +2114,7 @@ macro loadWithStructureCheck(operand, sl
end
macro getProperty()
- loadisFromInstruction(6, t1)
+ loadpFromInstruction(6, t1)
loadPropertyAtVariableOffset(t1, t0, t2)
valueProfile(t2, 7, t0)
loadisFromInstruction(1, t0)
@@ -2131,7 +2131,7 @@ end
macro getClosureVar()
loadp JSVariableObject::m_registers[t0], t0
- loadisFromInstruction(6, t1)
+ loadpFromInstruction(6, t1)
loadq [t0, t1, 8], t0
valueProfile(t0, 7, t1)
loadisFromInstruction(1, t1)
@@ -2188,7 +2188,7 @@ _llint_op_get_from_scope:
macro putProperty()
loadisFromInstruction(3, t1)
loadConstantOrVariable(t1, t2)
- loadisFromInstruction(6, t1)
+ loadpFromInstruction(6, t1)
storePropertyAtVariableOffset(t1, t0, t2)
end
@@ -2205,7 +2205,7 @@ macro putClosureVar()
loadisFromInstruction(3, t1)
loadConstantOrVariable(t1, t2)
loadp JSVariableObject::m_registers[t0], t0
- loadisFromInstruction(6, t1)
+ loadpFromInstruction(6, t1)
storeq t2, [t0, t1, 8]
end
diff -up webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
--- webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-08-06 23:57:04.000000000 -0600
+++ webkitgtk-2.5.2/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-08-14 05:33:05.980418193 -0600
@@ -1396,7 +1396,7 @@ static JSValue getFromScopeCommon(ExecSt
{
ConcurrentJITLocker locker(codeBlock->m_lock);
pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), structure);
- pc[6].u.operand = slot.cachedOffset();
+ pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
}
structure->startWatchingPropertyForReplacements(vm, slot.cachedOffset());
}
diff -up webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h.cloop_fix webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h
--- webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h.cloop_fix 2014-08-14 09:28:19.073638043 -0600
+++ webkitgtk-2.5.2/Source/JavaScriptCore/runtime/CommonSlowPaths.h 2014-08-14 09:27:17.033448046 -0600
@@ -115,7 +115,7 @@ inline void tryCachePutToScopeGlobal(
ConcurrentJITLocker locker(codeBlock->m_lock);
pc[5].u.structure.set(exec->vm(), codeBlock->ownerExecutable(), scope->structure());
- pc[6].u.operand = slot.cachedOffset();
+ pc[6].u.pointer = reinterpret_cast<void*>(slot.cachedOffset());
}
} // namespace CommonSlowPaths