diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2010-07-27 19:29:48 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <mkuvyrkov@gcc.gnu.org> | 2010-07-27 19:29:48 +0000 |
commit | 2016034718e8074a6c222c71fd528846a32cfcd6 (patch) | |
tree | 5230a8924f60a6f3b8ae64ec9b7f69f6d703a3db /gcc/params.h | |
parent | 9b77478248366c7165ea89c8051677ea35333369 (diff) | |
download | gcc-2016034718e8074a6c222c71fd528846a32cfcd6.tar.gz |
gcse.c (struct expr:max_distance): New field.
* gcse.c (struct expr:max_distance): New field.
(doing_code_hoisting_p): New static variable.
(want_to_gcse_p): Change signature. Allow constrained hoisting of
simple expressions, don't change behavior for PRE. Set max_distance.
(insert_expr_in_table): Set new max_distance field.
(hash_scan_set): Update.
(hoist_expr_reaches_here_p): Stop search after max_distance
instructions.
(find_occr_in_bb): New static function. Use it in ...
(hoist_code): Calculate sizes of basic block before any changes are
done. Pass max_distance to hoist_expr_reaches_here_p.
(one_code_hoisting_pass): Set doing_code_hoisting_p.
* params.def (PARAM_GCSE_COST_DISTANCE_RATIO,)
(PARAM_GCSE_UNRESTRICTED_COST): New parameters.
* params.h (GCSE_COST_DISTANCE_RATIO, GCSE_UNRESTRICTED_COST): New
macros.
* doc/invoke.texi (gcse-cost-distance-ratio, gcse-unrestricted-cost):
Document.
From-SVN: r162589
Diffstat (limited to 'gcc/params.h')
-rw-r--r-- | gcc/params.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/params.h b/gcc/params.h index 833fc3bb2f1..174edc13f42 100644 --- a/gcc/params.h +++ b/gcc/params.h @@ -125,6 +125,10 @@ typedef enum compiler_param PARAM_VALUE (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION) #define GCSE_AFTER_RELOAD_CRITICAL_FRACTION \ PARAM_VALUE (PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION) +#define GCSE_COST_DISTANCE_RATIO \ + PARAM_VALUE (PARAM_GCSE_COST_DISTANCE_RATIO) +#define GCSE_UNRESTRICTED_COST \ + PARAM_VALUE (PARAM_GCSE_UNRESTRICTED_COST) #define MAX_UNROLLED_INSNS \ PARAM_VALUE (PARAM_MAX_UNROLLED_INSNS) #define MAX_SMS_LOOP_NUMBER \ |