1 /* 2 * Copyright (c) 2014-2024 Broadcom. All Rights Reserved. 3 * The term “Broadcom” refers to Broadcom Inc. 4 * and/or its subsidiaries. 5 * SPDX-License-Identifier: MIT 6 */ 7 8 #ifndef SVGA_LINK_H 9 #define SVGA_LINK_H 10 11 #include "pipe/p_defines.h" 12 #include "tgsi/tgsi_scan.h" 13 14 struct svga_context; 15 16 struct shader_linkage 17 { 18 unsigned num_inputs; /* number of inputs in the current shader */ 19 unsigned position_index; /* position register index */ 20 unsigned input_map_max; /* highest index of mapped inputs */ 21 uint8_t input_map[PIPE_MAX_SHADER_INPUTS]; 22 23 struct { 24 unsigned num_outputs; 25 uint8_t output_map[PIPE_MAX_SHADER_OUTPUTS]; 26 } prevShader; 27 }; 28 29 void 30 svga_link_shaders(const struct tgsi_shader_info *outshader_info, 31 const struct tgsi_shader_info *inshader_info, 32 struct shader_linkage *linkage); 33 34 #endif /* SVGA_LINK_H */ 35