February 26, 2016
http://bugzilla.gdcproject.org/show_bug.cgi?id=213

            Bug ID: 213
           Summary: Compiler fails when compare two wrapped SIMD vectors
                    (give up with internal error)
           Product: GDC
           Version: development
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gdc
          Assignee: ibuclaw@gdcproject.org
          Reporter: iaktakh@gmail.com

Compiler fails with internal error when compare two wrapped into struct SIMD
vectors
No crash with ordinal types like (int) or B{int i;}
Note: simd vectors doesn't provide opEquals, you should use v1.array ==
v2.array

Code:

import core.simd;

struct S
{
    int4 vec;
}
void main()
{
    S s, b;
    assert(s == b);
}

dub test --compiler=gdc

gdc-catch-bug ~master: building configuration "application"...
source/app.d: In function 'D main':
source/app.d:7:6: internal compiler error: in prepare_cmp_insn, at
optabs.c:4234
 void main()
      ^
gdc --version
gdc (GCC) 5.3.0

OS: ArchLinux, x86_64

-- 
You are receiving this mail because:
You are watching all bug changes.