https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70130

Alan Modra <amodra at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |NEW

--- Comment #8 from Alan Modra <amodra at gmail dot com> ---
Confirmed.  So with "images" (the ImageParameters struct) 16-byte aligned, the
misaligned code path is taken through Loop_err.  With images not 16-byte
aligned, img->mprr_2 *is* 16-byte aligned, and we take the vectorized code
path.  Which is buggy.

This is the first difference in img->mprr2 on exit from Loop_err, "images"
aligned case, ie. non-vectorized
(gdb) 
0x1012e548 <images+5528>:       0xd710d710
(gdb) 
0x1012e54c <images+5532>:       0xd710d710
(gdb) 
0x1012e550 <images+5536>:       0xd710d710
(gdb) 
0x1012e554 <images+5540>:       0xd710d710
(gdb) 
0x1012e558 <images+5544>:       0xd710d710
(gdb) 
0x1012e55c <images+5548>:       0xd710d710
(gdb) 
0x1012e560 <images+5552>:       0xd710d710
(gdb) 
0x1012e564 <images+5556>:0xd710d710

versus "images" not aligned, ie. taking vectorized path
(gdb) 
0x1012e540 <images+5528>:       0x00000000
(gdb) 
0x1012e544 <images+5532>:       0x00000000
(gdb) 
0x1012e548 <images+5536>:       0x00000000
(gdb) 
0x1012e54c <images+5540>:       0x00000000
(gdb) 
0x1012e550 <images+5544>:       0x00000000
(gdb) 
0x1012e554 <images+5548>:       0x00000000
(gdb) 
0x1012e558 <images+5552>:       0x00000000
(gdb) 
0x1012e55c <images+5556>:       0x00000000

This is img->mprr_2[1][7][0..15]

Reply via email to