tree-ssa-alias.c (compute_flow_insensitive_aliasing): Reduce the number of queries to random elements in the ai->written_vars bitmap.

* tree-ssa-alias.c (compute_flow_insensitive_aliasing): Reduce
        the number of queries to random elements in the ai->written_vars
        bitmap.

From-SVN: r91271
This commit is contained in:
Jeff Law 2004-11-24 20:54:07 -07:00 committed by Jeff Law
parent 367390404d
commit 0bab1c8887
2 changed files with 16 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2004-11-24 Jeff Law <law@redhat.com>
* tree-ssa-alias.c (compute_flow_insensitive_aliasing): Reduce
the number of queries to random elements in the ai->written_vars
bitmap.
2004-11-24 Roger Sayle <roger@eyesopen.com>
* config/i386/i386.c (override_options): Disable x87 fancy math

View File

@ -921,11 +921,16 @@ compute_flow_insensitive_aliasing (struct alias_info *ai)
/* Skip memory tags and variables that have never been
written to. We also need to check if the variables are
call-clobbered because they may be overwritten by
function calls. */
tag_stored_p = bitmap_bit_p (ai->written_vars, tag_ann->uid)
|| is_call_clobbered (tag);
var_stored_p = bitmap_bit_p (ai->written_vars, v_ann->uid)
|| is_call_clobbered (var);
function calls.
Note this is effectively random accessing elements in
the sparse bitset, which can be highly inefficient.
So we first check the call_clobbered status of the
tag and variable before querying the bitmap. */
tag_stored_p = is_call_clobbered (tag)
|| bitmap_bit_p (ai->written_vars, tag_ann->uid);
var_stored_p = is_call_clobbered (var)
|| bitmap_bit_p (ai->written_vars, v_ann->uid);
if (!tag_stored_p && !var_stored_p)
continue;