diff options
author | jamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-03-20 16:20:22 +0000 |
---|---|---|
committer | jamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-03-20 16:20:22 +0000 |
commit | 3a1cb8792983ea651ae73057130ae413de312e2d (patch) | |
tree | a434eb85e3009252d458c9b59655cf3c3b1a0e64 /gcc/ipa-cp.c | |
parent | 33a2d887b9b3f0a01369c43b3194a5ea15fdff8e (diff) | |
download | gcc-3a1cb8792983ea651ae73057130ae413de312e2d.tar.gz |
2013-03-20 Martin Jambor <mjambor@suse.cz>
* params.def (PARAM_IPA_CP_ARRAY_INDEX_HINT_BONUS): New parameter.
* ipa-cp.c (hint_time_bonus): Add abonus for known array indices.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196832 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-cp.c')
-rw-r--r-- | gcc/ipa-cp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index d01b053a3f9..69d7d23acb2 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -1622,9 +1622,12 @@ devirtualization_time_bonus (struct cgraph_node *node, static int hint_time_bonus (inline_hints hints) { + int result = 0; if (hints & (INLINE_HINT_loop_iterations | INLINE_HINT_loop_stride)) - return PARAM_VALUE (PARAM_IPA_CP_LOOP_HINT_BONUS); - return 0; + result += PARAM_VALUE (PARAM_IPA_CP_LOOP_HINT_BONUS); + if (hints & INLINE_HINT_array_index) + result += PARAM_VALUE (PARAM_IPA_CP_ARRAY_INDEX_HINT_BONUS); + return result; } /* Return true if cloning NODE is a good idea, given the estimated TIME_BENEFIT |