aboutsummaryrefslogtreecommitdiffstats
path: root/driver/Driver.ml
diff options
context:
space:
mode:
authorxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-02-19 09:55:45 +0000
committerxleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-02-19 09:55:45 +0000
commit3ec022950ec233a2af418aacd1755fce4d701724 (patch)
tree154256c5c73fda06e874fb05695e14e610ba8ad4 /driver/Driver.ml
parent9aeba45962e8ba5cde5d81fb701a4c9a3963f4a5 (diff)
downloadcompcert-3ec022950ec233a2af418aacd1755fce4d701724.tar.gz
compcert-3ec022950ec233a2af418aacd1755fce4d701724.zip
Add option -Os to optimize for code size rather than for execution speed.
Refactored compilation flags that affect the Coq part (module Compopts). Added support for C99 for loops with declarations. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2410 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'driver/Driver.ml')
-rw-r--r--driver/Driver.ml4
1 files changed, 4 insertions, 0 deletions
diff --git a/driver/Driver.ml b/driver/Driver.ml
index 47061cda..8853794d 100644
--- a/driver/Driver.ml
+++ b/driver/Driver.ml
@@ -426,6 +426,8 @@ Language support options (use -fno-<opt> to turn off -f<opt>) :
-fall Activate all language support options above
-fnone Turn off all language support options above
Code generation options: (use -fno-<opt> to turn off -f<opt>) :
+ -O Optimize for speed [on by default]
+ -Os Optimize for code size
-ffpu Use FP registers for some integer operations [on]
-fsmall-data <n> Set maximal size <n> for allocation in small data area
-fsmall-const <n> Set maximal size <n> for allocation in small constant area
@@ -525,6 +527,8 @@ let cmdline_actions =
assembler_options := s :: !assembler_options);
"-Wl,", Self (fun s ->
push_linker_arg s);
+ "-Os$", Set option_Osize;
+ "-O$", Unset option_Osize;
"-fsmall-data$", Integer(fun n -> option_small_data := n);
"-fsmall-const$", Integer(fun n -> option_small_const := n);
"-ffloat-const-prop$", Integer(fun n -> option_ffloatconstprop := n);