aboutsummaryrefslogtreecommitdiff
path: root/gcc/regclass.c
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@freesoft.cz>1999-12-14 13:56:06 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>1999-12-14 12:56:06 +0000
commit2f12c89d4ce0f6729eee90a81208bcd87af3c0eb (patch)
tree7d5aa69d79ff7dd9a704f13d722d9c85e7a48a57 /gcc/regclass.c
parentafdac905840a1d37db1ba2510bc3ecee7b307d8c (diff)
downloadgcc-2f12c89d4ce0f6729eee90a81208bcd87af3c0eb.zip
gcc-2f12c89d4ce0f6729eee90a81208bcd87af3c0eb.tar.gz
gcc-2f12c89d4ce0f6729eee90a81208bcd87af3c0eb.tar.bz2
regclass.c (scan_one_insn): Set loop_cost to 1 when optimizing for size.
* regclass.c (scan_one_insn): Set loop_cost to 1 when optimizing for size. From-SVN: r30918
Diffstat (limited to 'gcc/regclass.c')
-rw-r--r--gcc/regclass.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/regclass.c b/gcc/regclass.c
index a67d91e..e8eca4d 100644
--- a/gcc/regclass.c
+++ b/gcc/regclass.c
@@ -829,9 +829,14 @@ scan_one_insn (insn, pass)
if (code == NOTE)
{
if (NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_BEG)
- loop_depth++, loop_cost = 1 << (2 * MIN (loop_depth, 5));
+ loop_depth++;
else if (NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_END)
- loop_depth--, loop_cost = 1 << (2 * MIN (loop_depth, 5));
+ loop_depth--;
+
+ if (optimize_size)
+ loop_cost = 1;
+ else
+ loop_cost = 1 << (2 * MIN (loop_depth, 5));
return insn;
}