summaryrefslogtreecommitdiff
path: root/Changelog
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-03-30 15:31:24 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-03-30 15:31:24 +0000
commit6f731da1e13d295104d624114ee26db46e50238f (patch)
treeec409a5587f23928c1c796e94451c1aabb13ccfe /Changelog
parent3436ed78de535f48cff1ac84394c020450be8976 (diff)
Updates for release 1.7
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1305 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'Changelog')
-rw-r--r--Changelog46
1 files changed, 46 insertions, 0 deletions
diff --git a/Changelog b/Changelog
index 750048d..45dd53d 100644
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,49 @@
+Release 1.7, 2010-03-31
+=======================
+
+- New implementation of the C type-checker, simplifier, and translation to
+ Clight. Compared with the previous CIL-based solution, the new
+ implementation is more modular and supports more optional simplifications.
+
+- More features of the C language are handled by expansion during
+ translation to Clight:
+ . assignment between structs and unions (option -fstruct-assign)
+ . passing structs and union by value (option -fstruct-passing)
+ . bit-fields in structs (option -fbitfields)
+
+- The "volatile" modifier is now honored. Volatile accesses are represented
+ in Clight by calls to built-in functions, which are preserved throughout
+ the compilation chain, then turned into processor loads and stores
+ at the end.
+
+- Generic support for C built-in functions. These predefined external
+ functions give access to special instructions of the processor. See
+ powerpc/CBuiltins.ml for the list of PowerPC built-in functions.
+
+- The memory model now exposes the bit-level in-memory representation
+ of integers and floats. This strengthens the semantic preservation
+ theorem: we now prove that C code that directly manipulates these
+ bit-level representations (e.g. via a union between floats and integers)
+ is correctly compiled.
+
+- The memory model now supports fine-grained access control to individual
+ bytes of a memory block. This feature is currently unused in the
+ compiler proofs, but will facilitate connections with separation logics
+ later.
+
+- External functions are now allowed to read and modify memory.
+ The semantic preservation proofs were strengthened accordingly.
+ In particular, this enables the malloc() and free() C library functions
+ to be modeled as external functions in a provably correct manner.
+
+- Minor improvements in the handling of global environments and the
+ construction of the initial memory state.
+
+- Bug fixes in the handling of '#pragma section' and '#pragma set_section'.
+
+- The C test suite was enriched and restructured.
+
+
Release 1.6, 2010-01-13
=======================