From 922afbf30f986173de69721842c2304a117d02d5 Mon Sep 17 00:00:00 2001 From: bernds Date: Mon, 9 Apr 2001 13:54:08 +0000 Subject: [PATCH] Speed up ia64 compilations git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41204 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/config/ia64/ia64.c | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7d3a024a39f..7b97401bf57 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2001-04-05 Bernd Schmidt + + * ia64.c (ia64_flag_schedule_insns2): New variable. + (ia64_override_options): Initialize it. Clear + flag_schedule_insns_after_reload. + (ia64_reorg): Only do scheduling if ia64_flag_schedule_insns2. + Mon Apr 9 15:09:13 CEST 2001 Jan Hubicka * i386.md (truncdfsf2_*): Add i387->int/sse reg alternatives; diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 4f74fa7fe07..17f5768c6ec 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -91,6 +91,10 @@ static const char * const ia64_output_reg_names[8] = /* String used with the -mfixed-range= option. */ const char *ia64_fixed_range_string; +/* Determines whether we run our final scheduling pass or not. We always + avoid the normal second scheduling pass. */ +static int ia64_flag_schedule_insns2; + /* Variables which are this size or smaller are put in the sdata/sbss sections. */ @@ -3715,6 +3719,9 @@ ia64_override_options () if (ia64_fixed_range_string) fix_range (ia64_fixed_range_string); + ia64_flag_schedule_insns2 = flag_schedule_insns_after_reload; + flag_schedule_insns_after_reload = 0; + ia64_section_threshold = g_switch_set ? g_switch_value : IA64_DEFAULT_GVALUE; init_machine_status = ia64_init_machine_status; @@ -6213,7 +6220,7 @@ ia64_reorg (insns) find_basic_blocks (insns, max_reg_num (), NULL); life_analysis (insns, NULL, PROP_DEATH_NOTES); - if (optimize) + if (ia64_flag_schedule_insns2) { ia64_final_schedule = 1; schedule_ebbs (rtl_dump_file); -- 2.11.4.GIT