mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-25 12:26:51 +01:00
graphics: preserve FP16 inline constants
This commit is contained in:
@@ -157,10 +157,11 @@ bool LowerSourceOperand(const Decoder::Operand& decoded, Operand& operand, std::
|
||||
case Decoder::OperandKind::FloatInlineConstant:
|
||||
operand = {};
|
||||
CopyOperandModifiers(decoded, operand);
|
||||
operand.kind = OperandKind::ImmediateU32;
|
||||
operand.imm = decoded.value;
|
||||
operand.sext_64 = decoded.kind == Decoder::OperandKind::IntegerInlineConstant &&
|
||||
decoded.signed_val < 0;
|
||||
operand.kind = OperandKind::ImmediateU32;
|
||||
operand.imm = decoded.value;
|
||||
operand.float_inline = decoded.kind == Decoder::OperandKind::FloatInlineConstant;
|
||||
operand.sext_64 = decoded.kind == Decoder::OperandKind::IntegerInlineConstant &&
|
||||
decoded.signed_val < 0;
|
||||
return true;
|
||||
case Decoder::OperandKind::Null:
|
||||
case Decoder::OperandKind::PopsExitingWaveId:
|
||||
|
||||
@@ -37,6 +37,7 @@ struct Operand {
|
||||
OperandKind kind = OperandKind::Null;
|
||||
Register reg;
|
||||
uint32_t imm = 0;
|
||||
bool float_inline = false;
|
||||
bool sext_64 = false;
|
||||
uint32_t sdwa_sel = 6;
|
||||
uint32_t sdwa_dst_unused = 2;
|
||||
|
||||
Reference in New Issue
Block a user