fix: use unsigned Operand type for immediates

This commit is contained in:
2025-05-15 09:28:28 +09:00
parent 8ff92c81b3
commit 1c7ddbe9fa
2 changed files with 27 additions and 27 deletions

View File

@@ -90,8 +90,8 @@ pub enum Mnemonic {
// ADD
ADD_FromReg(ModRmTarget, Register), // From Register into either Memory or Register
ADD_ToReg(ModRmTarget, Register), // From either Memory or Register into Reigster
ADD_Ib(ModRmTarget, IByte), // From Immediate into either Memory or Register
ADD_Iv(ModRmTarget, IWord), // From Immediate into either Memory or Register
ADD_Ib(ModRmTarget, Byte), // From Immediate into either Memory or Register
ADD_Iv(ModRmTarget, Word), // From Immediate into either Memory or Register
ADD_ALIb(Byte),
ADD_AXIv(Word),
// PUSH
@@ -105,29 +105,29 @@ pub enum Mnemonic {
// OR
OR_FromReg(ModRmTarget, Register),
OR_ToReg(ModRmTarget, Register),
OR_Ib(ModRmTarget, IByte),
OR_Iv(ModRmTarget, IWord),
OR_Ib(ModRmTarget, Byte),
OR_Iv(ModRmTarget, Word),
OR_ALIb(Byte),
OR_AXIv(Word),
// ADC
ADC_FromReg(ModRmTarget, Register),
ADC_ToReg(ModRmTarget, Register),
ADC_Ib(ModRmTarget, IByte),
ADC_Iv(ModRmTarget, IWord),
ADC_Ib(ModRmTarget, Byte),
ADC_Iv(ModRmTarget, Word),
ADC_ALIb(Byte),
ADC_AXIv(Word),
// SBB
SBB_FromReg(ModRmTarget, Register),
SBB_ToReg(ModRmTarget, Register),
SBB_Ib(ModRmTarget, IByte),
SBB_Iv(ModRmTarget, IWord),
SBB_Ib(ModRmTarget, Byte),
SBB_Iv(ModRmTarget, Word),
SBB_ALIb(Byte),
SBB_AXIv(Word),
// AND
AND_FromReg(ModRmTarget, Register),
AND_ToReg(ModRmTarget, Register),
AND_Ib(ModRmTarget, IByte),
AND_Iv(ModRmTarget, IWord),
AND_Ib(ModRmTarget, Byte),
AND_Iv(ModRmTarget, Word),
AND_ALIb(Byte),
AND_AXIv(Word),
// Override
@@ -140,22 +140,22 @@ pub enum Mnemonic {
// SUB
SUB_FromReg(ModRmTarget, Register),
SUB_ToReg(ModRmTarget, Register),
SUB_Ib(ModRmTarget, IByte),
SUB_Iv(ModRmTarget, IWord),
SUB_Ib(ModRmTarget, Byte),
SUB_Iv(ModRmTarget, Word),
SUB_ALIb(Byte),
SUB_AXIv(Word),
// XOR
XOR_FromReg(ModRmTarget, Register),
XOR_ToReg(ModRmTarget, Register),
XOR_Ib(ModRmTarget, IByte),
XOR_Iv(ModRmTarget, IWord),
XOR_Ib(ModRmTarget, Byte),
XOR_Iv(ModRmTarget, Word),
XOR_ALIb(Byte),
XOR_AXIv(Word),
// CMP
CMP_FromReg(ModRmTarget, Register),
CMP_ToReg(ModRmTarget, Register),
CMP_Ib(ModRmTarget, IByte),
CMP_Iv(ModRmTarget, IWord),
CMP_Ib(ModRmTarget, Byte),
CMP_Iv(ModRmTarget, Word),
CMP_ALIb(Byte),
CMP_AXIv(Word),
// INC