aboutsummaryrefslogtreecommitdiffstats
path: root/driver/Clflags.ml
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2015-12-08 11:20:33 +0100
committerXavier Leroy <xavier.leroy@inria.fr>2015-12-08 11:20:33 +0100
commit478093c1af181e6dd2c364e9bf954994bd312e12 (patch)
treef2b1a5a0fe7f4025f87165f1ef1c9e900f42a71b /driver/Clflags.ml
parentff9fedbbcc45993dfe2c4f0a372596782603921c (diff)
downloadcompcert-kvx-478093c1af181e6dd2c364e9bf954994bd312e12.tar.gz
compcert-kvx-478093c1af181e6dd2c364e9bf954994bd312e12.zip
Revise and simplify the -fstruct-return and -fstruct-passing options.
- Rename '-fstruct-return' into '-fstruct-passing', because this emulation affects both function result passing and function argument passing. Keep '-fstruct-return' as a deprecated synonymous for '-fstruct-passing' - Remove the ability to change the ABI for struct passing via the '-fstruct-passing=<abi>' and '-fstruct-return=<abi>' command-line flags. This was more confusing than useful. - Produce an error if a struct/union is passed as function argument and '-fstruct-passing' is not set. This used to be supported, using CompCert's default ABI for passing struct arguments. However, this default ABI does not match any of the standard ABIs of our target platforms, so it is better to reject than to silently produce ABI-incompatible code.
Diffstat (limited to 'driver/Clflags.ml')
-rw-r--r--driver/Clflags.ml4
1 files changed, 1 insertions, 3 deletions
diff --git a/driver/Clflags.ml b/driver/Clflags.ml
index 6c2cc661..b67fd638 100644
--- a/driver/Clflags.ml
+++ b/driver/Clflags.ml
@@ -16,9 +16,7 @@ let prepro_options = ref ([]: string list)
let linker_options = ref ([]: string list)
let assembler_options = ref ([]: string list)
let option_flongdouble = ref false
-let option_fstruct_return = ref false
-let option_fstruct_return_style = ref Configuration.struct_return_style
-let option_fstruct_passing_style = ref Configuration.struct_passing_style
+let option_fstruct_passing = ref false
let option_fbitfields = ref false
let option_fvararg_calls = ref true
let option_funprototyped = ref true