aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <mkuvyrkov@ispras.ru>2006-06-06 09:44:17 +0000
committerMaxim Kuvyrkov <mkuvyrkov@gcc.gnu.org>2006-06-06 09:44:17 +0000
commitbb83aa4befca7648dc4cf75c1fe33130cdfb512d (patch)
tree4e85765957fea3261824e07ed61ba01439373e74 /gcc/config
parent6ff24d45dc7bf2691b6c2c3f9e9830360dc572a6 (diff)
downloadgcc-bb83aa4befca7648dc4cf75c1fe33130cdfb512d.zip
gcc-bb83aa4befca7648dc4cf75c1fe33130cdfb512d.tar.gz
gcc-bb83aa4befca7648dc4cf75c1fe33130cdfb512d.tar.bz2
params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): Change default value to 0.
2006-06-06 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> * params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): Change default value to 0. * doc/invoke.texi (max-sched-extend-regions-iters): Document. * config/ia64/ia64.c (params.h): New header. (ia64_optimization_options): New function to adjust parameters. * config/ia64/ia64-protos.h (ia64_optimization_options): New prototype. * config/ia64/ia64.h (OPTIMIZATION_OPTIONS): New macro. * config/ia64/t-ia64 (ia64.o): Add dependence from params.h . From-SVN: r114425
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/ia64/ia64-protos.h2
-rw-r--r--gcc/config/ia64/ia64.c10
-rw-r--r--gcc/config/ia64/ia64.h4
-rw-r--r--gcc/config/ia64/t-ia642
4 files changed, 17 insertions, 1 deletions
diff --git a/gcc/config/ia64/ia64-protos.h b/gcc/config/ia64/ia64-protos.h
index b05cdab..c4bf61d 100644
--- a/gcc/config/ia64/ia64-protos.h
+++ b/gcc/config/ia64/ia64-protos.h
@@ -110,3 +110,5 @@ extern enum direction ia64_hpux_function_arg_padding (enum machine_mode, tree);
extern void ia64_hpux_handle_builtin_pragma (struct cpp_reader *);
extern void ia64_output_function_profiler (FILE *, int);
extern void ia64_profile_hook (int);
+
+extern void ia64_optimization_options (int, int);
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 076814e..14e85ca 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -54,6 +54,7 @@ Boston, MA 02110-1301, USA. */
#include "tree-gimple.h"
#include "intl.h"
#include "debug.h"
+#include "params.h"
/* This is used for communication between ASM_OUTPUT_LABEL and
ASM_OUTPUT_LABELREF. */
@@ -9749,4 +9750,13 @@ ia64_invalid_binary_op (int op ATTRIBUTE_UNUSED, tree type1, tree type2)
return NULL;
}
+/* Implement overriding of the optimization options. */
+void
+ia64_optimization_options (int level ATTRIBUTE_UNUSED,
+ int size ATTRIBUTE_UNUSED)
+{
+ /* Let the scheduler form additional regions. */
+ set_param_value ("max-sched-extend-regions-iters", 2);
+}
+
#include "gt-ia64.h"
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index a4e0c7e..c9bb417 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -2043,4 +2043,8 @@ struct machine_function GTY(())
/* Switch on code for querying unit reservations. */
#define CPU_UNITS_QUERY 1
+/* Define this to change the optimizations performed by default. */
+#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
+ ia64_optimization_options ((LEVEL), (SIZE))
+
/* End of ia64.h */
diff --git a/gcc/config/ia64/t-ia64 b/gcc/config/ia64/t-ia64
index e3713f9..6053588 100644
--- a/gcc/config/ia64/t-ia64
+++ b/gcc/config/ia64/t-ia64
@@ -51,4 +51,4 @@ ia64-c.o: $(srcdir)/config/ia64/ia64-c.c $(CONFIG_H) $(SYSTEM_H) \
# genattrtab generates very long string literals.
insn-attrtab.o-warn = -Wno-error
-ia64.o: debug.h
+ia64.o: debug.h $(PARAMS_H)