gl_shader_decompiler: Implement MOV32_IMM instruction.
This commit is contained in:
parent
3d9126ba87
commit
a7b5ab4d9a
2 changed files with 7 additions and 2 deletions
|
@ -290,7 +290,7 @@ public:
|
||||||
MOV_C,
|
MOV_C,
|
||||||
MOV_R,
|
MOV_R,
|
||||||
MOV_IMM,
|
MOV_IMM,
|
||||||
MOV32I,
|
MOV32_IMM,
|
||||||
SHR_C,
|
SHR_C,
|
||||||
SHR_R,
|
SHR_R,
|
||||||
SHR_IMM,
|
SHR_IMM,
|
||||||
|
@ -445,7 +445,7 @@ private:
|
||||||
INST("0100110010011---", Id::MOV_C, Type::Arithmetic, "MOV_C"),
|
INST("0100110010011---", Id::MOV_C, Type::Arithmetic, "MOV_C"),
|
||||||
INST("0101110010011---", Id::MOV_R, Type::Arithmetic, "MOV_R"),
|
INST("0101110010011---", Id::MOV_R, Type::Arithmetic, "MOV_R"),
|
||||||
INST("0011100-10011---", Id::MOV_IMM, Type::Arithmetic, "MOV_IMM"),
|
INST("0011100-10011---", Id::MOV_IMM, Type::Arithmetic, "MOV_IMM"),
|
||||||
INST("000000010000----", Id::MOV32I, Type::Arithmetic, "MOV32I"),
|
INST("000000010000----", Id::MOV32_IMM, Type::Arithmetic, "MOV32_IMM"),
|
||||||
INST("0100110000101---", Id::SHR_C, Type::Arithmetic, "SHR_C"),
|
INST("0100110000101---", Id::SHR_C, Type::Arithmetic, "SHR_C"),
|
||||||
INST("0101110000101---", Id::SHR_R, Type::Arithmetic, "SHR_R"),
|
INST("0101110000101---", Id::SHR_R, Type::Arithmetic, "SHR_R"),
|
||||||
INST("0011100-00101---", Id::SHR_IMM, Type::Arithmetic, "SHR_IMM"),
|
INST("0011100-00101---", Id::SHR_IMM, Type::Arithmetic, "SHR_IMM"),
|
||||||
|
|
|
@ -620,6 +620,11 @@ private:
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (opcode->GetId()) {
|
switch (opcode->GetId()) {
|
||||||
|
case OpCode::Id::MOV32_IMM: {
|
||||||
|
// mov32i doesn't have abs or neg bits.
|
||||||
|
regs.SetRegisterToFloat(instr.gpr0, 0, GetImmediate32(instr), 1, 1);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case OpCode::Id::FMUL_C:
|
case OpCode::Id::FMUL_C:
|
||||||
case OpCode::Id::FMUL_R:
|
case OpCode::Id::FMUL_R:
|
||||||
case OpCode::Id::FMUL_IMM: {
|
case OpCode::Id::FMUL_IMM: {
|
||||||
|
|
Loading…
Reference in a new issue