I am autotuning for x86 using this tutorial, and I am trying to choose the correct llvm target string (option for -mcpu).
According to How to choose the correct the target for CPU?, I should just use the CPU architecture codename, such as broadwell. But in the tutorial, they add -avx2 or -avx512 at the end of the name.
So here are my questions:
How do I choose the correct value for -mcpu?
What happens if I do not specify anything (e.g. only llvm as target)?
Both llvm -mcpu=kabylake and llvm -mcpu=kabylake-avx2 show this error:
'kabylake' is not a recognized processor for this target (ignoring processor)
LLVM ERROR: 64-bit code requested on a subtarget that doesn't support it!