From 69d04ba246cd5716eb4efd0ad8bc761a2d3ae7ab Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sun, 14 Feb 2016 20:14:37 -0800 Subject: remove insn scheduling (not supported with thumb) --- gcc/local-alloc.c | 53 ----------------------------------------------------- 1 file changed, 53 deletions(-) (limited to 'gcc/local-alloc.c') diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c index 101f16d..1fbb20b 100755 --- a/gcc/local-alloc.c +++ b/gcc/local-alloc.c @@ -1389,51 +1389,8 @@ block_alloc (b) q = qty_order[i]; if (qty_phys_reg[q] < 0) { -#ifdef INSN_SCHEDULING - /* These values represent the adjusted lifetime of a qty so - that it conflicts with qtys which appear near the start/end - of this qty's lifetime. - - The purpose behind extending the lifetime of this qty is to - discourage the register allocator from creating false - dependencies. - - The adjustment value is choosen to indicate that this qty - conflicts with all the qtys in the instructions immediately - before and after the lifetime of this qty. - - Experiments have shown that higher values tend to hurt - overall code performance. - - If allocation using the extended lifetime fails we will try - again with the qty's unadjusted lifetime. */ - int fake_birth = MAX (0, qty_birth[q] - 2 + qty_birth[q] % 2); - int fake_death = MIN (insn_number * 2 + 1, - qty_death[q] + 2 - qty_death[q] % 2); -#endif - if (N_REG_CLASSES > 1) { -#ifdef INSN_SCHEDULING - /* We try to avoid using hard registers allocated to qtys which - are born immediately after this qty or die immediately before - this qty. - - This optimization is only appropriate when we will run - a scheduling pass after reload and we are not optimizing - for code size. */ - if (flag_schedule_insns_after_reload - && !optimize_size - && !SMALL_REGISTER_CLASSES) - { - - qty_phys_reg[q] = find_free_reg (qty_min_class[q], - qty_mode[q], q, 0, 0, - fake_birth, fake_death); - if (qty_phys_reg[q] >= 0) - continue; - } -#endif qty_phys_reg[q] = find_free_reg (qty_min_class[q], qty_mode[q], q, 0, 0, qty_birth[q], qty_death[q]); @@ -1441,16 +1398,6 @@ block_alloc (b) continue; } -#ifdef INSN_SCHEDULING - /* Similarly, avoid false dependencies. */ - if (flag_schedule_insns_after_reload - && !optimize_size - && !SMALL_REGISTER_CLASSES - && qty_alternate_class[q] != NO_REGS) - qty_phys_reg[q] = find_free_reg (qty_alternate_class[q], - qty_mode[q], q, 0, 0, - fake_birth, fake_death); -#endif if (qty_alternate_class[q] != NO_REGS) qty_phys_reg[q] = find_free_reg (qty_alternate_class[q], qty_mode[q], q, 0, 0, -- cgit v1.2.3