ppc64/ppc64le: Fix behaviour of Int64.max_int ÷ -1 (RHBZ#1236615).

This commit is contained in:
Richard W.M. Jones 2015-06-29 21:55:46 +01:00
parent 223db9b72f
commit cf3cc5b245
20 changed files with 67 additions and 20 deletions

View File

@ -1,7 +1,7 @@
From 6fbdb9e95ecd4654067565afe0c0b12fbeed3336 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 24 Jun 2014 22:29:38 +0100
Subject: [PATCH 01/18] Don't ignore ./configure, it's a real git file.
Subject: [PATCH 01/19] Don't ignore ./configure, it's a real git file.
---
.gitignore | 1 -

View File

@ -1,7 +1,7 @@
From 3cecfa8e2765a4f1a126af37ddb77ad67c3f6720 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 7 Jun 2012 15:36:16 +0100
Subject: [PATCH 02/18] Ensure empty compilerlibs/ directory is created by git.
Subject: [PATCH 02/19] Ensure empty compilerlibs/ directory is created by git.
This directory exists in the OCaml tarball, but is empty. As a
result, git ignores it unless we put a dummy file in it.

View File

@ -1,7 +1,7 @@
From c8084922e188649becfe1e8bbe89b7fab0de6dd0 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 24 Jun 2014 10:00:15 +0100
Subject: [PATCH 03/18] Don't add rpaths to libraries.
Subject: [PATCH 03/19] Don't add rpaths to libraries.
---
tools/Makefile.shared | 6 +++---

View File

@ -1,7 +1,7 @@
From bfcc9876923963085d23537ca444469362673889 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 29 May 2012 20:40:36 +0100
Subject: [PATCH 04/18] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
Subject: [PATCH 04/19] ocamlbyteinfo, ocamlplugininfo: Useful utilities from
Debian, sent upstream.
See:

View File

@ -1,7 +1,7 @@
From 67b0b755b208027600255e379f98cdd8a919c7aa Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 29 May 2012 20:44:18 +0100
Subject: [PATCH 05/18] configure: Allow user defined C compiler flags.
Subject: [PATCH 05/19] configure: Allow user defined C compiler flags.
---
configure | 4 ++++

View File

@ -1,7 +1,7 @@
From 83b653b6b163018086c0d9d66d02feb5edeb44d1 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 06/18] Add support for ppc64.
Subject: [PATCH 06/19] Add support for ppc64.
Note (1): This patch was rejected upstream because they don't have
appropriate hardware for testing.

View File

@ -1,7 +1,7 @@
From cec09000c6659261e90310c5eff81b936849edf0 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Fri, 24 Oct 2014 12:59:23 +0200
Subject: [PATCH 07/18] ppc64: Update for OCaml 4.02.0.
Subject: [PATCH 07/19] ppc64: Update for OCaml 4.02.0.
These are based on the power (ppc32) branch and some guesswork.
In particular, I'm not convinced that my changes to floating

View File

@ -1,7 +1,7 @@
From 5a2495689fcb11c4ed690008f4eab7dfc51d89ef Mon Sep 17 00:00:00 2001
From: Michel Normand <normand@linux.vnet.ibm.com>
Date: Tue, 18 Mar 2014 09:15:47 -0400
Subject: [PATCH 08/18] Add support for ppc64le.
Subject: [PATCH 08/19] Add support for ppc64le.
Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
---

View File

@ -1,7 +1,7 @@
From 1a1d2ae928bcc88591502414a4167865da2db93a Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Fri, 24 Oct 2014 12:59:23 +0200
Subject: [PATCH 09/18] ppc64le: Update for OCaml 4.02.0.
Subject: [PATCH 09/19] ppc64le: Update for OCaml 4.02.0.
These are based on the power (ppc32) branch and some guesswork. In
particular, I'm not convinced that my changes to floating point

View File

@ -1,7 +1,7 @@
From b2b2dd82e4aa60307ba2f98c142dd2980bf4dc18 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Sat, 10 May 2014 03:20:35 -0400
Subject: [PATCH 10/18] arm, arm64: Mark stack as non-executable.
Subject: [PATCH 10/19] arm, arm64: Mark stack as non-executable.
The same fix as this one, which was only fully applied to
i686 & x86-64:

View File

@ -1,7 +1,7 @@
From ee670da51f4d7763f607e456186c52e72a09a929 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 1 Apr 2014 11:17:07 +0100
Subject: [PATCH 11/18] arg: Add no_arg and get_arg helper functions.
Subject: [PATCH 11/19] arg: Add no_arg and get_arg helper functions.
The no_arg function in this patch is a no-op. It will do something
useful in the followups.

View File

@ -1,7 +1,7 @@
From 94a567b59750a3765140a6c8bd41223f5ecf6220 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Tue, 1 Apr 2014 11:21:40 +0100
Subject: [PATCH 12/18] arg: Allow flags such as --flag=arg as well as --flag
Subject: [PATCH 12/19] arg: Allow flags such as --flag=arg as well as --flag
arg.
Allow flags to be followed directly by their argument, separated by an '='

View File

@ -1,7 +1,7 @@
From b6ae488dba765380975d71a03c5afdd02c4b5c58 Mon Sep 17 00:00:00 2001
From: Xavier Leroy <xavier.leroy@inria.fr>
Date: Wed, 27 Aug 2014 09:58:33 +0000
Subject: [PATCH 13/18] PR#6517: use ISO C99 types {,u}int{32,64}_t in
Subject: [PATCH 13/19] PR#6517: use ISO C99 types {,u}int{32,64}_t in
preference to our homegrown types {,u}int{32,64}.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02

