Merge commit 'origin/gallium-0.1' into gallium-0.2
authorKeith Whitwell <keith@tungstengraphics.com>
Sun, 21 Sep 2008 19:22:21 +0000 (12:22 -0700)
committerKeith Whitwell <keith@tungstengraphics.com>
Sun, 21 Sep 2008 19:22:21 +0000 (12:22 -0700)
1  2 
src/mesa/shader/arbprogparse.c

   * \author Karl Rasche
   */
  
+ /**
+ Notes on program parameters, etc.
+ The instructions we emit will use six kinds of source registers:
+   PROGRAM_INPUT      - input registers
+   PROGRAM_TEMPORARY  - temp registers
+   PROGRAM_ADDRESS    - address/indirect register
+   PROGRAM_SAMPLER    - texture sampler
+   PROGRAM_CONSTANT   - indexes into program->Parameters, a known constant/literal
+   PROGRAM_STATE_VAR  - indexes into program->Parameters, and may actually be:
+                        + a state variable, like "state.fog.color", or
+                        + a pointer to a "program.local[k]" parameter, or
+                        + a pointer to a "program.env[k]" parameter
+ Basically, all the program.local[] and program.env[] values will get mapped
+ into the unified gl_program->Parameters array.  This solves the problem of
+ having three separate program parameter arrays.
+ */
  #include "main/glheader.h"
  #include "main/imports.h"
 +#include "main/context.h"
 +#include "main/macros.h"
 +#include "main/mtypes.h"
  #include "shader/grammar/grammar_mesa.h"
  #include "arbprogparse.h"
  #include "program.h"