https://issues.dlang.org/show_bug.cgi?id=15873
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: [email protected]
Reporter: [email protected]
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)"
--