aboutsummaryrefslogtreecommitdiffstats
path: root/community/py-greenlet/ppc64le_clobbering.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/py-greenlet/ppc64le_clobbering.patch')
-rw-r--r--community/py-greenlet/ppc64le_clobbering.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/community/py-greenlet/ppc64le_clobbering.patch b/community/py-greenlet/ppc64le_clobbering.patch
new file mode 100644
index 0000000000..c4d237f4f6
--- /dev/null
+++ b/community/py-greenlet/ppc64le_clobbering.patch
@@ -0,0 +1,21 @@
+Author: Breno Leitao <breno.leitao@gmail.com>
+Date: Mon Apr 10 23:22:01 2017 +0000
+
+ Do not clobber r31 if you are not omitting frame pointer
+
+ R31 is the register that is defined in the ABI v2 as the frame pointer.
+ It should not be clobbered unless we omit the frame pointer.
+
+ Signed-off-by: Breno Leitao <breno.leitao@gmail.com>
+
+--- greenlet-0.4.12/platform/switch_ppc64_linux.h.old 2017-04-10 19:14:26.808511638 +0000
++++ greenlet-0.4.12/platform/switch_ppc64_linux.h 2017-04-10 19:14:34.556511856 +0000
+@@ -57,7 +57,7 @@
+ #endif
+
+ #define REGS_TO_SAVE "r2", "r14", "r15", "r16", "r17", "r18", "r19", "r20", \
+- "r21", "r22", "r23", "r24", "r25", "r26", "r27", "r28", "r29", "r31", \
++ "r21", "r22", "r23", "r24", "r25", "r26", "r27", "r28", "r29", \
+ "fr14", "fr15", "fr16", "fr17", "fr18", "fr19", "fr20", "fr21", \
+ "fr22", "fr23", "fr24", "fr25", "fr26", "fr27", "fr28", "fr29", \
+ "fr30", "fr31", \