aboutsummaryrefslogtreecommitdiffstats
path: root/cparser/Machine.mli
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2015-03-20 11:25:30 +0100
committerXavier Leroy <xavier.leroy@inria.fr>2015-03-20 11:25:30 +0100
commitcbf8434e44ebd6bc05022d1fbe0400267520184f (patch)
treea73d9d6d0601935cf514698cdc393d131df7a341 /cparser/Machine.mli
parent42e397bd80389c7e7259f962415769b06561bb5d (diff)
downloadcompcert-kvx-cbf8434e44ebd6bc05022d1fbe0400267520184f.tar.gz
compcert-kvx-cbf8434e44ebd6bc05022d1fbe0400267520184f.zip
Improvements in the StructReturn transformation (ABI conformance for passing composites).
- Implement the "1/2/4/8" composite return policy, used by IA32/MacOS X and IA32/BSD. - Move the default passing conventions from Machine.ml to compcert.ini, making it easier to test the various conventions. - More comprehensive interoperability test in regression/interop1.c.
Diffstat (limited to 'cparser/Machine.mli')
-rw-r--r--cparser/Machine.mli10
1 files changed, 1 insertions, 9 deletions
diff --git a/cparser/Machine.mli b/cparser/Machine.mli
index 76cea879..fb7321f9 100644
--- a/cparser/Machine.mli
+++ b/cparser/Machine.mli
@@ -44,16 +44,9 @@ type t = {
alignof_fun: int option;
bigendian: bool;
bitfields_msb_first: bool;
- supports_unaligned_accesses: bool;
- struct_return_as_int: int;
- struct_passing_style: struct_passing_style
+ supports_unaligned_accesses: bool
}
-and struct_passing_style =
- | SP_ref_callee (* by reference, callee takes copy *)
- | SP_ref_caller (* by reference, caller takes copy *)
- | SP_split_args (* by value, as a sequence of ints *)
-
(* The current configuration *)
val config : t ref
@@ -69,7 +62,6 @@ val x86_64 : t
val win32 : t
val win64 : t
val ppc_32_bigendian : t
-val ppc_32_bigendian_linux : t
val arm_littleendian : t
val gcc_extensions : t -> t