aboutsummaryrefslogtreecommitdiffstats
path: root/src/amd/common/ac_nir_to_llvm.h
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2017-04-21 03:17:23 +0100
committerDave Airlie <[email protected]>2017-04-25 23:24:39 +0100
commitb2cedb3ea9482d3099506069204a2d226ccd54fc (patch)
treea45aea68146b8fee4706d38c67fb44a2bec76afd /src/amd/common/ac_nir_to_llvm.h
parentb858cb4df8f7be9baa33d7e20347d2fe77822872 (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.h15
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;