[PATCH] Restore alignment in rs6000 target.
Martin Liška
mliska@suse.cz
Mon Mar 9 13:08:32 GMT 2020
On 3/6/20 6:07 PM, Segher Boessenkool wrote:
> On Fri, Mar 06, 2020 at 02:07:15PM +0100, Martin Liška wrote:
>> 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.
>
> Do you have a testsuite test as well? Or, how else was this checked?
Yes, I've extended the patch by addition of a test-case.
>
>> 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.
>
> Okay for trunk, maybe with an added test. Thanks!
I'm going to install the patch.
Martin
>
>
> Segher
>
More information about the Gcc-patches
mailing list