diff options
author | YamaArashi <shadow962@live.com> | 2016-02-14 20:14:37 -0800 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-02-14 20:14:37 -0800 |
commit | 69d04ba246cd5716eb4efd0ad8bc761a2d3ae7ab (patch) | |
tree | f32e0530782cc8b6e2d84d6026e699fa3b93d165 /gcc/local-alloc.c | |
parent | 0aebbdf6f7c204a0453892a0f946ce3821b6b6ca (diff) |
remove insn scheduling (not supported with thumb)
Diffstat (limited to 'gcc/local-alloc.c')
-rwxr-xr-x | gcc/local-alloc.c | 53 |
1 files changed, 0 insertions, 53 deletions
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, |