#if !defined TGSI_BUILD_H #define TGSI_BUILD_H #if defined __cplusplus extern "C" { #endif /* * version */ struct tgsi_version tgsi_build_version( void ); /* * header */ struct tgsi_header tgsi_build_header( void ); struct tgsi_processor tgsi_default_processor( void ); struct tgsi_processor tgsi_build_processor( unsigned processor, struct tgsi_header *header ); /* * declaration */ struct tgsi_declaration tgsi_default_declaration( void ); struct tgsi_declaration tgsi_build_declaration( unsigned file, unsigned declare, unsigned usage_mask, unsigned interpolate, unsigned semantic, struct tgsi_header *header ); struct tgsi_full_declaration tgsi_default_full_declaration( void ); unsigned tgsi_build_full_declaration( const struct tgsi_full_declaration *full_decl, struct tgsi_token *tokens, struct tgsi_header *header, unsigned maxsize ); struct tgsi_declaration_range tgsi_build_declaration_range( unsigned first, unsigned last, struct tgsi_declaration *declaration, struct tgsi_header *header ); struct tgsi_declaration_mask tgsi_build_declaration_mask( unsigned mask, struct tgsi_declaration *declaration, struct tgsi_header *header ); struct tgsi_declaration_interpolation tgsi_default_declaration_interpolation( void ); struct tgsi_declaration_interpolation tgsi_build_declaration_interpolation( unsigned interpolate, struct tgsi_declaration *declaration, struct tgsi_header *header ); struct tgsi_declaration_semantic tgsi_default_declaration_semantic( void ); struct tgsi_declaration_semantic tgsi_build_declaration_semantic( unsigned semantic_name, unsigned semantic_index, struct tgsi_declaration *declaration, struct tgsi_header *header ); /* * immediate */ struct tgsi_immediate tgsi_default_immediate( void ); struct tgsi_immediate tgsi_build_immediate( struct tgsi_header *header ); struct tgsi_full_immediate tgsi_default_full_immediate( void ); struct tgsi_immediate_float32 tgsi_build_immediate_float32( float value, struct tgsi_immediate *immediate, struct tgsi_header *header ); unsigned tgsi_build_full_immediate( const struct tgsi_full_immediate *full_imm, struct tgsi_token *tokens, struct tgsi_header *header, unsigned maxsize ); /* * instruction */ struct tgsi_instruction tgsi_default_instruction( void ); struct tgsi_instruction tgsi_build_instruction( unsigned opcode, unsigned saturate, unsigned num_dst_regs, unsigned num_src_regs, struct tgsi_header *header ); struct tgsi_full_instruction tgsi_default_full_instruction( void ); unsigned tgsi_build_full_instruction( const struct tgsi_full_instruction *full_inst, struct tgsi_token *tokens, struct tgsi_header *header, unsigned maxsize ); struct tgsi_instruction_ext_nv tgsi_default_instruction_ext_nv( void ); unsigned tgsi_compare_instruction_ext_nv( struct tgsi_instruction_ext_nv a, struct tgsi_instruction_ext_nv b ); struct tgsi_instruction_ext_nv tgsi_build_instruction_ext_nv( unsigned precision, unsigned cond_dst_index, unsigned cond_flow_index, unsigned cond_mask, unsigned cond_swizzle_x, unsigned cond_swizzle_y, unsigned cond_swizzle_z, unsigned cond_swizzle_w, unsigned cond_dst_update, unsigned cond_flow_update, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_instruction_ext_label tgsi_default_instruction_ext_label( void ); unsigned tgsi_compare_instruction_ext_label( struct tgsi_instruction_ext_label a, struct tgsi_instruction_ext_label b ); struct tgsi_instruction_ext_label tgsi_build_instruction_ext_label( unsigned label, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_instruction_ext_texture tgsi_default_instruction_ext_texture( void ); unsigned tgsi_compare_instruction_ext_texture( struct tgsi_instruction_ext_texture a, struct tgsi_instruction_ext_texture b ); struct tgsi_instruction_ext_texture tgsi_build_instruction_ext_texture( unsigned texture, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_src_register tgsi_default_src_register( void ); struct tgsi_src_register tgsi_build_src_register( unsigned file, unsigned swizzle_x, unsigned swizzle_y, unsigned swizzle_z, unsigned swizzle_w, unsigned negate, unsigned indirect, unsigned dimension, int index, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_full_src_register tgsi_default_full_src_register( void ); struct tgsi_src_register_ext_swz tgsi_default_src_register_ext_swz( void ); unsigned tgsi_compare_src_register_ext_swz( struct tgsi_src_register_ext_swz a, struct tgsi_src_register_ext_swz b ); struct tgsi_src_register_ext_swz tgsi_build_src_register_ext_swz( unsigned ext_swizzle_x, unsigned ext_swizzle_y, unsigned ext_swizzle_z, unsigned ext_swizzle_w, unsigned negate_x, unsigned negate_y, unsigned negate_z, unsigned negate_w, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_src_register_ext_mod tgsi_default_src_register_ext_mod( void ); unsigned tgsi_compare_src_register_ext_mod( struct tgsi_src_register_ext_mod a, struct tgsi_src_register_ext_mod b ); struct tgsi_src_register_ext_mod tgsi_build_src_register_ext_mod( unsigned complement, unsigned bias, unsigned scale_2x, unsigned absolute, unsigned negate, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_dimension tgsi_default_dimension( void ); struct tgsi_dimension tgsi_build_dimension( unsigned indirect, unsigned index, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_dst_register tgsi_default_dst_register( void ); struct tgsi_dst_register tgsi_build_dst_register( unsigned file, unsigned mask, int index, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_full_dst_register tgsi_default_full_dst_register( void ); struct tgsi_dst_register_ext_concode tgsi_default_dst_register_ext_concode( void ); unsigned tgsi_compare_dst_register_ext_concode( struct tgsi_dst_register_ext_concode a, struct tgsi_dst_register_ext_concode b ); struct tgsi_dst_register_ext_concode tgsi_build_dst_register_ext_concode( unsigned cc, unsigned swizzle_x, unsigned swizzle_y, unsigned swizzle_z, unsigned swizzle_w, int index, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); struct tgsi_dst_register_ext_modulate tgsi_default_dst_register_ext_modulate( void ); unsigned tgsi_compare_dst_register_ext_modulate( struct tgsi_dst_register_ext_modulate a, struct tgsi_dst_register_ext_modulate b ); struct tgsi_dst_register_ext_modulate tgsi_build_dst_register_ext_modulate( unsigned modulate, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); #if defined __cplusplus } #endif #endif /* TGSI_BUILD_H */