aco/print_ir: only print 'lateKill' if requested via print_kill flag

Also only print lateKill for actually killed operands.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34359>
This commit is contained in:
Daniel Schürmann 2025-04-02 14:24:04 +02:00 committed by Marge Bot
parent a9645fdd89
commit 6aabcb02a1
2 changed files with 18 additions and 16 deletions

View file

@ -979,14 +979,16 @@ aco_print_operand(const Operand* operand, FILE* output, unsigned flags)
print_reg_class(operand->regClass(), output);
fprintf(output, "undef");
} else {
if (operand->isLateKill())
fprintf(output, "(latekill)");
if (operand->is16bit())
fprintf(output, "(is16bit)");
if (operand->is24bit())
fprintf(output, "(is24bit)");
if ((flags & print_kill) && operand->isKill())
fprintf(output, "(kill)");
if ((flags & print_kill) && operand->isKill()) {
if (operand->isLateKill())
fprintf(output, "(lateKill)");
else
fprintf(output, "(kill)");
}
if (!(flags & print_no_ssa))
fprintf(output, "%%%d%s", operand->tempId(), operand->isFixed() ? ":" : "");

View file

@ -36,7 +36,7 @@ BEGIN_TEST(d3d11_derivs.simple)
//>> v1: %y = v_interp_p2_f32 (kill)%_, (kill)%_:m0, (kill)%_ attr0.y
//>> lv2: %wqm = p_start_linear_vgpr (kill)%x, (kill)%y
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2d
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -77,7 +77,7 @@ BEGIN_TEST(d3d11_derivs.constant)
//>> v1: %x = v_interp_p2_f32 (kill)%_, (kill)%_:m0, (kill)%_ attr0.x
//>> lv2: %wqm = p_start_linear_vgpr (kill)%x, -0.5
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2d
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -148,7 +148,7 @@ BEGIN_TEST(d3d11_derivs.bias)
//>> s2: %_:s[0-1], s1: %_:s[2], s1: %_:s[3], s1: %_:s[4], v2: %_:v[0-1], v1: %bias:v[2] = p_startpgm
//>> lv3: %wqm = p_start_linear_vgpr v1: undef, (kill)%_, (kill)%_
//>> BB1
//>> v4: %_ = image_sample_b (kill)%_, (kill)%_, v1: undef, (latekill)%wqm, (kill)%bias 2d
//>> v4: %_ = image_sample_b (kill)%_, (kill)%_, v1: undef, %wqm, (kill)%bias 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -191,7 +191,7 @@ BEGIN_TEST(d3d11_derivs.offset)
//>> lv3: %wqm = p_start_linear_vgpr v1: undef, (kill)%_, (kill)%_
//>> BB1
//>> v1: %offset = p_parallelcopy 0x201
//>> v4: %_ = image_sample_o (kill)%_, (kill)%_, v1: undef, (latekill)%wqm, (kill)%offset 2d
//>> v4: %_ = image_sample_o (kill)%_, (kill)%_, v1: undef, %wqm, (kill)%offset 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -236,7 +236,7 @@ BEGIN_TEST(d3d11_derivs.array)
//>> v1: %layer = v_rndne_f32 (kill)%_
//>> lv3: %wqm = p_start_linear_vgpr (kill)%_, (kill)%_, (kill)%layer
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2darray da
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2darray da
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -283,7 +283,7 @@ BEGIN_TEST(d3d11_derivs.bias_array)
//>> v1: %layer = v_rndne_f32 (kill)%_
//>> lv4: %wqm = p_start_linear_vgpr v1: undef, (kill)%_, (kill)%_, (kill)%layer
//>> BB1
//>> v4: %_ = image_sample_b (kill)%_, (kill)%_, v1: undef, (latekill)%wqm, (kill)%bias 2darray da
//>> v4: %_ = image_sample_b (kill)%_, (kill)%_, v1: undef, %wqm, (kill)%bias 2darray da
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -328,7 +328,7 @@ BEGIN_TEST(d3d11_derivs._1d_gfx9)
//>> v1: %x = v_interp_p2_f32 (kill)%_, (kill)%_:m0, (kill)%_ attr0.x
//>> lv2: %wqm = p_start_linear_vgpr (kill)%x, 0.5
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2d
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -370,7 +370,7 @@ BEGIN_TEST(d3d11_derivs._1d_array_gfx9)
//>> v1: %x = v_interp_p2_f32 (kill)%_, (kill)%_:m0, (kill)%_ attr0.x
//>> lv3: %wqm = p_start_linear_vgpr (kill)%x, 0.5, (kill)%layer
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2darray da
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2darray da
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -417,7 +417,7 @@ BEGIN_TEST(d3d11_derivs.cube)
//>> v1: %y = v_fmaak_f32 (kill)%_, (kill)%_, 0x3fc00000
//>> lv3: %wqm = p_start_linear_vgpr (kill)%x, (kill)%y, (kill)%face
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm cube da
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm cube da
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -464,7 +464,7 @@ BEGIN_TEST(d3d11_derivs.cube_array)
//>> v1: %face_layer = v_fmamk_f32 (kill)%layer, (kill)%face, 0x41000000
//>> lv3: %wqm = p_start_linear_vgpr (kill)%x, (kill)%y, (kill)%face_layer
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm cube da
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm cube da
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -545,7 +545,7 @@ BEGIN_TEST(d3d11_derivs.bc_optimize)
//>> v1: %y = v_interp_p2_f32 (kill)%y_coord2, (kill)%_:m0, (kill)%_ attr0.y
//>> lv2: %wqm = p_start_linear_vgpr (kill)%x, (kill)%y
//>> BB1
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2d
//>> v4: %_ = image_sample (kill)%_, (kill)%_, v1: undef, %wqm 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm
@ -586,7 +586,7 @@ BEGIN_TEST(d3d11_derivs.get_lod)
//>> v1: %y1_m_y0 = v_mov_b32 %y12_m_x0 quad_perm:[1,1,1,1] bound_ctrl:1 fi
//>> v1: %y2_m_y0 = v_mov_b32 (kill)%y12_m_x0 quad_perm:[2,2,2,2] bound_ctrl:1 fi
//>> BB1
//>> v2: %_ = image_get_lod (kill)%_, (kill)%_, v1: undef, (latekill)%wqm 2d
//>> v2: %_ = image_get_lod (kill)%_, (kill)%_, v1: undef, %wqm 2d
//>> BB2
//>> BB6
//>> p_end_linear_vgpr (kill)%wqm