aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2014-03-18 14:39:16 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2014-03-18 14:39:16 +0000
commit4ca40f5284cc4b1347d6d9fe9d86ab41b2432599 (patch)
tree30ae31d241290eb7757ed63af732c2bba831fb5a /gcc
parent6404e1906720796f90640720fc3978a543d5f2b0 (diff)
downloadgcc-4ca40f5284cc4b1347d6d9fe9d86ab41b2432599.zip
gcc-4ca40f5284cc4b1347d6d9fe9d86ab41b2432599.tar.gz
gcc-4ca40f5284cc4b1347d6d9fe9d86ab41b2432599.tar.bz2
df-problems.c (df_rd_confluence_n): Avoid bitmap_copy by using bitmap_and_compl instead of bitmap_and_compl_into.
2014-03-18 Richard Biener <rguenther@suse.de> * df-problems.c (df_rd_confluence_n): Avoid bitmap_copy by using bitmap_and_compl instead of bitmap_and_compl_into. (df_rd_transfer_function): Likewise. From-SVN: r208650
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/df-problems.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a971bbe..23c0b19 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2014-03-18 Richard Biener <rguenther@suse.de>
+ * df-problems.c (df_rd_confluence_n): Avoid bitmap_copy
+ by using bitmap_and_compl instead of bitmap_and_compl_into.
+ (df_rd_transfer_function): Likewise.
+
+2014-03-18 Richard Biener <rguenther@suse.de>
+
* doc/lto.texi (fresolution): Fix typo.
2014-03-18 Richard Biener <rguenther@suse.de>
diff --git a/gcc/df-problems.c b/gcc/df-problems.c
index 1c06d61..77f8c99 100644
--- a/gcc/df-problems.c
+++ b/gcc/df-problems.c
@@ -479,8 +479,7 @@ df_rd_confluence_n (edge e)
bitmap_head tmp;
bitmap_initialize (&tmp, &df_bitmap_obstack);
- bitmap_copy (&tmp, op2);
- bitmap_and_compl_into (&tmp, dense_invalidated);
+ bitmap_and_compl (&tmp, op2, dense_invalidated);
EXECUTE_IF_SET_IN_BITMAP (sparse_invalidated, 0, regno, bi)
{
@@ -524,14 +523,13 @@ df_rd_transfer_function (int bb_index)
problem_data = (struct df_rd_problem_data *) df_rd->problem_data;
bitmap_initialize (&tmp, &problem_data->rd_bitmaps);
- bitmap_copy (&tmp, in);
+ bitmap_and_compl (&tmp, in, kill);
EXECUTE_IF_SET_IN_BITMAP (sparse_kill, 0, regno, bi)
{
bitmap_clear_range (&tmp,
DF_DEFS_BEGIN (regno),
DF_DEFS_COUNT (regno));
}
- bitmap_and_compl_into (&tmp, kill);
bitmap_ior_into (&tmp, gen);
changed = !bitmap_equal_p (&tmp, out);
if (changed)