diff options
author | michal <michal@michal-laptop.(none)> | 2007-08-07 10:14:50 +0100 |
---|---|---|
committer | michal <michal@michal-laptop.(none)> | 2007-08-07 10:15:21 +0100 |
commit | 285c7d593170506409ef78adb40f3bb849c93e5d (patch) | |
tree | b4f6a11f769970aa2d6d8694af49b3806bd84457 | |
parent | 958a1ad4200521f4fefa87196ee56be0f0c61613 (diff) |
Labels are always label targets.
Translate label for GLSL IF, ELSE.
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_build.c | 4 | ||||
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_build.h | 1 | ||||
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_dump.c | 4 | ||||
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_exec.c | 3 | ||||
-rw-r--r-- | src/mesa/pipe/tgsi/core/tgsi_token.h | 3 | ||||
-rw-r--r-- | src/mesa/pipe/tgsi/mesa/mesa_to_tgsi.c | 2 |
6 files changed, 4 insertions, 13 deletions
diff --git a/src/mesa/pipe/tgsi/core/tgsi_build.c b/src/mesa/pipe/tgsi/core/tgsi_build.c index 2a482a78dc..bbf4a89a5e 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_build.c +++ b/src/mesa/pipe/tgsi/core/tgsi_build.c @@ -528,7 +528,6 @@ tgsi_build_full_instruction( *instruction_ext_label = tgsi_build_instruction_ext_label( full_inst->InstructionExtLabel.Label, - full_inst->InstructionExtLabel.Target, prev_token, instruction, header ); @@ -835,7 +834,6 @@ tgsi_default_instruction_ext_label( void ) instruction_ext_label.Type = TGSI_INSTRUCTION_EXT_TYPE_LABEL; instruction_ext_label.Label = 0; - instruction_ext_label.Target = 0; instruction_ext_label.Padding = 0; instruction_ext_label.Extended = 0; @@ -855,7 +853,6 @@ tgsi_compare_instruction_ext_label( struct tgsi_instruction_ext_label tgsi_build_instruction_ext_label( GLuint label, - GLuint target, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ) @@ -864,7 +861,6 @@ tgsi_build_instruction_ext_label( instruction_ext_label = tgsi_default_instruction_ext_label(); instruction_ext_label.Label = label; - instruction_ext_label.Target = target; prev_token->Extended = 1; instruction_grow( instruction, header ); diff --git a/src/mesa/pipe/tgsi/core/tgsi_build.h b/src/mesa/pipe/tgsi/core/tgsi_build.h index db25956519..35c1a2506d 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_build.h +++ b/src/mesa/pipe/tgsi/core/tgsi_build.h @@ -160,7 +160,6 @@ tgsi_compare_instruction_ext_label( struct tgsi_instruction_ext_label tgsi_build_instruction_ext_label( GLuint label, - GLuint target, struct tgsi_token *prev_token, struct tgsi_instruction *instruction, struct tgsi_header *header ); diff --git a/src/mesa/pipe/tgsi/core/tgsi_dump.c b/src/mesa/pipe/tgsi/core/tgsi_dump.c index bdffc59d39..882771da2e 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_dump.c +++ b/src/mesa/pipe/tgsi/core/tgsi_dump.c @@ -618,10 +618,6 @@ tgsi_dump( TXT( "\nLabel : " ); UID( inst->InstructionExtLabel.Label ); } - if( deflt || fi.InstructionExtLabel.Target != inst->InstructionExtLabel.Target ) { - TXT( "\nTarget : " ); - UID( inst->InstructionExtLabel.Target ); - } if( ignored ) { TXT( "\nPadding : " ); UIX( inst->InstructionExtLabel.Padding ); diff --git a/src/mesa/pipe/tgsi/core/tgsi_exec.c b/src/mesa/pipe/tgsi/core/tgsi_exec.c index 7cf48021de..37ca7c1b2a 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_exec.c +++ b/src/mesa/pipe/tgsi/core/tgsi_exec.c @@ -134,8 +134,7 @@ tgsi_exec_prepare( mach->ImmLimit += (parse.FullToken.FullImmediate.Immediate.Size - 1) / 4; break; case TGSI_TOKEN_TYPE_INSTRUCTION: - if( parse.FullToken.FullInstruction.InstructionExtLabel.Label && - parse.FullToken.FullInstruction.InstructionExtLabel.Target ) { + if( parse.FullToken.FullInstruction.InstructionExtLabel.Label ) { assert( labels->count < 128 ); labels->labels[labels->count][0] = parse.FullToken.FullInstruction.InstructionExtLabel.Label; labels->labels[labels->count][1] = pointer; diff --git a/src/mesa/pipe/tgsi/core/tgsi_token.h b/src/mesa/pipe/tgsi/core/tgsi_token.h index 632d678818..fd59ea1e2e 100644 --- a/src/mesa/pipe/tgsi/core/tgsi_token.h +++ b/src/mesa/pipe/tgsi/core/tgsi_token.h @@ -855,8 +855,7 @@ struct tgsi_instruction_ext_label { GLuint Type : 4; /* TGSI_INSTRUCTION_EXT_TYPE_LABEL */ GLuint Label : 24; /* UINT */ - GLuint Target : 1; /* BOOL */ - GLuint Padding : 2; + GLuint Padding : 3; GLuint Extended : 1; /* BOOL */ }; diff --git a/src/mesa/pipe/tgsi/mesa/mesa_to_tgsi.c b/src/mesa/pipe/tgsi/mesa/mesa_to_tgsi.c index 8ce3931f5e..47fd5791e1 100644 --- a/src/mesa/pipe/tgsi/mesa/mesa_to_tgsi.c +++ b/src/mesa/pipe/tgsi/mesa/mesa_to_tgsi.c @@ -293,6 +293,7 @@ compile_instruction( break;
case OPCODE_ELSE:
fullinst->Instruction.Opcode = TGSI_OPCODE_ELSE;
+ fullinst->InstructionExtLabel.Label = inst->BranchTarget;
break;
case OPCODE_ENDIF:
fullinst->Instruction.Opcode = TGSI_OPCODE_ENDIF;
@@ -317,6 +318,7 @@ compile_instruction( break;
case OPCODE_IF:
fullinst->Instruction.Opcode = TGSI_OPCODE_IF;
+ fullinst->InstructionExtLabel.Label = inst->BranchTarget;
break;
case OPCODE_INT:
fullinst->Instruction.Opcode = TGSI_OPCODE_INT;
|