intel/fs: Fix FB read header setup for SIMD32.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:

committed by
Jason Ekstrand

parent
e06f5b30cc
commit
2aefa5e19f
@@ -4187,12 +4187,21 @@ lower_fb_write_logical_send(const fs_builder &bld, fs_inst *inst,
|
||||
static void
|
||||
lower_fb_read_logical_send(const fs_builder &bld, fs_inst *inst)
|
||||
{
|
||||
const fs_builder &ubld = bld.exec_all();
|
||||
const fs_builder &ubld = bld.exec_all().group(8, 0);
|
||||
const unsigned length = 2;
|
||||
const fs_reg header = ubld.group(8, 0).vgrf(BRW_REGISTER_TYPE_UD, length);
|
||||
const fs_reg header = ubld.vgrf(BRW_REGISTER_TYPE_UD, length);
|
||||
|
||||
ubld.group(16, 0)
|
||||
.MOV(header, retype(brw_vec8_grf(0, 0), BRW_REGISTER_TYPE_UD));
|
||||
if (bld.group() < 16) {
|
||||
ubld.group(16, 0).MOV(header, retype(brw_vec8_grf(0, 0),
|
||||
BRW_REGISTER_TYPE_UD));
|
||||
} else {
|
||||
assert(bld.group() < 32);
|
||||
const fs_reg header_sources[] = {
|
||||
retype(brw_vec8_grf(0, 0), BRW_REGISTER_TYPE_UD),
|
||||
retype(brw_vec8_grf(2, 0), BRW_REGISTER_TYPE_UD)
|
||||
};
|
||||
ubld.LOAD_PAYLOAD(header, header_sources, ARRAY_SIZE(header_sources), 0);
|
||||
}
|
||||
|
||||
inst->resize_sources(1);
|
||||
inst->src[0] = header;
|
||||
|
Reference in New Issue
Block a user