[Issue 6643] Very slow compilation for large switch() using -O and -inline

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Sep 11 08:26:25 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=6643


yebblies <yebblies at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |performance
                 CC|                            |yebblies at gmail.com
           Platform|x86                         |All
            Version|D2                          |D1 & D2
         OS/Version|Windows                     |All


--- Comment #6 from yebblies <yebblies at gmail.com> 2011-09-12 01:26:07 EST ---
This is (from what I can see) a problem with the optimizer, a similar kind of
bug to issue 2396.  It doesn't seem to have anything to do with the switch, but
looks like a slow algorithm trying to reorder assignments, and choking on a
2000+ line function.
Doing some regex magic and placing each case block in a (){}(); delegate call
gives normal compile times for me.  Maybe this will be a suitable workaround
for you.
Unfortunately there are far fewer people working on the dmd backend than the
frontend, so depending on the difficulty it may be a while before this is
fixed.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list