aco/tests: use new float control flags

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31172>
This commit is contained in:
Georg Lehmann
2024-09-13 20:14:59 +02:00
committed by Marge Bot
parent 9850f759dd
commit 5c3ea47793
+9 -18
View File
@@ -219,44 +219,35 @@ BEGIN_TEST(optimize.output_modifiers)
/* omod flushes -0.0 to +0.0 */
//>> BB3
//! /* logical preds: BB2, / linear preds: BB2, / kind: */
//! /* logical preds: BB2, / linear preds: BB2, / kind: uniform, */
program->next_fp_mode.denorm32 = fp_denorm_keep;
program->next_fp_mode.denorm16_64 = fp_denorm_keep;
program->next_fp_mode.preserve_signed_zero_inf_nan32 = true;
program->next_fp_mode.preserve_signed_zero_inf_nan16_64 = false;
program->next_fp_mode.preserve_signed_zero_inf_nan16_64 = true;
bld.reset(program->create_and_insert_block());
bld.is_sz_preserve = true;
program->blocks[2].linear_succs.push_back(3);
program->blocks[2].logical_succs.push_back(3);
program->blocks[3].linear_preds.push_back(2);
program->blocks[3].logical_preds.push_back(2);
//! v1: %res18_tmp = v_add_f32 %a, %b
//! v1: %res18 = v_mul_f32 2.0, %res18_tmp
//! v1: (SzPreserve)%res18_tmp = v_add_f32 %a, %b
//! v1: (SzPreserve)%res18 = v_mul_f32 2.0, %res18_tmp
//! p_unit_test 18, %res18
tmp = bld.vop2(aco_opcode::v_add_f32, bld.def(v1), inputs[0], inputs[1]);
writeout(18, bld.vop2(aco_opcode::v_mul_f32, bld.def(v1), Operand::c32(0x40000000u), tmp));
//! v1: %res19 = v_add_f32 %a, %b clamp
//! v1: (SzPreserve)%res19 = v_add_f32 %a, %b clamp
//! p_unit_test 19, %res19
tmp = bld.vop2(aco_opcode::v_add_f32, bld.def(v1), inputs[0], inputs[1]);
writeout(19, bld.vop3(aco_opcode::v_med3_f32, bld.def(v1), Operand::zero(),
Operand::c32(0x3f800000u), tmp));
//>> BB4
//! /* logical preds: BB3, / linear preds: BB3, / kind: uniform, */
program->next_fp_mode.preserve_signed_zero_inf_nan32 = false;
program->next_fp_mode.preserve_signed_zero_inf_nan16_64 = true;
bld.reset(program->create_and_insert_block());
program->blocks[3].linear_succs.push_back(4);
program->blocks[3].logical_succs.push_back(4);
program->blocks[4].linear_preds.push_back(3);
program->blocks[4].logical_preds.push_back(3);
//! v2b: %res20_tmp = v_add_f16 %a, %b
//! v2b: %res20 = v_mul_f16 2.0, %res20_tmp
//! v2b: (SzPreserve)%res20_tmp = v_add_f16 %a, %b
//! v2b: (SzPreserve)%res20 = v_mul_f16 2.0, %res20_tmp
//! p_unit_test 20, %res20
tmp = bld.vop2(aco_opcode::v_add_f16, bld.def(v2b), inputs[0], inputs[1]);
writeout(20, bld.vop2(aco_opcode::v_mul_f16, bld.def(v2b), Operand::c16(0x4000u), tmp));
//! v2b: %res21 = v_add_f16 %a, %b clamp
//! v2b: (SzPreserve)%res21 = v_add_f16 %a, %b clamp
//! p_unit_test 21, %res21
tmp = bld.vop2(aco_opcode::v_add_f16, bld.def(v2b), inputs[0], inputs[1]);
writeout(21, bld.vop3(aco_opcode::v_med3_f16, bld.def(v2b), Operand::c16(0u),