From: Jason Ekstrand Date: Tue, 4 Jun 2019 16:45:50 +0000 (-0500) Subject: intel/fs: Allow CLUSTER_BROADCAST to do type conversion X-Git-Tag: upstream/19.3.0~1749 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=651725f7a154e9b33093a2d725a0c2581fbd5480;p=platform%2Fupstream%2Fmesa.git intel/fs: Allow CLUSTER_BROADCAST to do type conversion We can't really handle it in the little-core 64-bit case but it's not really needed there. Where we really want this is for when we need to do 16 -> 8-bit conversions. Reviewed-by: Paulo Zanoni --- diff --git a/src/intel/compiler/brw_fs_generator.cpp b/src/intel/compiler/brw_fs_generator.cpp index 6756461..b34280d 100644 --- a/src/intel/compiler/brw_fs_generator.cpp +++ b/src/intel/compiler/brw_fs_generator.cpp @@ -2134,7 +2134,6 @@ fs_generator::generate_code(const cfg_t *cfg, int dispatch_width, break; case SHADER_OPCODE_CLUSTER_BROADCAST: { - assert(src[0].type == dst.type); assert(!src[0].negate && !src[0].abs); assert(src[1].file == BRW_IMMEDIATE_VALUE); assert(src[1].type == BRW_REGISTER_TYPE_UD); @@ -2171,6 +2170,7 @@ fs_generator::generate_code(const cfg_t *cfg, int dispatch_width, * indirect here to handle adding 4 bytes to the offset and avoid * the extra ADD to the register file. */ + assert(src[0].type == dst.type); brw_MOV(p, subscript(dst, BRW_REGISTER_TYPE_D, 0), subscript(strided, BRW_REGISTER_TYPE_D, 0)); brw_MOV(p, subscript(dst, BRW_REGISTER_TYPE_D, 1),