diff options
author | Brian Paul <[email protected]> | 2005-11-03 03:30:34 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2005-11-03 03:30:34 +0000 |
commit | 72030e0d91cc505db1eb7d39d5240b2f562cf710 (patch) | |
tree | 75f2085ad159184a033423f022e242ebf81862e6 /src/mesa/shader/arbprogparse.h | |
parent | ccfe3d4683bb6c97ffacd67267aa002dcb060433 (diff) |
Streamline code generation by using a fixed size instruction buffer in
arb_program struct.
Diffstat (limited to 'src/mesa/shader/arbprogparse.h')
-rw-r--r-- | src/mesa/shader/arbprogparse.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/mesa/shader/arbprogparse.h b/src/mesa/shader/arbprogparse.h index 947c22e767b..59f8e3b22ed 100644 --- a/src/mesa/shader/arbprogparse.h +++ b/src/mesa/shader/arbprogparse.h @@ -1,6 +1,6 @@ /* * Mesa 3-D graphics library - * Version: 6.3 + * Version: 6.5 * * Copyright (C) 1999-2005 Brian Paul All Rights Reserved. * @@ -31,25 +31,29 @@ #include "nvvertprog.h" #include "nvfragprog.h" + +#define MAX_INSTRUCTIONS 256 + + /** * This is basically a union of the vertex_program and fragment_program * structs that we can use to parse the program into * - * XXX: this should go into mtypes.h? + * XXX we can probably get rid of this entirely someday. */ struct arb_program { struct program Base; struct program_parameter_list *Parameters; - GLuint InputsRead; - GLuint OutputsWritten; + GLbitfield InputsRead; + GLbitfield OutputsWritten; GLuint Position; /* Just used for error reporting while parsing */ GLuint MajorVersion; GLuint MinorVersion; /* ARB_vertex_program specifics */ - struct vp_instruction *VPInstructions; + struct vp_instruction VPInstructions[MAX_INSTRUCTIONS]; /* Options currently recognized by the parser */ /* ARB_fp */ @@ -60,8 +64,8 @@ struct arb_program GLboolean HintPositionInvariant; /* ARB_fragment_program specifics */ - struct fp_instruction *FPInstructions; - GLuint TexturesUsed[MAX_TEXTURE_IMAGE_UNITS]; + struct fp_instruction FPInstructions[MAX_INSTRUCTIONS]; + GLbitfield TexturesUsed[MAX_TEXTURE_IMAGE_UNITS]; GLuint NumAluInstructions; GLuint NumTexInstructions; GLuint NumTexIndirections; |