diff options
author | Jason Ekstrand <[email protected]> | 2018-05-17 23:26:02 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2018-06-28 13:19:38 -0700 |
commit | d5e028a57bb9e0da7cd31a043859038355236095 (patch) | |
tree | 846805f6d9fb7028a9cc70ce1400b5bb8d4bc66e /src/intel/compiler | |
parent | bcbc7d3a1756af9f3135f53c89be253732c9e39c (diff) |
intel/fs: Add fields to wm_prog_data for SIMD32 dispatch
Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/intel/compiler')
-rw-r--r-- | src/intel/compiler/brw_compiler.h | 7 | ||||
-rw-r--r-- | src/intel/compiler/brw_fs_visitor.cpp | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index 1b9589c231a..2f745d92745 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -685,9 +685,12 @@ struct brw_wm_prog_data { uint8_t reg_blocks_8; uint8_t reg_blocks_16; + uint8_t reg_blocks_32; uint8_t dispatch_grf_start_reg_16; + uint8_t dispatch_grf_start_reg_32; uint32_t prog_offset_16; + uint32_t prog_offset_32; struct { /** @{ @@ -705,6 +708,7 @@ struct brw_wm_prog_data { bool inner_coverage; bool dispatch_8; bool dispatch_16; + bool dispatch_32; bool dual_src_blend; bool persample_dispatch; bool uses_pos_offset; @@ -789,6 +793,7 @@ _brw_wm_prog_data_prog_offset(const struct brw_wm_prog_data *prog_data, switch (simd_width) { case 8: return 0; case 16: return prog_data->prog_offset_16; + case 32: return prog_data->prog_offset_32; default: return 0; } } @@ -804,6 +809,7 @@ _brw_wm_prog_data_dispatch_grf_start_reg(const struct brw_wm_prog_data *prog_dat switch (simd_width) { case 8: return prog_data->base.dispatch_grf_start_reg; case 16: return prog_data->dispatch_grf_start_reg_16; + case 32: return prog_data->dispatch_grf_start_reg_32; default: return 0; } } @@ -819,6 +825,7 @@ _brw_wm_prog_data_reg_blocks(const struct brw_wm_prog_data *prog_data, switch (simd_width) { case 8: return prog_data->reg_blocks_8; case 16: return prog_data->reg_blocks_16; + case 32: return prog_data->reg_blocks_32; default: return 0; } } diff --git a/src/intel/compiler/brw_fs_visitor.cpp b/src/intel/compiler/brw_fs_visitor.cpp index 5459b1ea276..0ca230e888c 100644 --- a/src/intel/compiler/brw_fs_visitor.cpp +++ b/src/intel/compiler/brw_fs_visitor.cpp @@ -127,6 +127,7 @@ fs_visitor::emit_dummy_fs() stage_prog_data->curb_read_length = 0; stage_prog_data->dispatch_grf_start_reg = 2; wm_prog_data->dispatch_grf_start_reg_16 = 2; + wm_prog_data->dispatch_grf_start_reg_32 = 2; grf_used = 1; /* Gen4-5 don't allow zero GRF blocks */ calculate_cfg(); |