From 25b9b003178002360d666919f2e49e7f5f4a36e2 Mon Sep 17 00:00:00 2001 From: xleroy Date: Sat, 4 Feb 2012 19:14:14 +0000 Subject: Merge of the "volatile" branch: - native treatment of volatile accesses in CompCert C's semantics - translation of volatile accesses to built-ins in SimplExpr - native treatment of struct assignment and passing struct parameter by value - only passing struct result by value remains emulated - in cparser, remove emulations that are no longer used - added C99's type _Bool and used it to express || and && more efficiently. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1814 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- README | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'README') diff --git a/README b/README index dfe6653..8673e73 100644 --- a/README +++ b/README @@ -33,12 +33,12 @@ SUPPORTED PLATFORMS: natively at full speed on PowerPC-based Macs, and runs under software emulation at reduced speed on Intel-based Macs. -- PowerPC / Linux [somewhat experimental] +- PowerPC / Linux [stable] For PowerPC machines running the Linux operating system. -- IA32 / Linux or MacOS or Windows+Cygwin [experimental] +- IA32 / Linux or MacOS or Windows+Cygwin [stable] For Intel/AMD x86 processors with SSE2 extensions - (i.e. Pentium 4 and later), running either Linux, MacOS 10.6, + (i.e. Pentium 4 and later), running either Linux, MacOS 10.6 or 10.7, or Windows with the Cygwin environment (http://www.cygwin.com/). - ARM / Linux [experimental] @@ -60,7 +60,7 @@ PREREQUISITES: * The Caml functional language, version 3.10 or later. Caml is free software, available from http://caml.inria.fr/ -* Under MacOS 10.5 and 10.6, some standard C include files in /usr/include/ +* Under MacOS, some standard C include files in /usr/include/ contain gcc-isms that cause errors when compiling with CompCert. Symptoms include: - references to undefined types uint16_t and uint32_t @@ -84,6 +84,8 @@ where is one of: ppc-macosx (PowerPC, MacOS X) ppc-linux (PowerPC, Linux) + ppc-eabi-unix (PowerPC, EABI with Unix tools) + ppc-eabi-diab (PowerPC, EABI with Diab tools) arm-linux (ARM, Linux) ia32-linux (x86 SSE2 32 bits, Linux) ia32-macosx (x86 SSE2 32 bits, MacOS X) @@ -172,9 +174,12 @@ Preprocessing options: Language support options (use -fno- to turn off -f) : -fbitfields Emulate bit fields in structs [off] -flonglong Partial emulation of 'long long' types [on] - -fstruct-passing Emulate passing structs and unions by value [off] - -fstruct-assign Emulate assignment between structs or unions [off] + -flongdouble Treat 'long double' as 'double' [off] + -fstruct-return Emulate returning structs and unions by value [off] -fvararg-calls Emulate calls to variable-argument functions [on] + -fpacked-structs Emulate packed structs [off] + -fall Activate all language support options above + -fnone Turn off all language support options above Code generation options: -fmadd Use fused multiply-add and multiply-sub instructions -fsmall-data Set maximal size for allocation in small data area -- cgit v1.2.3