aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCyril SIX <cyril.six@kalray.eu>2019-07-17 16:41:11 +0200
committerCyril SIX <cyril.six@kalray.eu>2019-07-17 16:41:11 +0200
commit31802695bf6673831674836817456142ab293e6b (patch)
treedf6234b25beeed38a2a80a0a2a366082e026597c
parent879b51d3e6166d04ad69e71c44bcfbb502e5f2c9 (diff)
downloadcompcert-kvx-31802695bf6673831674836817456142ab293e6b.tar.gz
compcert-kvx-31802695bf6673831674836817456142ab293e6b.zip
(#142) Desactivating scheduling when using -O1 optimization
-rw-r--r--driver/Driver.ml4
-rw-r--r--test/monniaux/rules.mk2
2 files changed, 4 insertions, 2 deletions
diff --git a/driver/Driver.ml b/driver/Driver.ml
index 404271cd..9748ebf6 100644
--- a/driver/Driver.ml
+++ b/driver/Driver.ml
@@ -185,7 +185,8 @@ Processing options:
{|Optimization options: (use -fno-<opt> to turn off -f<opt>)
-O Optimize the compiled code [on by default]
-O0 Do not optimize the compiled code
- -O1 -O2 -O3 Synonymous for -O
+ -O1 Perform all optimization passes except scheduling
+ -O2 -O3 Synonymous for -O
-Os Optimize for code size in preference to code speed
-ftailcalls Optimize function calls in tail position [on]
-fconst-prop Perform global constant propagation [on]
@@ -308,6 +309,7 @@ let cmdline_actions =
[
Exact "-O0", Unit (unset_all optimization_options);
Exact "-O", Unit (set_all optimization_options);
+ _Regexp "-O1", Self (fun _ -> set_all optimization_options (); option_fpostpass := false);
_Regexp "-O[123]$", Unit (set_all optimization_options);
Exact "-Os", Set option_Osize;
Exact "-fsmall-data", Integer(fun n -> option_small_data := n);
diff --git a/test/monniaux/rules.mk b/test/monniaux/rules.mk
index 454e61e6..4dfeac3b 100644
--- a/test/monniaux/rules.mk
+++ b/test/monniaux/rules.mk
@@ -33,7 +33,7 @@ GCC2FLAGS?=$(ALL_GCCFLAGS) -O2
GCC3FLAGS?=$(ALL_GCCFLAGS) -O3
GCC4FLAGS?=
CCOMP0FLAGS?=
-CCOMP1FLAGS?=$(ALL_CCOMPFLAGS) -fno-postpass
+CCOMP1FLAGS?=$(ALL_CCOMPFLAGS) -O1
CCOMP2FLAGS?=$(ALL_CCOMPFLAGS)
CCOMP3FLAGS?=
CCOMP4FLAGS?=