File webkitgtk-protocall-endian-fix.patch of Package webkitgtk

diff -ur webkitgtk-2.4.1.orig/Source/JavaScriptCore/interpreter/ProtoCallFrame.h webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h
--- webkitgtk-2.4.1.orig/Source/JavaScriptCore/interpreter/ProtoCallFrame.h	2014-04-14 01:40:44.000000000 -0500
+++ webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h	2014-05-17 13:23:09.545174838 -0500
@@ -36,7 +36,7 @@
     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 @@
     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; }
     
diff -ur webkitgtk-2.4.1.orig/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
--- webkitgtk-2.4.1.orig/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm	2014-04-14 01:40:44.000000000 -0500
+++ webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm	2014-05-17 13:23:09.547174838 -0500
@@ -282,7 +282,7 @@
     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
diff -ur webkitgtk-2.4.1.orig/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
--- webkitgtk-2.4.1.orig/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm	2014-04-14 01:40:44.000000000 -0500
+++ webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm	2014-05-17 13:23:09.549174838 -0500
@@ -171,7 +171,7 @@
     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
openSUSE Build Service is sponsored by