mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-23 07:00:27 +08:00
Use FOR_EACH_IMM_USE_FAST in gimple-ssa-backprop.c
As pointed out by Richard in PR63155. It speeds up the testcase a few %. 2018-10-08 Richard Sandiford <richard.sandiford@arm.com> gcc/ PR middle-end/63155 * gimple-ssa-backprop.c (backprop::intersect_uses): Use FOR_EACH_IMM_USE_FAST instead of FOR_EACH_IMM_USE_STMT. From-SVN: r264941
This commit is contained in:
parent
be86efa7cc
commit
91a3cbb4d2
@ -1,3 +1,9 @@
|
||||
2018-10-08 Richard Sandiford <richard.sandiford@arm.com>
|
||||
|
||||
PR middle-end/63155
|
||||
* gimple-ssa-backprop.c (backprop::intersect_uses): Use
|
||||
FOR_EACH_IMM_USE_FAST instead of FOR_EACH_IMM_USE_STMT.
|
||||
|
||||
2018-10-08 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR target/87517
|
||||
|
@ -496,10 +496,11 @@ bool
|
||||
backprop::intersect_uses (tree var, usage_info *info)
|
||||
{
|
||||
imm_use_iterator iter;
|
||||
gimple *stmt;
|
||||
use_operand_p use_p;
|
||||
*info = usage_info::intersection_identity ();
|
||||
FOR_EACH_IMM_USE_STMT (stmt, iter, var)
|
||||
FOR_EACH_IMM_USE_FAST (use_p, iter, var)
|
||||
{
|
||||
gimple *stmt = USE_STMT (use_p);
|
||||
if (is_gimple_debug (stmt))
|
||||
continue;
|
||||
gphi *phi = dyn_cast <gphi *> (stmt);
|
||||
@ -523,10 +524,7 @@ backprop::intersect_uses (tree var, usage_info *info)
|
||||
process_use (stmt, var, &subinfo);
|
||||
*info &= subinfo;
|
||||
if (!info->is_useful ())
|
||||
{
|
||||
BREAK_FROM_IMM_USE_STMT (iter);
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user