summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarol Herbst <[email protected]>2019-03-28 17:53:30 +0100
committerKarol Herbst <[email protected]>2019-04-07 15:13:36 +0200
commit5450f1c9fb098ad85affb4fba9364052482e7016 (patch)
tree5113d35f457c62a2cdc6bd54e637bb80abaf7725
parent4e802089bcfa278f414fb3a0ce5879d840526691 (diff)
v3d: prefer using nir_src_comp_as_int over nir_src_as_const_value
Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r--src/broadcom/compiler/v3d33_tex.c8
-rw-r--r--src/broadcom/compiler/v3d40_tex.c11
2 files changed, 8 insertions, 11 deletions
diff --git a/src/broadcom/compiler/v3d33_tex.c b/src/broadcom/compiler/v3d33_tex.c
index 95e486ef6e8..488021bfc60 100644
--- a/src/broadcom/compiler/v3d33_tex.c
+++ b/src/broadcom/compiler/v3d33_tex.c
@@ -106,18 +106,16 @@ v3d33_vir_emit_tex(struct v3d_compile *c, nir_tex_instr *instr)
break;
case nir_tex_src_offset: {
- nir_const_value *offset =
- nir_src_as_const_value(instr->src[i].src);
p0_unpacked.texel_offset_for_s_coordinate =
- offset->i32[0];
+ nir_src_comp_as_int(instr->src[i].src, 0);
if (instr->coord_components >= 2)
p0_unpacked.texel_offset_for_t_coordinate =
- offset->i32[1];
+ nir_src_comp_as_int(instr->src[i].src, 1);
if (instr->coord_components >= 3)
p0_unpacked.texel_offset_for_r_coordinate =
- offset->i32[2];
+ nir_src_comp_as_int(instr->src[i].src, 2);
break;
}
diff --git a/src/broadcom/compiler/v3d40_tex.c b/src/broadcom/compiler/v3d40_tex.c
index b6feffe53c9..3bed32d839f 100644
--- a/src/broadcom/compiler/v3d40_tex.c
+++ b/src/broadcom/compiler/v3d40_tex.c
@@ -138,14 +138,13 @@ v3d40_vir_emit_tex(struct v3d_compile *c, nir_tex_instr *instr)
case nir_tex_src_offset: {
if (nir_src_is_const(instr->src[i].src)) {
- nir_const_value *offset =
- nir_src_as_const_value(instr->src[i].src);
-
- p2_unpacked.offset_s = offset->i32[0];
+ p2_unpacked.offset_s = nir_src_comp_as_int(instr->src[i].src, 0);
if (instr->coord_components >= 2)
- p2_unpacked.offset_t = offset->i32[1];
+ p2_unpacked.offset_t =
+ nir_src_comp_as_int(instr->src[i].src, 1);
if (instr->coord_components >= 3)
- p2_unpacked.offset_r = offset->i32[2];
+ p2_unpacked.offset_r =
+ nir_src_comp_as_int(instr->src[i].src, 2);
} else {
struct qreg mask = vir_uniform_ui(c, 0xf);
struct qreg x, y, offset;