radeonsi: fix pk2h breakage
authorMarek Olšák <marek.olsak@amd.com>
Tue, 24 Jul 2018 02:11:12 +0000 (22:11 -0400)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 24 Jul 2018 02:29:59 +0000 (22:29 -0400)
src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c

index 43922dc33ca81f43be0ba127371a2823afe53dce..c51d057967c9e74dc3a45192f5067ef8c5a41a1b 100644 (file)
@@ -611,14 +611,17 @@ static void emit_pk2h(const struct lp_build_tgsi_action *action,
                      struct lp_build_tgsi_context *bld_base,
                      struct lp_build_emit_data *emit_data)
 {
+       struct si_shader_context *ctx = si_shader_context(bld_base);
+
        /* From the GLSL 4.50 spec:
         *   "The rounding mode cannot be set and is undefined."
         *
         * v_cvt_pkrtz_f16 rounds to zero, but it's fastest.
         */
        emit_data->output[emit_data->chan] =
-               ac_build_cvt_pkrtz_f16(&si_shader_context(bld_base)->ac,
-                                      emit_data->args);
+               LLVMBuildBitCast(ctx->ac.builder,
+                                ac_build_cvt_pkrtz_f16(&ctx->ac, emit_data->args),
+                                ctx->i32, "");
 }
 
 static void up2h_fetch_args(struct lp_build_tgsi_context *bld_base,