return dr;
}
+static struct tgsi_declaration_dimension
+tgsi_default_declaration_dimension()
+{
+ struct tgsi_declaration_dimension dim;
+
+ dim.Index2D = 0;
+
+ return dim;
+}
+
static struct tgsi_declaration_range
tgsi_build_declaration_range(
unsigned first,
full_declaration.Declaration = tgsi_default_declaration();
full_declaration.Range = tgsi_default_declaration_range();
+ full_declaration.Dim = tgsi_default_declaration_dimension();
full_declaration.Semantic = tgsi_default_declaration_semantic();
full_declaration.Interp = tgsi_default_declaration_interp();
full_declaration.Image = tgsi_default_declaration_image();
struct tgsi_header *header,
unsigned maxsize )
{
- unsigned size = 0, i;
+ unsigned size = 0;
+ int i;
struct tgsi_immediate *immediate;
if( maxsize <= size )
}
static struct tgsi_instruction
-tgsi_build_instruction(unsigned opcode,
+tgsi_build_instruction(enum tgsi_opcode opcode,
unsigned saturate,
+ unsigned precise,
unsigned num_dst_regs,
unsigned num_src_regs,
struct tgsi_header *header)
instruction = tgsi_default_instruction();
instruction.Opcode = opcode;
instruction.Saturate = saturate;
+ instruction.Precise = precise;
instruction.NumDstRegs = num_dst_regs;
instruction.NumSrcRegs = num_src_regs;
static struct tgsi_instruction_label
tgsi_build_instruction_label(
unsigned label,
- struct tgsi_token *prev_token,
struct tgsi_instruction *instruction,
struct tgsi_header *header )
{
unsigned texture,
unsigned num_offsets,
unsigned return_type,
- struct tgsi_token *prev_token,
struct tgsi_instruction *instruction,
struct tgsi_header *header )
{
unsigned qualifier,
unsigned texture,
unsigned format,
- struct tgsi_token *prev_token,
struct tgsi_instruction *instruction,
struct tgsi_header *header )
{
static struct tgsi_texture_offset
tgsi_build_texture_offset(
int index, int file, int swizzle_x, int swizzle_y, int swizzle_z,
- struct tgsi_token *prev_token,
struct tgsi_instruction *instruction,
struct tgsi_header *header )
{
unsigned size = 0;
unsigned i;
struct tgsi_instruction *instruction;
- struct tgsi_token *prev_token;
if( maxsize <= size )
return 0;
*instruction = tgsi_build_instruction(full_inst->Instruction.Opcode,
full_inst->Instruction.Saturate,
+ full_inst->Instruction.Precise,
full_inst->Instruction.NumDstRegs,
full_inst->Instruction.NumSrcRegs,
header);
- prev_token = (struct tgsi_token *) instruction;
if (full_inst->Instruction.Label) {
struct tgsi_instruction_label *instruction_label;
*instruction_label = tgsi_build_instruction_label(
full_inst->Label.Label,
- prev_token,
instruction,
- header );
- prev_token = (struct tgsi_token *) instruction_label;
+ header );
}
if (full_inst->Instruction.Texture) {
full_inst->Texture.Texture,
full_inst->Texture.NumOffsets,
full_inst->Texture.ReturnType,
- prev_token,
instruction,
header );
- prev_token = (struct tgsi_token *) instruction_texture;
for (i = 0; i < full_inst->Texture.NumOffsets; i++) {
struct tgsi_texture_offset *texture_offset;
full_inst->TexOffsets[i].SwizzleX,
full_inst->TexOffsets[i].SwizzleY,
full_inst->TexOffsets[i].SwizzleZ,
- prev_token,
instruction,
header);
- prev_token = (struct tgsi_token *) texture_offset;
}
}
full_inst->Memory.Qualifier,
full_inst->Memory.Texture,
full_inst->Memory.Format,
- prev_token,
instruction,
header );
- prev_token = (struct tgsi_token *) instruction_memory;
}
for( i = 0; i < full_inst->Instruction.NumDstRegs; i++ ) {
struct tgsi_header *header,
unsigned maxsize )
{
- unsigned size = 0, i;
+ unsigned size = 0;
+ int i;
struct tgsi_property *property;
if( maxsize <= size )