www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15933] New: GDC support for core.cpuid


          Issue ID: 15933
           Summary: GDC support for core.cpuid
           Product: D
           Version: D2
          Hardware: x86_64
                OS: All
            Status: NEW
          Severity: minor
          Priority: P1
         Component: druntime
          Assignee: nobody puremagic.com
          Reporter: Marco.Leise gmx.de

GDC does not implement DMD style inline assembly, but offers another inline
assembly mechanism called extended assembler where the asm block is a template
filled out by the compiler and passed to an external assembler executable that
understands either AT&T or Intel style on x86.

In the simplest form core.cpuid needs a few versioned asm blocks for GDC that
duplicate what the DMD asm blocks do.

Another idea is to replace the accessor properties with direct access to the
global constants (mmx, hasPopcnt, etc.) to work around GDC's inability to
inline across modules.

Apr 16 2016