From e5c57824ec4021a859f5cbd4feba148d068713ee Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Fri, 10 Jun 2016 10:55:59 +1000 Subject: [PATCH] gallivm: make non-float return code bitcast consistent. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This just uses the same form across the fetches. Reviewed-by: Roland Scheidegger Reviewed-by: Nicolai Hähnle Signed-off-by: Dave Airlie --- .../auxiliary/gallivm/lp_bld_tgsi_soa.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c index 8759392ac15..e3a2c4b215d 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c @@ -1403,12 +1403,9 @@ emit_fetch_immediate( res = emit_fetch_64bit(bld_base, stype, res, bld->immediates[reg->Register.Index][swizzle + 1]); } - if (stype == TGSI_TYPE_UNSIGNED) { - res = LLVMBuildBitCast(builder, res, bld_base->uint_bld.vec_type, ""); - } else if (stype == TGSI_TYPE_SIGNED) { - res = LLVMBuildBitCast(builder, res, bld_base->int_bld.vec_type, ""); - } else if (stype == TGSI_TYPE_DOUBLE) { - res = LLVMBuildBitCast(builder, res, bld_base->dbl_bld.vec_type, ""); + if (stype == TGSI_TYPE_SIGNED || stype == TGSI_TYPE_UNSIGNED || stype == TGSI_TYPE_DOUBLE) { + struct lp_build_context *bld_fetch = stype_to_fetch(bld_base, stype); + res = LLVMBuildBitCast(builder, res, bld_fetch->vec_type, ""); } return res; } @@ -1483,12 +1480,9 @@ emit_fetch_input( assert(res); - if (stype == TGSI_TYPE_UNSIGNED) { - res = LLVMBuildBitCast(builder, res, bld_base->uint_bld.vec_type, ""); - } else if (stype == TGSI_TYPE_SIGNED) { - res = LLVMBuildBitCast(builder, res, bld_base->int_bld.vec_type, ""); - } else if (stype == TGSI_TYPE_DOUBLE) { - res = LLVMBuildBitCast(builder, res, bld_base->dbl_bld.vec_type, ""); + if (stype == TGSI_TYPE_SIGNED || stype == TGSI_TYPE_UNSIGNED || stype == TGSI_TYPE_DOUBLE) { + struct lp_build_context *bld_fetch = stype_to_fetch(bld_base, stype); + res = LLVMBuildBitCast(builder, res, bld_fetch->vec_type, ""); } return res; -- 2.30.2