Patchwork Fix PR48182

login
register
mail settings
Submitter Marek Polacek
Date April 8, 2013, 6:48 a.m.
Message ID <20130408064822.GJ24873@redhat.com>
Download mbox | patch
Permalink /patch/234588/
State New
Headers show

Comments

Marek Polacek - April 8, 2013, 6:48 a.m.
On Fri, Apr 05, 2013 at 03:00:43PM -0600, Jeff Law wrote:
> On 04/05/2013 02:50 PM, Jakub Jelinek wrote:
> >On Fri, Apr 05, 2013 at 02:42:19PM -0600, Jeff Law wrote:
> >>?  I must be missing something, the change causes an early bail out
> >>from try_crossjump_to_edge.
> >>
> >>We don't want to raise the min to > 0 as that doesn't allow the user
> >>to turn on this specific transformation.
> >
> >The condition is
> >   if (nmatch < PARAM_VALUE (PARAM_MIN_CROSSJUMP_INSNS))
> >     return false; // aka "don't crossjump"
> >So, the smaller the N in --param min-crossjump-insns=N is, the more likely
> >we crossjump.  Thus N=0 should mean that it is most likely we crossjump,
> >and as N=1 requires that at least one insn matches, N=0 would mean that
> >even zero insns can match.  If we for --param min-crossjump-insns=0
> >always return false, it means we never crossjump, so it is least likely
> >that we crossjump, which corresponds to largest possible N, not smallest
> >one.
> Yes the smaller the N, the more likely we are to crossjump, of
> course the value 0 would make no sense (I'm clearly out of practice
> on reviews :-).
> 
> Yea, changing the min value in params.def to 1 would be a better way
> to fix.  Consider that patch pre-approved.

Ok, thanks.  I'll apply this one.  Regtest/bootstrap pending.

2013-04-08  Marek Polacek  <polacek@redhat.com>

	PR rtl-optimization/48182
	* params.def (PARAM_MIN_CROSSJUMP_INSNS): Increase the minimum
	value to 1.


	Marek
Jakub Jelinek - April 8, 2013, 6:54 a.m.
On Mon, Apr 08, 2013 at 08:48:22AM +0200, Marek Polacek wrote:
> > Yea, changing the min value in params.def to 1 would be a better way
> > to fix.  Consider that patch pre-approved.
> 
> Ok, thanks.  I'll apply this one.  Regtest/bootstrap pending.

Thanks.  Also ok for 4.8.

> 2013-04-08  Marek Polacek  <polacek@redhat.com>
> 
> 	PR rtl-optimization/48182
> 	* params.def (PARAM_MIN_CROSSJUMP_INSNS): Increase the minimum
> 	value to 1.
> 
> --- gcc/params.def.mp	2013-04-08 08:38:48.515263034 +0200
> +++ gcc/params.def	2013-04-08 08:39:10.444340238 +0200
> @@ -433,7 +433,7 @@ DEFPARAM(PARAM_MAX_CROSSJUMP_EDGES,
>  DEFPARAM(PARAM_MIN_CROSSJUMP_INSNS,
>       "min-crossjump-insns",
>       "The minimum number of matching instructions to consider for crossjumping",
> -     5, 0, 0)
> +     5, 1, 0)
>  
>  /* The maximum number expansion factor when copying basic blocks.  */
>  DEFPARAM(PARAM_MAX_GROW_COPY_BB_INSNS,

	Jakub

Patch

--- gcc/params.def.mp	2013-04-08 08:38:48.515263034 +0200
+++ gcc/params.def	2013-04-08 08:39:10.444340238 +0200
@@ -433,7 +433,7 @@  DEFPARAM(PARAM_MAX_CROSSJUMP_EDGES,
 DEFPARAM(PARAM_MIN_CROSSJUMP_INSNS,
      "min-crossjump-insns",
      "The minimum number of matching instructions to consider for crossjumping",
-     5, 0, 0)
+     5, 1, 0)
 
 /* The maximum number expansion factor when copying basic blocks.  */
 DEFPARAM(PARAM_MAX_GROW_COPY_BB_INSNS,