2 ms·
>Also: if icc is going to go with LLVM as a backend, then what is the point of using icc at all? Why not just use clang? I assumed the icc secret sauce was in
by zetalyrae 5y ago
>Also: if icc is going to go with LLVM as a backend, then what is the point of using icc at all? Why not just use clang?
I assumed the icc secret sauce was in the backend: deep knowledge of how each and every single operation is implemented in every uarch.
Maybe they've written their own x86 backend for LLVM, and are using the rest of LLVM for IR->IR transformations and vectorization?
- mshockwave 5y agoExactly, many comments here are saying the difference is in LLVM IR ("middle-end") optimizations but IMHO more secrets are hidden in the backend. For example the latency of different instructions (and their operands) which has huge impact on the overall scheduling.