Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
You might be better off splitting this into tuning-shuffle-permilps.ll (although keep AVX512 test coverage here as well) and tuning-shuffle-permilps-avx512.ll
llvm/test/CodeGen/X86/tuning-shuffle-permilps.ll | ||
---|---|---|
3 | CHECK-AV? Maybe CHECK-AVX and CHECK-AVX1 ? |
What do you mean? As in move the masked-predicate versions to a seperate test file and keep avx512 targets? Or something else?
Also would you prefer the same for the unpckpd tests (added masked versions for them as well).
The 512-bit and masked predicate cases - I'm also concerned whether the Z128/Z256 cases are being correctly tested or the evex-vec pass has already converted them to the regular xmm/ymm variants
The tuning pass is before evex-vex so we should be OK - it might be worth adding to the avx512 file a single additional RUN for "-mcpu=x86-86-v4 --show-mc-encoding" that greps that we have no "EVEX TO VEX Compression" strings
How do I add check-not for a grep? Any example test you can point me at?
Figures it out although it's in output.
I don't think this works. Even if x86fixupinsttuning runs first, even to vex compression will eventually run and be in the output.
What about -stop-before=x86-evex-to-vex-compress ? (Sorry I haven't used this much before)
In D143787 we assert the order of passes in llvm/test/CodeGen/X86/opt-pipeline.ll and we have:
... ; CHECK-NEXT: X86 Fixup Inst Tuning ; CHECK-NEXT: Compressing EVEX instrs to VEX encoding when possible ...
So that should be sufficient for ordering no?
CHECK-AV? Maybe CHECK-AVX and CHECK-AVX1 ?