www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15873] New: In order to implement std.simd, compile time info


          Issue ID: 15873
           Summary: In order to implement std.simd, compile time info
                    about CPU specifics is needed
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: blocker
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: jack jackstouffer.com

To quote Manu,

"I still have no way to detect what simd version was supplied to the compiler
on the command line on GCC/Clang, and DMD has no such concept. The library
can't emit opcodes that violate the simd level request made to the compiler; I
need to know the level requested and then I can produce the best code for that
level using static if."

This also is blocking std.blas, to quote Ilya,

"I am working on BLAS from scratch implementation. And it is no hope to create
something useable without CT information about target.
Target cpu configuration:
- CPU architecture (done)
- Count of FP/Integer registers
- Allowed sets of instructions: for example, AVX2, FMA4
- Compiler optimization options (for math)"

Apr 04 2016