i965/vec4: Assert that pull constant load offsets are 16B-aligned.
authorFrancisco Jerez <currojerez@riseup.net>
Fri, 2 Sep 2016 05:37:57 +0000 (22:37 -0700)
committerFrancisco Jerez <currojerez@riseup.net>
Wed, 14 Sep 2016 21:50:59 +0000 (14:50 -0700)
Non-16B-aligned pull constant loads are unlikely to be particularly
useful given that you can get roughly the same effect by using
swizzles on the result.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp

index c88d7b6f2291ec2633a5dff0948e9be4d461cff1..3e785bc52d922ffaa71107b44c342416c3f69734 100644 (file)
@@ -1651,6 +1651,7 @@ vec4_visitor::emit_pull_constant_load(bblock_t *block, vec4_instruction *inst,
                                      dst_reg temp, src_reg orig_src,
                                       int base_offset, src_reg indirect)
 {
+   assert(orig_src.offset % 16 == 0);
    int reg_offset = base_offset + orig_src.offset / 16;
    const unsigned index = prog_data->base.binding_table.pull_constants_start;