View File

@ -1,7 +1,7 @@
From 51d003033bc15d215a6860714190edacecd724ab Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 11 Sep 2014 14:49:54 +0100
Subject: [PATCH 14/18] ppc, ppc64, ppc64le: Mark stack as non-executable.
Subject: [PATCH 14/19] ppc, ppc64, ppc64le: Mark stack as non-executable.
The same fix as this one, which was only fully applied to
i686 & x86-64:

View File

@ -1,7 +1,7 @@
From e1dbbb661405f35600d78f16a0a729a8ac014f61 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Fri, 24 Oct 2014 10:10:54 +0100
Subject: [PATCH 15/18] ppc64/ppc64le: proc: Interim definitions for op_is_pure
Subject: [PATCH 15/19] ppc64/ppc64le: proc: Interim definitions for op_is_pure
and regs_are_volatile.
See: https://bugzilla.redhat.com/show_bug.cgi?id=1156300

View File

@ -1,7 +1,7 @@
From 4198d84ca53b4760269abe7bfbecf9ecb853a303 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Thu, 28 May 2015 16:13:40 -0400
Subject: [PATCH 16/18] ppc64le: Fix calling convention of external functions
Subject: [PATCH 16/19] ppc64le: Fix calling convention of external functions
with > 8 parameters (RHBZ#1225995).
For external (ie. C) functions with more than 8 parameters, we must

View File

@ -1,7 +1,7 @@
From e549e91ccfeb0c8bb99aa4095cc2088ab443e7a3 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 29 Jun 2015 08:31:31 -0400
Subject: [PATCH 17/18] ppc64: Fix PIC variant of asmrun.
Subject: [PATCH 17/19] ppc64: Fix PIC variant of asmrun.
---
asmrun/Makefile | 3 +++

View File

@ -1,7 +1,7 @@
From d662ee171f94885a565828818ad0ccd73af06d39 Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 29 Jun 2015 08:32:31 -0400
Subject: [PATCH 18/18] ppc64le: Fix PIC variant of asmrun.
Subject: [PATCH 18/19] ppc64le: Fix PIC variant of asmrun.
---
asmrun/Makefile | 3 +++

View File

@ -0,0 +1,45 @@
From cf026cf66315609afe8f76272e493259bade255f Mon Sep 17 00:00:00 2001
From: "Richard W.M. Jones" <rjones@redhat.com>
Date: Mon, 29 Jun 2015 14:18:38 -0400
Subject: [PATCH 19/19] =?UTF-8?q?ppc64/ppc64le:=20Fix=20behaviour=20of=20I?=
=?UTF-8?q?nt64.max=5Fint=20=C3=B7=20-1=20(RHBZ#1236615).?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
I only tested this on ppc64le, but assume the behaviour is the
same on ppc64.
---
asmcomp/power64/arch.ml | 2 +-
asmcomp/power64le/arch.ml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/asmcomp/power64/arch.ml b/asmcomp/power64/arch.ml
index 73c516d..ccd11fc 100644
--- a/asmcomp/power64/arch.ml
+++ b/asmcomp/power64/arch.ml
@@ -46,7 +46,7 @@ let allow_unaligned_access = false
(* Behavior of division *)
-let division_crashes_on_overflow = false
+let division_crashes_on_overflow = true
(* Operations on addressing modes *)
diff --git a/asmcomp/power64le/arch.ml b/asmcomp/power64le/arch.ml
index 586534b..2155e79 100644
--- a/asmcomp/power64le/arch.ml
+++ b/asmcomp/power64le/arch.ml
@@ -46,7 +46,7 @@ let allow_unaligned_access = false
(* Behavior of division *)
-let division_crashes_on_overflow = false
+let division_crashes_on_overflow = true
(* Operations on addressing modes *)
--
2.3.1

View File

@ -17,7 +17,7 @@
Name: ocaml
Version: 4.02.2
Release: 3%{?dist}
Release: 4%{?dist}
Summary: OCaml compiler and programming environment
@ -63,6 +63,7 @@ Patch0015: 0015-ppc64-ppc64le-proc-Interim-definitions-for-op_is_pur.patch
Patch0016: 0016-ppc64le-Fix-calling-convention-of-external-functions.patch
Patch0017: 0017-ppc64-Fix-PIC-variant-of-asmrun.patch
Patch0018: 0018-ppc64le-Fix-PIC-variant-of-asmrun.patch
Patch0019: 0019-ppc64-ppc64le-Fix-behaviour-of-Int64.max_int-1-RHBZ-.patch
# Add BFD support so that ocamlobjinfo supports *.cmxs format (RHBZ#1113735).
BuildRequires: binutils-devel
@ -440,8 +441,9 @@ fi
%changelog
* Mon Jun 29 2015 Richard W.M. Jones <rjones@redhat.com> - 4.02.2-3
* Mon Jun 29 2015 Richard W.M. Jones <rjones@redhat.com> - 4.02.2-4
- Couple of minor build fixes for ppc64 and ppc64le.
- ppc64/ppc64le: Fix behaviour of Int64.max_int ÷ -1 (RHBZ#1236615).
* Fri Jun 26 2015 Richard W.M. Jones <rjones@redhat.com> - 4.02.2-2
- Enable the test suite during the build. Currently the results are