This patch adds the AMD znver3 instructions INVLPGB, TLBSYNC and SNP. Tests are also added. These instructions needs to be included for znver3 features after adding Scheduler descriptions.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Target/X86/X86InstrInfo.td | ||
---|---|---|
965 | These feature flags should probably only be here if intrinsics are added. Without that nothing will ever check the features. | |
2935 | TB should be PS since we have XD and XS instructions that use the same opcode. TB is supposed to indicate that 0xf2/0xf3 prefixes don't effect the instruction. | |
2952 | TB should be PS since we have XD and XS opcodes. | |
llvm/lib/Target/X86/X86InstrSNP.td | ||
22 | Should this have In64BitMode in the requires field? | |
36 | Same here | |
41 | And here |
llvm/test/MC/Disassembler/X86/x86-32.txt | ||
---|---|---|
1016–1020 | Are they 64 bit only instructions? |
Updated the patch for the review comments from @craig.topper and @pengfei
- The instructions are updated for prefix specifiers
- Except for pvalidate all the SNP instructions are valid only in 64-bit environment. Corrected the test accordingly.
- The modes (In64BitMode, In64BitMode) are updated in Instruction description.
These feature flags should probably only be here if intrinsics are added. Without that nothing will ever check the features.