Message ID | 1466524231-17412-6-git-send-email-james.greenhalgh@arm.com |
---|---|
State | New |
Headers | show |
On 06/21/2016 09:50 AM, James Greenhalgh wrote: > > Hi, > > This transformation tries two cost models, one estimating the number > of insns to use, one estimating the RTX cost of the transformed sequence. > This is inconsistent with the other cost models used in ifcvt.c and > unneccesary - eliminate the second cost model. > > Thanks, > James > > --- > 2016-06-21 James Greenhalgh <james.greenhalgh@arm.com> > > * ifcvt.c (noce_try_store_flag_mask): Delete redundant cost model. OK. At this point I think the series is fully ack'd. Given folks have had nearly a month to object to the overall direction, I think you should go ahead and commit. We can deal with any fallout at the target maintainer level. jeff
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index 8f892b0..0cb8280 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -1668,9 +1668,6 @@ noce_try_store_flag_mask (struct noce_if_info *if_info) if (target) { - int old_cost, new_cost, insn_cost; - int speed_p; - if (target != if_info->x) noce_emit_move_insn (if_info->x, target); @@ -1678,15 +1675,6 @@ noce_try_store_flag_mask (struct noce_if_info *if_info) if (!seq) return FALSE; - speed_p = optimize_bb_for_speed_p (BLOCK_FOR_INSN (if_info->insn_a)); - insn_cost = insn_rtx_cost (PATTERN (if_info->insn_a), speed_p); - /* TODO: Revisit this cost model. */ - old_cost = if_info->max_seq_cost + insn_cost; - new_cost = seq_cost (seq, speed_p); - - if (new_cost > old_cost) - return FALSE; - emit_insn_before_setloc (seq, if_info->jump, INSN_LOCATION (if_info->insn_a)); if_info->transform_name = "noce_try_store_flag_mask";