mirror of
https://github.com/Lime3DS/Lime3DS.git
synced 2024-11-23 18:19:21 +01:00
debugger/shader: fix address register for reverted arithmetic op
This commit is contained in:
parent
98cd5164c5
commit
8375fd2aba
@ -183,23 +183,13 @@ QVariant GraphicsVertexShaderModel::data(const QModelIndex& index, int role) con
|
|||||||
print_input(output, src1, swizzle.negate_src1,
|
print_input(output, src1, swizzle.negate_src1,
|
||||||
SelectorToString(swizzle.src1_selector));
|
SelectorToString(swizzle.src1_selector));
|
||||||
AlignToColumn(kInputOperandColumnWidth);
|
AlignToColumn(kInputOperandColumnWidth);
|
||||||
if (src_is_inverted) {
|
print_input(output, src2, swizzle.negate_src2,
|
||||||
print_input(output, src2, swizzle.negate_src2,
|
SelectorToString(swizzle.src2_selector), true,
|
||||||
SelectorToString(swizzle.src2_selector));
|
src_is_inverted ? "" : instr.mad.AddressRegisterName());
|
||||||
} else {
|
|
||||||
print_input(output, src2, swizzle.negate_src2,
|
|
||||||
SelectorToString(swizzle.src2_selector), true,
|
|
||||||
instr.mad.AddressRegisterName());
|
|
||||||
}
|
|
||||||
AlignToColumn(kInputOperandColumnWidth);
|
AlignToColumn(kInputOperandColumnWidth);
|
||||||
if (src_is_inverted) {
|
print_input(output, src3, swizzle.negate_src3,
|
||||||
print_input(output, src3, swizzle.negate_src3,
|
SelectorToString(swizzle.src3_selector), true,
|
||||||
SelectorToString(swizzle.src3_selector), true,
|
src_is_inverted ? instr.mad.AddressRegisterName() : "");
|
||||||
instr.mad.AddressRegisterName());
|
|
||||||
} else {
|
|
||||||
print_input(output, src3, swizzle.negate_src3,
|
|
||||||
SelectorToString(swizzle.src3_selector));
|
|
||||||
}
|
|
||||||
AlignToColumn(kInputOperandColumnWidth);
|
AlignToColumn(kInputOperandColumnWidth);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -222,16 +212,15 @@ QVariant GraphicsVertexShaderModel::data(const QModelIndex& index, int role) con
|
|||||||
SourceRegister src1 = instr.common.GetSrc1(src_is_inverted);
|
SourceRegister src1 = instr.common.GetSrc1(src_is_inverted);
|
||||||
print_input(output, src1, swizzle.negate_src1,
|
print_input(output, src1, swizzle.negate_src1,
|
||||||
swizzle.SelectorToString(false), true,
|
swizzle.SelectorToString(false), true,
|
||||||
instr.common.AddressRegisterName());
|
src_is_inverted ? "" : instr.common.AddressRegisterName());
|
||||||
AlignToColumn(kInputOperandColumnWidth);
|
AlignToColumn(kInputOperandColumnWidth);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: In some cases, the Address Register is used as an index for SRC2
|
|
||||||
// instead of SRC1
|
|
||||||
if (opcode_info.subtype & OpCode::Info::Src2) {
|
if (opcode_info.subtype & OpCode::Info::Src2) {
|
||||||
SourceRegister src2 = instr.common.GetSrc2(src_is_inverted);
|
SourceRegister src2 = instr.common.GetSrc2(src_is_inverted);
|
||||||
print_input(output, src2, swizzle.negate_src2,
|
print_input(output, src2, swizzle.negate_src2,
|
||||||
swizzle.SelectorToString(true));
|
swizzle.SelectorToString(true), true,
|
||||||
|
src_is_inverted ? instr.common.AddressRegisterName() : "");
|
||||||
AlignToColumn(kInputOperandColumnWidth);
|
AlignToColumn(kInputOperandColumnWidth);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user