From: Francisco Jerez Date: Fri, 2 Sep 2016 04:25:18 +0000 (-0700) Subject: i965/fs: Handle arbitrary offsets in brw_reg_from_fs_reg for MRF/VGRF registers. X-Git-Tag: upstream/17.1.0~6359 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1a4b7fdd88919b9ea51a4e9ce3808d85eea9fe5e;p=platform%2Fupstream%2Fmesa.git i965/fs: Handle arbitrary offsets in brw_reg_from_fs_reg for MRF/VGRF registers. This restriction seemed rather artificial... Removing it actually simplifies things slightly. Reviewed-by: Iago Toral Quiroga --- diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp index 8a581c9..110f3f8 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp @@ -56,7 +56,6 @@ brw_file_from_reg(fs_reg *reg) static struct brw_reg brw_reg_from_fs_reg(fs_inst *inst, fs_reg *reg, unsigned gen, bool compressed) { - assert(reg->offset / REG_SIZE == 0); struct brw_reg brw_reg; switch (reg->file) { @@ -97,14 +96,14 @@ brw_reg_from_fs_reg(fs_inst *inst, fs_reg *reg, unsigned gen, bool compressed) } brw_reg = retype(brw_reg, reg->type); - brw_reg = byte_offset(brw_reg, reg->offset % REG_SIZE); + brw_reg = byte_offset(brw_reg, reg->offset); brw_reg.abs = reg->abs; brw_reg.negate = reg->negate; break; case ARF: case FIXED_GRF: case IMM: - assert(reg->offset % REG_SIZE == 0); + assert(reg->offset == 0); brw_reg = reg->as_brw_reg(); break; case BAD_FILE: