summaryrefslogtreecommitdiff
path: root/src/mesa/shader
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2005-07-22 02:53:38 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2005-07-22 02:53:38 +0000
commit61e694f270d8a4a03a3245b5e6eea805915ed74b (patch)
tree1a0d95f224b5493df55b67f909d28561f367ca36 /src/mesa/shader
parentdb251d72c84256267cd1f7c062071a7143455048 (diff)
Make the vertex program source register Index field a signed int since
relative addressing can be negative. Change some GLuint indexes to GLint in the t_vp_build.c file. Added PROGRAM_UNDEFINED token for initializing the register File field to avoid a gcc 4.0 warning.
Diffstat (limited to 'src/mesa/shader')
-rw-r--r--src/mesa/shader/nvvertparse.c8
-rw-r--r--src/mesa/shader/nvvertprog.h12
2 files changed, 10 insertions, 10 deletions
diff --git a/src/mesa/shader/nvvertparse.c b/src/mesa/shader/nvvertparse.c
index c6fb72d931..33bc2004ac 100644
--- a/src/mesa/shader/nvvertparse.c
+++ b/src/mesa/shader/nvvertparse.c
@@ -1142,10 +1142,10 @@ Parse_InstructionSequence(struct parse_state *parseState,
struct vp_instruction *inst = program + parseState->numInst;
/* Initialize the instruction */
- inst->SrcReg[0].File = (enum register_file) -1;
- inst->SrcReg[1].File = (enum register_file) -1;
- inst->SrcReg[2].File = (enum register_file) -1;
- inst->DstReg.File = (enum register_file) -1;
+ inst->SrcReg[0].File = PROGRAM_UNDEFINED;
+ inst->SrcReg[1].File = PROGRAM_UNDEFINED;
+ inst->SrcReg[2].File = PROGRAM_UNDEFINED;
+ inst->DstReg.File = PROGRAM_UNDEFINED;
inst->Data = NULL;
if (Parse_String(parseState, "MOV")) {
diff --git a/src/mesa/shader/nvvertprog.h b/src/mesa/shader/nvvertprog.h
index 17646e3600..b8dbe36313 100644
--- a/src/mesa/shader/nvvertprog.h
+++ b/src/mesa/shader/nvvertprog.h
@@ -1,8 +1,8 @@
/*
* Mesa 3-D graphics library
- * Version: 6.3
+ * Version: 6.3.1
*
- * Copyright (C) 1999-2004 Brian Paul All Rights Reserved.
+ * Copyright (C) 1999-2005 Brian Paul All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -76,19 +76,19 @@ enum vp_opcode
/* Instruction source register */
struct vp_src_register
{
- GLuint File:4;
- GLuint Index:8;
+ GLuint File:4; /* one of the PROGRAM_* register file values */
+ GLint Index:9; /* may be negative for relative addressing */
GLuint Swizzle:12;
GLuint Negate:4; /* ARB requires component-wise negation. */
GLuint RelAddr:1;
- GLuint pad:3;
+ GLuint pad:2;
};
/* Instruction destination register */
struct vp_dst_register
{
- GLuint File:4;
+ GLuint File:4; /* one of the PROGRAM_* register file values */
GLuint Index:8;
GLuint WriteMask:4;
GLuint pad:16;