Skip to content

Conversation

yjh-styx
Copy link
Contributor

RDRAND <> SENDUIPI
RDSEED <> RDPID
VMCALL <> VMGEXIT
WRSSD/WRSSQ <> ADCX/ADOX
RDPKRU/WRPKRU <> CLUI/STUI
BNDLDX/BNDSTX <> BNDMOV

 RDRAND <> SENDUIPI
 RDSEED <> RDPID
 VMCALL <> VMGEXIT
 WRSSD/WRSSQ   <> ADCX/ADOX
 RDPKRU/WRPKRU <> CLUI/STUI
 BNDLDX/BNDSTX <> BNDMOV
@yjh-styx
Copy link
Contributor Author

2 Peter Anvin:
According to your comment on PR#147, there won't be any actual collisions in the disassembler due to the selection of commands with a minimal number of prefixes. However... perhaps you'll find these references (or some of them) useful to include. :)

@hpax
Copy link
Member

hpax commented Oct 17, 2025

It is better, though, to be explicit... if nothing else because otherwise strange things can happen when and if code is moved around.

@yjh-styx
Copy link
Contributor Author

It seems to me that if the constraints are explicitly set,
no permutations will have any effect unless the "paired" command disappears.

@yjh-styx
Copy link
Contributor Author

Regarding the 'vmx' travis test (which is rejected during test PR), Intel SDE v9.58 agrees that the prefixes F2/F3 are unacceptable for command vmcall :)

xed.exe -64 -d 0f 01 c1
0F01C1
ICLASS: VMCALL
CATEGORY: VTX
EXTENSION: VTX
IFORM: VMCALL
ISA_SET: VTX
ATTRIBUTES: NOTSX
SHORT: vmcall

xed.exe -64 -d f2 0f 01 c1
F20F01C1
ERROR: GENERAL_ERROR Could not decode at offset: 0x0 len: 4 PC: 0x0: [F20F01C1]

xed.exe -64 -d f3 0f 01 c1
F30F01C1
ERROR: GENERAL_ERROR Could not decode at offset: 0x0 len: 4 PC: 0x0: [F30F01C1]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants