Lines Matching refs:linkage
824 /* linkage map sorted by order frag shader wants things, so
1019 struct ir3_shader_linkage linkage = {
1025 ir3_link_shaders(&linkage, last_shader, fs, true);
1028 ir3_link_stream_out(&linkage, last_shader);
1033 bool primid_passthru = linkage.primid_loc != 0xff;
1037 tu_cs_emit(cs, ~linkage.varmask[0]);
1038 tu_cs_emit(cs, ~linkage.varmask[1]);
1039 tu_cs_emit(cs, ~linkage.varmask[2]);
1040 tu_cs_emit(cs, ~linkage.varmask[3]);
1059 layer_loc = linkage.max_loc;
1060 ir3_link_add(&linkage, VARYING_SLOT_LAYER, layer_regid, 0x1, linkage.max_loc);
1064 view_loc = linkage.max_loc;
1065 ir3_link_add(&linkage, VARYING_SLOT_VIEWPORT, view_regid, 0x1, linkage.max_loc);
1075 position_loc = linkage.max_loc;
1077 ir3_link_add(&linkage, last_shader->outputs[i].slot,
1084 pointsize_loc = linkage.max_loc;
1085 ir3_link_add(&linkage, VARYING_SLOT_PSIZ, pointsize_regid, 0x1, linkage.max_loc);
1091 uint32_t clip0_loc = linkage.clip0_loc, clip1_loc = linkage.clip1_loc;
1093 clip0_loc = linkage.max_loc;
1094 ir3_link_add(&linkage, VARYING_SLOT_CLIP_DIST0, clip0_regid,
1095 clip_cull_mask & 0xf, linkage.max_loc);
1098 clip1_loc = linkage.max_loc;
1099 ir3_link_add(&linkage, VARYING_SLOT_CLIP_DIST1, clip1_regid,
1100 clip_cull_mask >> 4, linkage.max_loc);
1103 tu6_setup_streamout(cs, last_shader, &linkage);
1110 if (linkage.cnt == 0)
1111 ir3_link_add(&linkage, 0, 0, 0x1, linkage.max_loc);
1114 assert(linkage.cnt <= 32);
1115 const uint32_t sp_out_count = DIV_ROUND_UP(linkage.cnt, 2);
1116 const uint32_t sp_vpc_dst_count = DIV_ROUND_UP(linkage.cnt, 4);
1119 for (uint32_t i = 0; i < linkage.cnt; i++) {
1121 A6XX_SP_VS_OUT_REG_A_REGID(linkage.var[i].regid) |
1122 A6XX_SP_VS_OUT_REG_A_COMPMASK(linkage.var[i].compmask);
1124 A6XX_SP_VS_VPC_DST_REG_OUTLOC0(linkage.var[i].loc);
1136 A6XX_VPC_VS_PACK_STRIDE_IN_VPC(linkage.max_loc) |
1160 tu_cs_emit(cs, A6XX_PC_VS_OUT_CNTL_STRIDE_IN_VPC(linkage.max_loc) |
1176 tu_cs_emit(cs, A6XX_SP_VS_PRIMITIVE_CNTL_OUT(linkage.cnt) |
1192 A6XX_VPC_CNTL_0_PRIMIDLOC(linkage.primid_loc) |
1193 A6XX_VPC_CNTL_0_VIEWIDLOC(linkage.viewid_loc));