mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
[X86] Convert all the i8imm used by SSE and AVX instructions to u8imm.
This makes the assembler check their size and removes a hack from the disassembler to avoid sign extending the immediate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226645 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -932,6 +932,7 @@ OperandType RecognizableInstr::typeFromString(const std::string &s,
|
||||
TYPE("GR64", TYPE_R64)
|
||||
TYPE("i8mem", TYPE_M8)
|
||||
TYPE("i8imm", TYPE_IMM8)
|
||||
TYPE("u8imm", TYPE_UIMM8)
|
||||
TYPE("GR8", TYPE_R8)
|
||||
TYPE("VR128", TYPE_XMM128)
|
||||
TYPE("VR128X", TYPE_XMM128)
|
||||
@@ -1042,6 +1043,7 @@ RecognizableInstr::immediateEncodingFromString(const std::string &s,
|
||||
ENCODING("i64i32imm", ENCODING_ID)
|
||||
ENCODING("i64i8imm", ENCODING_IB)
|
||||
ENCODING("i8imm", ENCODING_IB)
|
||||
ENCODING("u8imm", ENCODING_IB)
|
||||
// This is not a typo. Instructions like BLENDVPD put
|
||||
// register IDs in 8-bit immediates nowadays.
|
||||
ENCODING("FR32", ENCODING_IB)
|
||||
@@ -1210,6 +1212,7 @@ RecognizableInstr::relocationEncodingFromString(const std::string &s,
|
||||
ENCODING("i64i32imm", ENCODING_ID)
|
||||
ENCODING("i64i8imm", ENCODING_IB)
|
||||
ENCODING("i8imm", ENCODING_IB)
|
||||
ENCODING("u8imm", ENCODING_IB)
|
||||
ENCODING("i64i32imm_pcrel", ENCODING_ID)
|
||||
ENCODING("i16imm_pcrel", ENCODING_IW)
|
||||
ENCODING("i32imm_pcrel", ENCODING_ID)
|
||||
|
Reference in New Issue
Block a user