ppc64: Fix position of stack arguments to external C functions
when there are more than 8 parameters.
This commit is contained in:
parent
963a64f016
commit
958f1c157a
@ -1,4 +1,4 @@
|
||||
From 07d6360922923ddfa2fe7ff745bed5da27f98e05 Mon Sep 17 00:00:00 2001
|
||||
From 8337a6ef4844c27b83ad89fed63a9ee94381457d Mon Sep 17 00:00:00 2001
|
||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||
Date: Tue, 29 May 2012 20:47:07 +0100
|
||||
Subject: [PATCH 6/8] Add support for ppc64.
|
||||
@ -11,6 +11,9 @@ only for Macs, and I couldn't get it to work at all with IBM hardware.
|
||||
|
||||
This patch was collaborated on by several people, most notably
|
||||
David Woodhouse.
|
||||
|
||||
Includes fix for position of stack arguments to external C functions
|
||||
when there are more than 8 parameters (RHBZ#829187).
|
||||
---
|
||||
asmcomp/power64/arch.ml | 83 ++++
|
||||
asmcomp/power64/emit.mlp | 989 +++++++++++++++++++++++++++++++++++++++++
|
||||
@ -1117,7 +1120,7 @@ index 0000000..ba54e99
|
||||
+ frame_descriptors := []
|
||||
diff --git a/asmcomp/power64/proc.ml b/asmcomp/power64/proc.ml
|
||||
new file mode 100644
|
||||
index 0000000..67f26ab
|
||||
index 0000000..119ad93
|
||||
--- /dev/null
|
||||
+++ b/asmcomp/power64/proc.ml
|
||||
@@ -0,0 +1,241 @@
|
||||
@ -1311,7 +1314,7 @@ index 0000000..67f26ab
|
||||
+let loc_external_arguments =
|
||||
+ match Config.system with
|
||||
+ | "rhapsody" -> poweropen_external_conventions 0 7 100 112
|
||||
+ | "elf" | "bsd" -> calling_conventions 0 7 100 107 outgoing 8
|
||||
+ | "elf" | "bsd" -> calling_conventions 0 7 100 107 outgoing 48
|
||||
+ | _ -> assert false
|
||||
+
|
||||
+let extcall_use_push = false
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 22fadc3ed91cb380f7303e8a83ff5806d4576cb5 Mon Sep 17 00:00:00 2001
|
||||
From d713da1390d4a74f78ca7e37834fa0a47932f948 Mon Sep 17 00:00:00 2001
|
||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||
Date: Tue, 29 May 2012 20:50:42 +0100
|
||||
Subject: [PATCH 7/8] New ARM backend, written by Benedikt Meurer (PR#5433).
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e14375eca4f1ddd9d3b28c9b45ce4aca05070a95 Mon Sep 17 00:00:00 2001
|
||||
From c103b9b4e7c0d50f29d8eec2c9e946d1d52970f5 Mon Sep 17 00:00:00 2001
|
||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||
Date: Tue, 5 Jun 2012 22:49:17 +0100
|
||||
Subject: [PATCH 8/8] Link dllthreads.so with -lpthread so that pthread_atfork
|
||||
|
@ -1,6 +1,6 @@
|
||||
Name: ocaml
|
||||
Version: 3.12.1
|
||||
Release: 10%{?dist}
|
||||
Release: 11%{?dist}
|
||||
|
||||
Summary: Objective Caml compiler and programming environment
|
||||
|
||||
@ -496,6 +496,10 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jun 6 2012 Richard W.M. Jones <rjones@redhat.com> 3.12.1-11
|
||||
- ppc64: Fix position of stack arguments to external C functions
|
||||
when there are more than 8 parameters.
|
||||
|
||||
* Tue Jun 5 2012 Richard W.M. Jones <rjones@redhat.com> 3.12.1-10
|
||||
- Include patch to link dllthreads.so with -lpthread explicitly, to
|
||||
fix problem with 'pthread_atfork' symbol missing (statically linked)
|
||||
|
Loading…
Reference in New Issue
Block a user