Hi.

After r9-1623-gc518c1025b435e1c593a745036fc9b8ed04c5819 the code was changed to:

-         if (align_jumps_max_skip <= 0)
-           align_jumps_max_skip = 15;
-         if (align_loops_max_skip <= 0)
-           align_loops_max_skip = 15;
+
+         if (flag_align_jumps && !str_align_jumps)
+           str_align_jumps = "16";
+         if (flag_align_loops && !str_align_loops)
+           str_align_loops = "16";

which for situation where align_* was 0 caused that max_skip didn't play any 
role.
My code wrongly changed that to str_align_jumps, which is now the was which 
includes
both alignment (and max skip). The hunk should not be here.

Patch can bootstrap on ppc64le-linux-gnu and survives regression tests.

Ready to be installed?
Thanks,
Martin

gcc/ChangeLog:

2020-03-05  Martin Liska  <mli...@suse.cz>

        PR target/93800
        * config/rs6000/rs6000.c (rs6000_option_override_internal):
        Remove set of str_align_loops and str_align_jumps as these
        should be set in previous 2 conditions in the function.
---
 gcc/config/rs6000/rs6000.c | 5 -----
 1 file changed, 5 deletions(-)


diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index ecbf7ae0c59..848a4ef451e 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -4363,11 +4363,6 @@ rs6000_option_override_internal (bool global_init_p)
 		  str_align_loops = "16";
 		}
 	    }
-
-	  if (flag_align_jumps && !str_align_jumps)
-	    str_align_jumps = "16";
-	  if (flag_align_loops && !str_align_loops)
-	    str_align_loops = "16";
 	}
 
       /* Arrange to save and restore machine status around nested functions.  */

Reply via email to