aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2016-10-27 16:19:19 +0200
committerXavier Leroy <xavier.leroy@inria.fr>2016-10-27 16:19:19 +0200
commitd50773e537ec6729f9152b545c6f938ab19eb7b8 (patch)
treecd0673d19fc21a7c9b0e73acbc8dac40111247b8
parent883341719d7d6868f8165541e7e13ac45192a358 (diff)
downloadcompcert-kvx-d50773e537ec6729f9152b545c6f938ab19eb7b8.tar.gz
compcert-kvx-d50773e537ec6729f9152b545c6f938ab19eb7b8.zip
Documentation updates to mention 64-bit mode and x86_64 port
-rw-r--r--Changelog26
-rwxr-xr-xconfigure13
2 files changed, 32 insertions, 7 deletions
diff --git a/Changelog b/Changelog
index c3edb0fd..59f10c2f 100644
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,25 @@
+Working version
+===============
+
+Major improvements:
+
+- Added support for 64-bit target platforms, including pointers that
+ are 64-bit wide, and the ability to use 64-bit integer registers and
+ arithmetic operations. This support does not replace but comes in
+ addition to CompCert's original support for 32-bit target platforms,
+ with 32-bit pointers and emulation of 64-bit integer arithmetic
+ using pairs of 32-bit integers. In terms of C data models, CompCert
+ used to be restricted to the ILP32LL64 model; now it also supports
+ I32LP64 and IL32LLP64.
+
+- The x86 port of CompCert was extended to produce x86-64 bit code in
+ addition to the original x86-32 bit (IA32) code. (This is the first
+ instantiation of the new support for 64-bit targets described
+ above.) Support for x86-64 is currently available for Linux and MacOS X.
+ (Run the configure script with 'x86_64-linux' or 'x86_64-macosx'.)
+
+
+
Release 2.7.1, 2016-07-18
=========================
@@ -7,9 +29,9 @@ Bug fixing:
- Fixed a compile-time assertion failure involving builtins
taking a 64-bit integer parameter and given an unsigned 32-bit integer
argument.
-- Updates to the Cminor parser.
+- Updates to the Cminor parser.
+
-
Release 2.7, 2016-06-29
=======================
diff --git a/configure b/configure
index 6db59fb8..7ce5a1f2 100755
--- a/configure
+++ b/configure
@@ -36,13 +36,16 @@ Supported targets:
armeb-linux (ARM, EABI, big endian)
armeb-eabihf (ARM, EABI using hardware FP registers, big endian)
armeb-hardfloat (ARM, EABI using hardware FP registers, big endian)
- ia32-linux (x86 32 bits, Linux)
- ia32-bsd (x86 32 bits, BSD)
- ia32-macosx (x86 32 bits, MacOS X)
- ia32-cygwin (x86 32 bits, Cygwin environment under Windows)
+ x86_32-linux (x86 32 bits, Linux)
+ x86_32-bsd (x86 32 bits, BSD)
+ x86_32-macosx (x86 32 bits, MacOS X)
+ x86_32-cygwin (x86 32 bits, Cygwin environment under Windows)
x86_64-linux (x86 64 bits, Linux)
+ x86_64-macosx (x86 64 bits, MacOS X)
manual (edit configuration file by hand)
+For x86 targets, the "x86_32-" prefix can also be written "ia32-".
+
For PowerPC targets, the "ppc-" prefix can be refined into:
ppc64- PowerPC 64 bits
e5500- Freescale e5500 core (PowerPC 64 bit, EREF extensions)
@@ -314,7 +317,7 @@ if test "$arch" = "x86" -a "$bitsize" = "32"; then
fi
;;
*)
- echo "Error: invalid eabi/system '$target' for architecture IA32." 1>&2
+ echo "Error: invalid eabi/system '$target' for architecture IA32/X86_32." 1>&2
echo "$usage" 1>&2
exit 2;;
esac