This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug ipa/65334] [5 Regression] r221099 caused: FAIL: gfortran.fortran-torture/execute/in-pack.f90 execution, -O2 -ftree-vectorize -msse2


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

--- Comment #2 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
We ICE at:
   0x080486d9 <+409>:   cmp    %eax,%ebx
   0x080486db <+411>:   jge    0x80486c8 <isub4_+392>
=> 0x080486dd <+413>:   movdqa 0x80cf41c,%xmm7
   0x080486e5 <+421>:   movl   $0x5,0x10(%edi)
   0x080486ec <+428>:   movups %xmm7,(%edi)
   0x080486ef <+431>:   mov    %esi,0x30(%esp)
   0x080486f3 <+435>:   add    $0x1c,%esp
   0x080486f6 <+438>:   pop    %ebx
   0x080486f7 <+439>:   pop    %esi
   0x080486f8 <+440>:   pop    %edi
   0x080486f9 <+441>:   pop    %ebp

so this is an alignment issue.
        movdqa  A.22.3410, %xmm7
        movl    $5, 16(%edi)
        movups  %xmm7, (%edi)

The var is defined as follows:
        .long   1
        .align 4
        .type   A.94.3694, @object
        .size   A.94.3694, 20
A.94.3694:
        .long   1
        .long   2
        .long   3
        .long   4
        .long   5
        .set    A.22.3410,A.94.3694

so it is not actually aligned.  Without ICF we get:
        .align 16
        .type   A.22.3410, @object
        .size   A.22.3410, 20
A.22.3410:
        .long   1
        .long   2
        .long   3
        .long   4
        .long   5

So this is an increase_alignment bug - it does not consider aliases.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]