Searched defs:emit_generic_urb_slot (Results 1 - 1 of 1) sorted by relevance

/external/mesa3d/src/mesa/drivers/dri/i965/
H A Dbrw_vec4_visitor.cpp1273 vec4_visitor::emit_generic_urb_slot(dst_reg reg, int varying, int component) function in class:brw::vec4_visitor
1333 emit_generic_urb_slot(reg, varying, i);
1275 assert(varying < VARYING_SLOT_MAX); unsigned num_comps = output_num_components[varying][component]; if (num_comps == 0) return NULL; assert(output_reg[varying][component].type == reg.type); current_annotation = output_reg_annotation[varying]; if (output_reg[varying][component].file != BAD_FILE) { src_reg src = src_reg(output_reg[varying][component]); src.swizzle = BRW_SWZ_COMP_OUTPUT(component); reg.writemask = brw_writemask_for_component_packing(num_comps, component); return emit(MOV(reg, src)); } return NULL; } void vec4_visitor::emit_urb_slot(dst_reg reg, int varying) { reg.type = BRW_REGISTER_TYPE_F; output_reg[varying][0].type = reg.type; switch (varying) { case VARYING_SLOT_PSIZ: { current_annotation = �; emit_psiz_and_flags(reg); break; } case BRW_VARYING_SLOT_NDC: current_annotation = �; if (output_reg[BRW_VARYING_SLOT_NDC][0].file != BAD_FILE) emit(MOV(reg, src_reg(output_reg[BRW_VARYING_SLOT_NDC][0]))); break; case VARYING_SLOT_POS: current_annotation = �; if (output_reg[VARYING_SLOT_POS][0].file != BAD_FILE) emit(MOV(reg, src_reg(output_reg[VARYING_SLOT_POS][0]))); break; case VARYING_SLOT_EDGE: current_annotation = �; emit(MOV(reg, src_reg(dst_reg(ATTR, VERT_ATTRIB_EDGEFLAG, glsl_type::float_type, WRITEMASK_XYZW)))); break; case BRW_VARYING_SLOT_PAD: break; default: for (int i = 0; i < 4; i++) { emit_generic_urb_slot(reg, varying, i); } break; } } static int align_interleaved_urb_mlen(const struct gen_device_info *devinfo, int mlen) { if (devinfo->gen >= 6) argument

Completed in 852 milliseconds