Noticed when reviewing D143786, we are currently inheriting the x86-64-v* tuning flags from specific CPUs when really we need these to be a mixture of common traits and tuning to avoid specific severe regressions (e.g. popcnt false dependencies).
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Unit Tests
Time | Test | |
---|---|---|
60,120 ms | x64 debian > Clang.Driver::crash-report.cpp |
Event Timeline
llvm/lib/Target/X86/X86.td | ||
---|---|---|
776 | https://github.com/llvm/llvm-project/issues/33216 suggests its still a problem on Skylake/CannonLake as well. |
llvm/lib/Target/X86/X86.td | ||
---|---|---|
776 | says fixed by cannonlake so should be good to drop by v4 (definitely fixed by ICL). |
It looks like we can tweak the tuning flags further once we've split them from the SNB/HSW/SKX variants - I'd like to commit this as an initial NFC patch and then make adjustments (drop TuningSlow3OpsLEA / TuningPOPCNTFalseDeps from X86-64-v4) as follow up reviewed patches once we have better test coverage.
I think this is safe to remove by v4.