diff options
author | Dave Airlie <[email protected]> | 2017-04-21 03:17:23 +0100 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2017-04-25 23:24:39 +0100 |
commit | b2cedb3ea9482d3099506069204a2d226ccd54fc (patch) | |
tree | a45aea68146b8fee4706d38c67fb44a2bec76afd /src/amd/common/ac_nir_to_llvm.h | |
parent | b858cb4df8f7be9baa33d7e20347d2fe77822872 (diff) |
radv/ac: overhaul vs output/ps input routing
In order to cleanly eliminate exports rewrite the
code first to mirror how radeonsi works for now.
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/common/ac_nir_to_llvm.h')
-rw-r--r-- | src/amd/common/ac_nir_to_llvm.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.h b/src/amd/common/ac_nir_to_llvm.h index 401d284a7c4..f77a9b8d2bb 100644 --- a/src/amd/common/ac_nir_to_llvm.h +++ b/src/amd/common/ac_nir_to_llvm.h @@ -120,14 +120,25 @@ struct ac_userdata_locations { struct ac_userdata_info shader_data[AC_UD_MAX_UD]; }; +enum { + /* SPI_PS_INPUT_CNTL_i.OFFSET[0:4] */ + EXP_PARAM_OFFSET_0 = 0, + EXP_PARAM_OFFSET_31 = 31, + /* SPI_PS_INPUT_CNTL_i.DEFAULT_VAL[0:1] */ + EXP_PARAM_DEFAULT_VAL_0000 = 64, + EXP_PARAM_DEFAULT_VAL_0001, + EXP_PARAM_DEFAULT_VAL_1110, + EXP_PARAM_DEFAULT_VAL_1111, + EXP_PARAM_UNDEFINED = 255, +}; + struct ac_vs_output_info { + uint8_t vs_output_param_offset[VARYING_SLOT_MAX]; uint8_t clip_dist_mask; uint8_t cull_dist_mask; bool writes_pointsize; bool writes_layer; bool writes_viewport_index; - uint32_t prim_id_output; - uint32_t layer_output; uint32_t export_mask; unsigned param_exports; unsigned pos_exports; |