Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 403938 Details for
Bug 546840
net-libs/webkit-gtk: sandbox:stop caught signal 2 while compiling
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
fix-cloop.patch
fix-cloop.patch (text/plain), 9.63 KB, created by
Gilles Dartiguelongue (RETIRED)
on 2015-05-25 14:40:31 UTC
(
hide
)
Description:
fix-cloop.patch
Filename:
MIME Type:
Creator:
Gilles Dartiguelongue (RETIRED)
Created:
2015-05-25 14:40:31 UTC
Size:
9.63 KB
patch
obsolete
>From: Tomas Popela <tpopela@redhat.com> >Subject: Fix crash on powerpc >Bug-Debian: https://bugs.debian.org/771841 >Origin: http://pkgs.fedoraproject.org/cgit/webkitgtk3.git/tree/ >Index: webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >+++ webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >@@ -2002,7 +2002,7 @@ _llint_op_next_pname: > loadi 20[PC], t2 > loadi PayloadOffset[cfr, t2, 8], t2 > loadp JSPropertyNameIterator::m_jsStrings[t2], t3 >- loadi [t3, t0, 8], t3 >+ loadi PayloadOffset[t3, t0, 8], t3 > addi 1, t0 > storei t0, PayloadOffset[cfr, t1, 8] > loadi 4[PC], t1 >Index: webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter.asm >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/llint/LowLevelInterpreter.asm >+++ webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter.asm >@@ -299,13 +299,13 @@ macro assertNotConstant(index) > end > > macro functionForCallCodeBlockGetter(targetRegister) >- loadp Callee[cfr], targetRegister >+ loadp Callee + PayloadOffset[cfr], targetRegister > loadp JSFunction::m_executable[targetRegister], targetRegister > loadp FunctionExecutable::m_codeBlockForCall[targetRegister], targetRegister > end > > macro functionForConstructCodeBlockGetter(targetRegister) >- loadp Callee[cfr], targetRegister >+ loadp Callee + PayloadOffset[cfr], targetRegister > loadp JSFunction::m_executable[targetRegister], targetRegister > loadp FunctionExecutable::m_codeBlockForConstruct[targetRegister], targetRegister > end >Index: webkitgtk/Source/JavaScriptCore/interpreter/ProtoCallFrame.h >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/interpreter/ProtoCallFrame.h >+++ webkitgtk/Source/JavaScriptCore/interpreter/ProtoCallFrame.h >@@ -36,7 +36,7 @@ struct ProtoCallFrame { > Register calleeValue; > Register argCountAndCodeOriginValue; > Register thisArg; >- size_t paddedArgCount; >+ uint32_t paddedArgCount; > JSValue *args; > > void init(CodeBlock*, JSScope*, JSObject*, JSValue, int, JSValue* otherArgs = 0); >@@ -53,7 +53,7 @@ struct ProtoCallFrame { > int argumentCountIncludingThis() const { return argCountAndCodeOriginValue.payload(); } > int argumentCount() const { return argumentCountIncludingThis() - 1; } > void setArgumentCountIncludingThis(int count) { argCountAndCodeOriginValue.payload() = count; } >- void setPaddedArgsCount(size_t argCount) { paddedArgCount = argCount; } >+ void setPaddedArgsCount(uint32_t argCount) { paddedArgCount = argCount; } > > void clearCurrentVPC() { argCountAndCodeOriginValue.tag() = 0; } > >Index: webkitgtk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp >+++ webkitgtk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp >@@ -1354,7 +1354,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_ > CodeBlock* codeBlock = exec->codeBlock(); > 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()); > } > } > >@@ -1381,7 +1381,7 @@ LLINT_SLOW_PATH_DECL(slow_path_put_to_sc > if (slot.isCacheable() && slot.base() == scope && scope->structure()->propertyAccessesAreCacheable()) { > 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()); > } > } > >Index: webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >+++ webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm >@@ -282,7 +282,7 @@ macro doCallToJavaScript(makeCall, doRet > storep temp3, CodeBlock+4[cfr, temp1, 8] > btinz temp1, .copyHeaderLoop > >- loadi ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 >+ loadi PayloadOffset + ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 > subi 1, temp2 > loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp3 > subi 1, temp3 >@@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet > > .calleeFramePopped: > loadp Callee[cfr], temp3 # VM.topCallFrame >- loadp ScopeChain[cfr], temp4 >+ loadp ScopeChain + PayloadOffset[cfr], temp4 > storep temp4, [temp3] > > doReturn(extraStackSpace) >@@ -598,7 +598,7 @@ 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 >@@ -2039,7 +2039,7 @@ _llint_op_catch: > # the interpreter's throw trampoline (see _llint_throw_trampoline). > # The throwing code must have known that we were throwing to the interpreter, > # and have set VM::targetInterpreterPCForThrow. >- loadp ScopeChain[cfr], t3 >+ loadp ScopeChain + PayloadOffset[cfr], t3 > andp MarkedBlockMask, t3 > loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 > loadp VM::callFrameForThrow[t3], cfr >@@ -2159,7 +2159,7 @@ macro nativeCallTrampoline(executableOff > andp MarkedBlockMask, t3 > loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 > elsif C_LOOP >- loadp ScopeChain[cfr], t3 >+ loadp ScopeChain + PayloadOffset[cfr], t3 > andp MarkedBlockMask, t3 > loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 > storep cfr, VM::topCallFrame[t3] >@@ -2172,7 +2172,7 @@ macro nativeCallTrampoline(executableOff > move t2, cfr > cloopCallNative executableOffsetToFunction[t1] > restoreReturnAddressBeforeReturn(t3) >- loadp ScopeChain[cfr], t3 >+ loadp ScopeChain + PayloadOffset[cfr], t3 > andp MarkedBlockMask, t3 > loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 > else >@@ -2212,7 +2212,7 @@ macro resolveScope() > addi 1, t2 > > .resolveScopeAfterActivationCheck: >- loadp ScopeChain[cfr], t0 >+ loadp ScopeChain + PayloadOffset[cfr], t0 > btiz t2, .resolveScopeLoopEnd > > .resolveScopeLoop: >@@ -2271,13 +2271,13 @@ _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_structure[t0], t1, slowPath > end > > macro getProperty() >- loadisFromInstruction(6, t3) >+ loadpFromInstruction(6, t3) > loadPropertyAtVariableOffset(t3, t0, t1, t2) > valueProfile(t1, t2, 28, t0) > loadisFromInstruction(1, t0) >@@ -2297,7 +2297,7 @@ end > > macro getClosureVar() > loadp JSVariableObject::m_registers[t0], t0 >- loadisFromInstruction(6, t3) >+ loadpFromInstruction(6, t3) > loadp TagOffset[t0, t3, 8], t1 > loadp PayloadOffset[t0, t3, 8], t2 > valueProfile(t1, t2, 28, t0) >@@ -2356,7 +2356,7 @@ _llint_op_get_from_scope: > macro putProperty() > loadisFromInstruction(3, t1) > loadConstantOrVariable(t1, t2, t3) >- loadisFromInstruction(6, t1) >+ loadpFromInstruction(6, t1) > storePropertyAtVariableOffset(t1, t0, t2, t3) > end > >@@ -2374,7 +2374,7 @@ macro putClosureVar() > loadisFromInstruction(3, t1) > loadConstantOrVariable(t1, t2, t3) > loadp JSVariableObject::m_registers[t0], t0 >- loadisFromInstruction(6, t1) >+ loadpFromInstruction(6, t1) > storei t2, TagOffset[t0, t1, 8] > storei t3, PayloadOffset[t0, t1, 8] > end >Index: webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm >=================================================================== >--- webkitgtk.orig/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm >+++ webkitgtk/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm >@@ -171,7 +171,7 @@ macro doCallToJavaScript(makeCall, doRet > storep temp3, CodeBlock[cfr, temp1, 8] > btinz temp1, .copyHeaderLoop > >- loadi ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 >+ loadi PayloadOffset + ProtoCallFrame::argCountAndCodeOriginValue[protoCallFrame], temp2 > subi 1, temp2 > loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp3 > subi 1, temp3 >@@ -2047,7 +2047,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) >@@ -2064,7 +2064,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) >@@ -2121,7 +2121,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 > >@@ -2138,7 +2138,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 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 546840
:
401394
|
401396
| 403938