Merge pull request #2109 from FernandoS27/fix-f2i
Corrected F2I None mode to RoundEven.
This commit is contained in:
commit
c1accfefde
|
@ -186,7 +186,7 @@ enum class SubOp : u64 {
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class F2iRoundingOp : u64 {
|
enum class F2iRoundingOp : u64 {
|
||||||
None = 0,
|
RoundEven = 0,
|
||||||
Floor = 1,
|
Floor = 1,
|
||||||
Ceil = 2,
|
Ceil = 2,
|
||||||
Trunc = 3,
|
Trunc = 3,
|
||||||
|
|
|
@ -118,8 +118,8 @@ u32 ShaderIR::DecodeConversion(NodeBlock& bb, u32 pc) {
|
||||||
|
|
||||||
value = [&]() {
|
value = [&]() {
|
||||||
switch (instr.conversion.f2i.rounding) {
|
switch (instr.conversion.f2i.rounding) {
|
||||||
case Tegra::Shader::F2iRoundingOp::None:
|
case Tegra::Shader::F2iRoundingOp::RoundEven:
|
||||||
return value;
|
return Operation(OperationCode::FRoundEven, PRECISE, value);
|
||||||
case Tegra::Shader::F2iRoundingOp::Floor:
|
case Tegra::Shader::F2iRoundingOp::Floor:
|
||||||
return Operation(OperationCode::FFloor, PRECISE, value);
|
return Operation(OperationCode::FFloor, PRECISE, value);
|
||||||
case Tegra::Shader::F2iRoundingOp::Ceil:
|
case Tegra::Shader::F2iRoundingOp::Ceil:
|
||||||
|
@ -146,4 +146,4 @@ u32 ShaderIR::DecodeConversion(NodeBlock& bb, u32 pc) {
|
||||||
return pc;
|
return pc;
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace VideoCommon::Shader
|
} // namespace VideoCommon::Shader
|
||||||
|
|
Reference in New Issue