================
@@ -164,6 +164,9 @@ bool X86TargetInfo::initFeatureMap(
for (const char *Sub :
{"egpr", "push2pop2", "ppx", "ndd", "ccmp", "nf", "zu", "jmpabs"})
setFeatureEnabled(Features, Sub, true);
+ // APX (EVEX) implies AVX-512, and WinCall expects every instruction to be
+ // EVEX-encoded so that no vzeroupper is needed at WinCall boundaries.
+ setFeatureEnabled(Features, "avx512f", true);
----------------
trcrsired wrote:
"What do you think about pass i128/i256/i512 (_BitInt) arguments via
XMM/YMM/ZMM?"
Very bad. we should avoid floating point registers as much as possible. Many
kernels have strict rules on banning floating point registers. Plus fp
registers can have latency issues and others. Just use GPRs when we can.
https://github.com/llvm/llvm-project/pull/215585
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits