www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15206] New: ICE on optimized build, tym = x1d Internal error:

https://issues.dlang.org/show_bug.cgi?id=15206

          Issue ID: 15206
           Summary: ICE on optimized build, tym = x1d Internal error:
                    backend\cgxmm.c 547
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Windows
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: h1054820 trbvm.com

Works fine on debug but, on optimized builds (-O -release -inline
-noboundscheck) it takes a lot longer to build and finally outputs:

tym = x1d
Internal error: backend\cgxmm.c 547

It's specifically the -O flag that causes this.

Tried to minimize with dustmite, but it's still way too big to post here.

I don't really have a clue if this is the cause, but the biggest 'component' of
the reduced dustmite case is a system that builds custom compile-time type info
and shoves it into a hashmap. Then builds some data arrays, switches and the
runtime part of the system using those.

--
Oct 15 2015