[webkitgtk3] Update to 2.3.2
Tomas Popela
tpopela at fedoraproject.org
Thu Dec 5 16:07:46 UTC 2013
commit 593b017c8fb5b5fb1b34bcb19d58d1a60bed7860
Author: Tomas Popela <tpopela at redhat.com>
Date: Thu Dec 5 17:07:29 2013 +0100
Update to 2.3.2
webkitgtk-2.1.1-yarr.patch | 12 --
webkitgtk-2.3.2-libatomic.patch | 19 ++
webkitgtk-2.3.2-no_jit_1.patch | 51 ++++++
webkitgtk-2.3.2-no_jit_2.patch | 32 ++++
webkitgtk-2.3.2-no_jit_3.patch | 349 +++++++++++++++++++++++++++++++++++++++
webkitgtk-2.3.2-no_jit_4.patch | 31 ++++
webkitgtk3.spec | 41 ++++-
7 files changed, 516 insertions(+), 19 deletions(-)
---
diff --git a/webkitgtk-2.3.2-libatomic.patch b/webkitgtk-2.3.2-libatomic.patch
new file mode 100644
index 0000000..307a812
--- /dev/null
+++ b/webkitgtk-2.3.2-libatomic.patch
@@ -0,0 +1,19 @@
+diff -up webkitgtk-2.3.2/Source/WTF/wtf/Atomics.h.libatomic webkitgtk-2.3.2/Source/WTF/wtf/Atomics.h
+--- webkitgtk-2.3.2/Source/WTF/wtf/Atomics.h.libatomic 2013-12-05 15:43:22.160186327 +0100
++++ webkitgtk-2.3.2/Source/WTF/wtf/Atomics.h 2013-12-05 15:44:02.630264977 +0100
+@@ -101,11 +101,11 @@ inline int atomicDecrement(int volatile*
+
+ #elif COMPILER(GCC)
+
+-inline int atomicIncrement(int volatile* addend) { return __sync_add_and_fetch(addend, 1); }
+-inline int atomicDecrement(int volatile* addend) { return __sync_sub_and_fetch(addend, 1); }
++inline int atomicIncrement(int volatile* addend) { return __atomic_fetch_add(addend, 1, __ATOMIC_ACQ_REL); }
++inline int atomicDecrement(int volatile* addend) { return __atomic_fetch_sub(addend, 1, __ATOMIC_ACQ_REL); }
+
+-inline int64_t atomicIncrement(int64_t volatile* addend) { return __sync_add_and_fetch(addend, 1); }
+-inline int64_t atomicDecrement(int64_t volatile* addend) { return __sync_sub_and_fetch(addend, 1); }
++inline int64_t atomicIncrement(int64_t volatile* addend) { return __atomic_fetch_add(addend, 1, __ATOMIC_ACQ_REL); }
++inline int64_t atomicDecrement(int64_t volatile* addend) { return __atomic_fetch_sub(addend, 1, __ATOMIC_ACQ_REL); }
+
+ #endif
+
diff --git a/webkitgtk-2.3.2-no_jit_1.patch b/webkitgtk-2.3.2-no_jit_1.patch
new file mode 100644
index 0000000..540b196
--- /dev/null
+++ b/webkitgtk-2.3.2-no_jit_1.patch
@@ -0,0 +1,51 @@
+diff --git a/Source/JavaScriptCore/bytecode/ValueRecovery.cpp b/Source/JavaScriptCore/bytecode/ValueRecovery.cpp
+index 221b175d062ee4b2a396d781ccd1973796213a77..c30e2aef32ea5d17804c16dd5b7bee2f359f1105 100644
+--- a/Source/JavaScriptCore/bytecode/ValueRecovery.cpp
++++ b/Source/JavaScriptCore/bytecode/ValueRecovery.cpp
+@@ -60,6 +60,8 @@ JSValue ValueRecovery::recover(ExecState* exec) const
+ }
+ }
+
++#if ENABLE(JIT)
++
+ void ValueRecovery::dumpInContext(PrintStream& out, DumpContext* context) const
+ {
+ switch (technique()) {
+@@ -130,6 +132,7 @@ void ValueRecovery::dump(PrintStream& out) const
+ {
+ dumpInContext(out, 0);
+ }
++#endif // ENABLE(JIT)
+
+ } // namespace JSC
+
+diff --git a/Source/JavaScriptCore/bytecode/ValueRecovery.h b/Source/JavaScriptCore/bytecode/ValueRecovery.h
+index 7127db703f52ec5668fb8da3d1fae08fcf14162d..dc2d55a289b394ea360a8589d517019b2d2214a9 100644
+--- a/Source/JavaScriptCore/bytecode/ValueRecovery.h
++++ b/Source/JavaScriptCore/bytecode/ValueRecovery.h
+@@ -27,12 +27,13 @@
+ #define ValueRecovery_h
+
+ #include "DataFormat.h"
++#if ENABLE(JIT)
+ #include "GPRInfo.h"
+ #include "FPRInfo.h"
++#endif
+ #include "JSCJSValue.h"
+ #include "MacroAssembler.h"
+ #include "VirtualRegister.h"
+-#include <stdio.h>
+ #include <wtf/Platform.h>
+
+ namespace JSC {
+@@ -246,8 +247,10 @@ public:
+
+ JSValue recover(ExecState*) const;
+
++#if ENABLE(JIT)
+ void dumpInContext(PrintStream& out, DumpContext* context) const;
+ void dump(PrintStream& out) const;
++#endif
+
+ private:
+ ValueRecoveryTechnique m_technique;
diff --git a/webkitgtk-2.3.2-no_jit_2.patch b/webkitgtk-2.3.2-no_jit_2.patch
new file mode 100644
index 0000000..7b9d0b9
--- /dev/null
+++ b/webkitgtk-2.3.2-no_jit_2.patch
@@ -0,0 +1,32 @@
+diff --git a/Source/JavaScriptCore/llint/LLIntThunks.cpp b/Source/JavaScriptCore/llint/LLIntThunks.cpp
+index a7387d54c5ad5eedbffa142b94ca890732b11c9b..cd4e7c106c20337a8f45e11d212cdeee09b438e1 100644
+--- a/Source/JavaScriptCore/llint/LLIntThunks.cpp
++++ b/Source/JavaScriptCore/llint/LLIntThunks.cpp
+@@ -26,7 +26,7 @@
+ #include "config.h"
+ #include "LLIntThunks.h"
+
+-#if ENABLE(LLINT)
++#if ENABLE(LLINT) && ENABLE(JIT)
+
+ #include "JSInterfaceJIT.h"
+ #include "JSObject.h"
+@@ -36,8 +36,6 @@
+
+ namespace JSC { namespace LLInt {
+
+-#if !ENABLE(LLINT_C_LOOP)
+-
+ static MacroAssemblerCodeRef generateThunkWithJumpTo(VM* vm, void (*target)(), const char *thunkKind)
+ {
+ JSInterfaceJIT jit(vm);
+@@ -80,8 +78,6 @@ MacroAssemblerCodeRef programEntryThunkGenerator(VM* vm)
+ return generateThunkWithJumpTo(vm, llint_program_prologue, "program");
+ }
+
+-#endif // !ENABLE(LLINT_C_LOOP)
+-
+ } } // namespace JSC::LLInt
+
+-#endif // ENABLE(LLINT)
++#endif // ENABLE(LLINT) && ENABLE(JIT)
diff --git a/webkitgtk-2.3.2-no_jit_3.patch b/webkitgtk-2.3.2-no_jit_3.patch
new file mode 100644
index 0000000..ebfc4d4
--- /dev/null
+++ b/webkitgtk-2.3.2-no_jit_3.patch
@@ -0,0 +1,349 @@
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/assembler/LinkBuffer.cpp.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/assembler/LinkBuffer.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/assembler/LinkBuffer.cpp.no_jit_3 2013-11-12 08:53:56.000000000 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/assembler/LinkBuffer.cpp 2013-12-05 13:32:59.623494221 +0100
+@@ -49,7 +49,8 @@ LinkBuffer::CodeRef LinkBuffer::finalize
+ ASSERT(Options::showDisassembly() || Options::showDFGDisassembly());
+
+ CodeRef result = finalizeCodeWithoutDisassembly();
+-
++
++#if ENABLE(DISASSEMBLER)
+ dataLogF("Generated JIT code for ");
+ va_list argList;
+ va_start(argList, format);
+@@ -59,6 +60,9 @@ LinkBuffer::CodeRef LinkBuffer::finalize
+
+ dataLogF(" Code at [%p, %p):\n", result.code().executableAddress(), static_cast<char*>(result.code().executableAddress()) + result.size());
+ disassemble(result.code(), m_size, " ", WTF::dataFile());
++#else
++ UNUSED_PARAM(format);
++#endif // ENABLE(DISASSEMBLER)
+
+ return result;
+ }
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.cpp.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.cpp.no_jit_3 2013-11-18 08:40:24.000000000 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.cpp 2013-12-05 13:32:59.623494221 +0100
+@@ -26,7 +26,7 @@
+ #include "config.h"
+ #include "DFGDisassembler.h"
+
+-#if ENABLE(DFG_JIT)
++#if ENABLE(DFG_JIT) && ENABLE(DISASSEMBLER)
+
+ #include "CodeBlockWithJITType.h"
+ #include "DFGGraph.h"
+@@ -172,4 +172,4 @@ void Disassembler::dumpDisassembly(Print
+
+ } } // namespace JSC::DFG
+
+-#endif // ENABLE(DFG_JIT)
++#endif // ENABLE(DFG_JIT) && ENABLE(DISASSEMBLER)
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.h.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.h
+--- webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.h.no_jit_3 2013-08-03 18:10:38.000000000 +0200
++++ webkitgtk-2.3.2/Source/JavaScriptCore/dfg/DFGDisassembler.h 2013-12-05 13:32:59.623494221 +0100
+@@ -42,6 +42,8 @@ namespace JSC { namespace DFG {
+
+ class Graph;
+
++#if ENABLE(DISASSEMBLER)
++
+ class Disassembler {
+ WTF_MAKE_FAST_ALLOCATED;
+ public:
+@@ -97,6 +99,25 @@ private:
+ MacroAssembler::Label m_endOfCode;
+ };
+
++#else // ENABLE(DISASSEMBLER)
++
++class Disassembler {
++ WTF_MAKE_FAST_ALLOCATED;
++public:
++ Disassembler(Graph&) { }
++
++ void setStartOfCode(MacroAssembler::Label) { }
++ void setForBlockIndex(BlockIndex, MacroAssembler::Label) { }
++ void setForNode(Node*, MacroAssembler::Label) { }
++ void setEndOfMainPath(MacroAssembler::Label) { }
++ void setEndOfCode(MacroAssembler::Label) { }
++
++ void dump(LinkBuffer&) { }
++ void reportToProfiler(Profiler::Compilation*, LinkBuffer&) { }
++};
++
++#endif // ENABLE(DISASSEMBLER)
++
+ } } // namespace JSC::DFG
+
+ #endif // ENABLE(DFG_JIT)
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/Disassembler.cpp.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/Disassembler.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/Disassembler.cpp.no_jit_3 2013-08-03 18:10:38.000000000 +0200
++++ webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/Disassembler.cpp 2013-12-05 13:32:59.623494221 +0100
+@@ -26,6 +26,8 @@
+ #include "config.h"
+ #include "Disassembler.h"
+
++#if ENABLE(DISASSEMBLER)
++
+ #include "MacroAssemblerCodeRef.h"
+ #include <wtf/DataLog.h>
+
+@@ -41,3 +43,4 @@ void disassemble(const MacroAssemblerCod
+
+ } // namespace JSC
+
++#endif // ENABLE(DISASSEMBLER)
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/X86Disassembler.cpp.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/X86Disassembler.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/X86Disassembler.cpp.no_jit_3 2013-08-03 18:10:38.000000000 +0200
++++ webkitgtk-2.3.2/Source/JavaScriptCore/disassembler/X86Disassembler.cpp 2013-12-05 13:32:59.623494221 +0100
+@@ -26,6 +26,7 @@
+ #include "config.h"
+ #include "Disassembler.h"
+
++#if ENABLE(DISASSEMBLER)
+ #if USE(UDIS86) || USE(LLVM_DISASSEMBLER)
+
+ #include "MacroAssemblerCodeRef.h"
+@@ -70,4 +71,4 @@ bool tryToDisassemble(const MacroAssembl
+ } // namespace JSC
+
+ #endif // USE(UDIS86) || USE(LLVM_DISASSEMBLER)
+-
++#endif // ENABLE(DISASSEMBLER)
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/jit/FPRInfo.h.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/jit/FPRInfo.h
+--- webkitgtk-2.3.2/Source/JavaScriptCore/jit/FPRInfo.h.no_jit_3 2013-11-15 11:39:11.000000000 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/jit/FPRInfo.h 2013-12-05 13:32:59.623494221 +0100
+@@ -34,6 +34,8 @@ namespace JSC {
+ typedef MacroAssembler::FPRegisterID FPRReg;
+ #define InvalidFPRReg ((::JSC::FPRReg)-1)
+
++#if ENABLE(JIT)
++
+ #if CPU(X86) || CPU(X86_64)
+
+ class FPRInfo {
+@@ -108,7 +110,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(X86) || CPU(X86_64)
+
+ #if CPU(ARM)
+
+@@ -172,7 +174,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(ARM)
+
+ #if CPU(ARM64)
+
+@@ -260,7 +262,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(ARM64)
+
+ #if CPU(MIPS)
+
+@@ -327,7 +329,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(MIPS)
+
+ #if CPU(SH4)
+
+@@ -389,7 +391,9 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(SH4)
++
++#endif // ENABLE(JIT)
+
+ } // namespace JSC
+
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/jit/GPRInfo.h.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/jit/GPRInfo.h
+--- webkitgtk-2.3.2/Source/JavaScriptCore/jit/GPRInfo.h.no_jit_3 2013-11-15 11:39:11.000000000 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/jit/GPRInfo.h 2013-12-05 13:32:59.623494221 +0100
+@@ -34,6 +34,8 @@ namespace JSC {
+ typedef MacroAssembler::RegisterID GPRReg;
+ #define InvalidGPRReg ((::JSC::GPRReg)-1)
+
++#if ENABLE(JIT)
++
+ #if USE(JSVALUE64)
+ class JSValueRegs {
+ public:
+@@ -125,7 +127,7 @@ private:
+ int32_t m_offset;
+ GPRReg m_base;
+ };
+-#endif
++#endif // USE(JSVALUE64)
+
+ #if USE(JSVALUE32_64)
+ class JSValueRegs {
+@@ -276,7 +278,7 @@ private:
+ int8_t m_payload;
+ int8_t m_tagType; // Contains the low bits of the tag.
+ };
+-#endif
++#endif // USE(JSVALUE32_64)
+
+ // The baseline JIT requires that regT3 be callee-preserved.
+
+@@ -343,7 +345,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(X86)
+
+ #if CPU(X86_64)
+ #if !OS(WINDOWS)
+@@ -439,7 +441,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(X86_64)
+
+ #if CPU(ARM)
+ #define NUMBER_OF_ARGUMENT_REGISTERS 4u
+@@ -520,7 +522,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(ARM)
+
+ #if CPU(ARM64)
+ #define NUMBER_OF_ARGUMENT_REGISTERS 8u
+@@ -618,7 +620,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(ARM64)
+
+ #if CPU(MIPS)
+ #define NUMBER_OF_ARGUMENT_REGISTERS 4u
+@@ -694,7 +696,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(MIPS)
+
+ #if CPU(SH4)
+ #define NUMBER_OF_ARGUMENT_REGISTERS 4u
+@@ -764,7 +766,7 @@ public:
+ static const unsigned InvalidIndex = 0xffffffff;
+ };
+
+-#endif
++#endif // CPU(SH4)
+
+ // The baseline JIT uses "accumulator" style execution with regT0 (for 64-bit)
+ // and regT0 + regT1 (for 32-bit) serving as the accumulator register(s) for
+@@ -774,6 +776,8 @@ COMPILE_ASSERT(GPRInfo::regT0 == GPRInfo
+ COMPILE_ASSERT(GPRInfo::regT1 == GPRInfo::returnValueGPR2, regT1_must_equal_returnValueGPR2);
+ #endif
+
++#endif // ENABLE(JIT)
++
+ } // namespace JSC
+
+ namespace WTF {
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.cpp.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.cpp.no_jit_3 2013-08-03 18:10:38.000000000 +0200
++++ webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.cpp 2013-12-05 13:32:59.623494221 +0100
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (C) 2012 Apple Inc. All rights reserved.
++ * Copyright (C) 2012, 2013 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+@@ -26,7 +26,7 @@
+ #include "config.h"
+ #include "JITDisassembler.h"
+
+-#if ENABLE(JIT)
++#if ENABLE(JIT) && ENABLE(DISASSEMBLER)
+
+ #include "CodeBlock.h"
+ #include "CodeBlockWithJITType.h"
+@@ -164,5 +164,5 @@ void JITDisassembler::dumpDisassembly(Pr
+
+ } // namespace JSC
+
+-#endif // ENABLE(JIT)
++#endif // ENABLE(JIT) && ENABLE(DISASSEMBLER)
+
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.h.no_jit_3 webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.h
+--- webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.h.no_jit_3 2013-08-03 18:10:38.000000000 +0200
++++ webkitgtk-2.3.2/Source/JavaScriptCore/jit/JITDisassembler.h 2013-12-05 13:32:59.623494221 +0100
+@@ -39,6 +39,8 @@ namespace JSC {
+
+ class CodeBlock;
+
++#if ENABLE(DISASSEMBLER)
++
+ class JITDisassembler {
+ WTF_MAKE_FAST_ALLOCATED;
+ public:
+@@ -84,6 +86,25 @@ private:
+ MacroAssembler::Label m_endOfCode;
+ };
+
++#else // ENABLE(DISASSEMBLER)
++
++class JITDisassembler {
++ WTF_MAKE_FAST_ALLOCATED;
++public:
++ JITDisassembler(CodeBlock*) { }
++
++ void setStartOfCode(MacroAssembler::Label) { }
++ void setForBytecodeMainPath(unsigned, MacroAssembler::Label) { }
++ void setForBytecodeSlowPath(unsigned, MacroAssembler::Label) { }
++ void setEndOfSlowPath(MacroAssembler::Label) { }
++ void setEndOfCode(MacroAssembler::Label) { }
++
++ void dump(LinkBuffer&) { }
++ void reportToProfiler(Profiler::Compilation*, LinkBuffer&) { }
++};
++
++#endif // ENABLE(DISASSEMBLER)
++
+ } // namespace JSC
+
+ #endif // ENABLE(JIT)
+diff -up webkitgtk-2.3.2/Source/WTF/wtf/Platform.h.no_jit_3 webkitgtk-2.3.2/Source/WTF/wtf/Platform.h
+--- webkitgtk-2.3.2/Source/WTF/wtf/Platform.h.no_jit_3 2013-12-05 13:32:59.613494190 +0100
++++ webkitgtk-2.3.2/Source/WTF/wtf/Platform.h 2013-12-05 13:32:59.623494221 +0100
+@@ -868,6 +868,16 @@
+ #endif
+ #endif
+
++/* If the Disassembler is enabled, then the Assembler must be enabled as well: */
++#if ENABLE(DISASSEMBLER)
++#if defined(ENABLE_ASSEMBLER) && !ENABLE_ASSEMBLER
++#error "Cannot enable the Disassembler without enabling the Assembler"
++#else
++#undef ENABLE_ASSEMBLER
++#define ENABLE_ASSEMBLER 1
++#endif
++#endif
++
+ /* Pick which allocator to use; we only need an executable allocator if the assembler is compiled in.
+ On x86-64 we use a single fixed mmap, on other platforms we mmap on demand. */
+ #if ENABLE(ASSEMBLER)
diff --git a/webkitgtk-2.3.2-no_jit_4.patch b/webkitgtk-2.3.2-no_jit_4.patch
new file mode 100644
index 0000000..692ff21
--- /dev/null
+++ b/webkitgtk-2.3.2-no_jit_4.patch
@@ -0,0 +1,31 @@
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.no_jit_4 webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.asm
+--- webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.no_jit_4 2013-12-05 13:37:50.064205163 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2013-12-05 13:38:25.544272612 +0100
+@@ -426,12 +426,15 @@ macro doReturn()
+ ret
+ end
+
++if C_LOOP
++else
+ # stub to call into JavaScript
+ # EncodedJSValue callToJavaScript(void* code, Register* topOfStack)
+ # Note, if this stub or one of it's related macros is changed, make the
+ # equivalent changes in jit/JITStubsX86.h and/or jit/JITStubsMSVC64.asm
+ _callToJavaScript:
+ doCallToJavaScript()
++end
+
+ # Indicate the beginning of LLInt.
+ _llint_begin:
+diff -up webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp.no_jit_4 webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
+--- webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp.no_jit_4 2013-12-05 13:40:54.414566332 +0100
++++ webkitgtk-2.3.2/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp 2013-12-05 13:41:17.944614906 +0100
+@@ -309,7 +309,7 @@ JSValue CLoop::execute(CallFrame* callFr
+ // 2. 32 bit result values will be in the low 32-bit of t0.
+ // 3. 64 bit result values will be in t0.
+
+- CLoopRegister t0, t1, t2, t3, a1;
++ CLoopRegister t0, t1, t2, t3;
+ #if USE(JSVALUE64)
+ CLoopRegister rBasePC, tagTypeNumber, tagMask;
+ #endif
diff --git a/webkitgtk3.spec b/webkitgtk3.spec
index c4acbc9..6a966a3 100644
--- a/webkitgtk3.spec
+++ b/webkitgtk3.spec
@@ -6,7 +6,7 @@
cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g')
Name: webkitgtk3
-Version: 2.2.3
+Version: 2.3.2
Release: 1%{?dist}
Summary: GTK+ Web content engine library
@@ -17,11 +17,21 @@ URL: http://www.webkitgtk.org/
Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
Patch0: webkit-1.1.14-nspluginwrapper.patch
-# workarounds for non-JIT arches
-# https://bugs.webkit.org/show_bug.cgi?id=104270
-Patch1: webkitgtk-2.1.1-yarr.patch
# https://bugs.webkit.org/show_bug.cgi?id=103128
Patch4: webkit-2.1.90-double2intsPPC32.patch
+# https://bugs.webkit.org/show_bug.cgi?id=125062
+# Remove when 2.3.3 will be released
+Patch5: webkitgtk-2.3.2-no_jit_1.patch
+# https://bugs.webkit.org/show_bug.cgi?id=125063
+# Remove when 2.3.3 will be released
+Patch6: webkitgtk-2.3.2-no_jit_2.patch
+# https://bugs.webkit.org/show_bug.cgi?id=123809
+# Remove when 2.3.3 will be released
+Patch7: webkitgtk-2.3.2-no_jit_3.patch
+# https://bugs.webkit.org/show_bug.cgi?id=125186
+# Remove when 2.3.3 will be released
+Patch8: webkitgtk-2.3.2-no_jit_4.patch
+Patch9: webkitgtk-2.3.2-libatomic.patch
BuildRequires: at-spi2-core-devel
BuildRequires: bison
@@ -56,6 +66,10 @@ BuildRequires: perl-Switch
BuildRequires: ruby
BuildRequires: mesa-libGL-devel
+%ifarch ppc
+BuildRequires: libatomic
+%endif
+
%description
WebKitGTK+ is the port of the portable web rendering engine WebKit to the
GTK+ platform.
@@ -92,10 +106,16 @@ This package contains developer documentation for %{name}.
%prep
%setup -qn "webkitgtk-%{version}"
%patch0 -p1 -b .nspluginwrapper
-%patch1 -p1 -b .yarr
%ifarch ppc s390
%patch4 -p1 -b .double2intsPPC32
%endif
+%patch5 -p1 -b .no_jit_1
+%patch6 -p1 -b .no_jit_2
+%patch7 -p1 -b .no_jit_3
+%patch8 -p1 -b .no_jit_4
+%ifarch ppc
+%patch9 -p1 -b .libatomic
+%endif
%build
# Use linker flags to reduce memory consumption
@@ -108,7 +128,11 @@ This package contains developer documentation for %{name}.
%ifarch ppc
# Use linker flag -relax to get WebKit2 build under ppc(32) with JIT disabled
-%global optflags %{optflags} -Wl,-relax
+%global optflags %{optflags} -Wl,-relax -latomic
+%endif
+
+%ifarch s390 s390x ppc ppc64
+%global optflags %{optflags} -DENABLE_YARR_JIT=0
%endif
%configure \
@@ -208,9 +232,12 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete
%dir %{_datadir}/gtk-doc/html
%{_datadir}/gtk-doc/html/webkitgtk
%{_datadir}/gtk-doc/html/webkit2gtk
-
+%{_datadir}/gtk-doc/html/webkitdomgtk
%changelog
+* Thu Dec 5 2013 Tomas Popela <tpopela at redhat.com> - 2.3.2-1
+- Update to 2.3.2
+
* Wed Dec 4 2013 Tomas Popela <tpopela at redhat.com> - 2.2.3-1
- Update to 2.2.3
More information about the scm-commits
mailing list