summaryrefslogtreecommitdiff
path: root/src/mesa/shader/arbvertparse.c
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2005-11-19 15:36:28 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2005-11-19 15:36:28 +0000
commit8c41a14c5ef0b8d2b0f1a1cd094f5abc41fa48f8 (patch)
tree81e0ebcd5230a636c59f27b10ee08cd3d4c458ef /src/mesa/shader/arbvertparse.c
parent57548094215c8c2d869417c09c9a391f1b7e28f2 (diff)
Remove the _mesa_parse_arb_vertex/fragment_program() functions into
arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch]. Clean up quite a bit of the arb parsing code. Rewrite parser extension code to avoid a mess of string operations every time the parser was used.
Diffstat (limited to 'src/mesa/shader/arbvertparse.c')
-rw-r--r--src/mesa/shader/arbvertparse.c96
1 files changed, 0 insertions, 96 deletions
diff --git a/src/mesa/shader/arbvertparse.c b/src/mesa/shader/arbvertparse.c
deleted file mode 100644
index 253f2937ed..0000000000
--- a/src/mesa/shader/arbvertparse.c
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version: 6.5
- *
- * 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"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-#define DEBUG_VP 0
-
-/**
- * \file arbvertparse.c
- * ARB_vertex_program parser.
- * \author Karl Rasche
- */
-
-#include "glheader.h"
-#include "imports.h"
-#include "program.h"
-#include "arbprogparse.h"
-#include "arbvertparse.h"
-
-
-/**
- * Parse the vertex program string. If success, update the given
- * vertex_program object with the new program. Else, leave the vertex_program
- * object unchanged.
- */
-void
-_mesa_parse_arb_vertex_program(GLcontext * ctx, GLenum target,
- const GLubyte * str, GLsizei len,
- struct vertex_program *program)
-{
- struct arb_program ap;
- (void) target;
- struct prog_instruction *newInstructions;
-
- /* set the program target before parsing */
- ap.Base.Target = GL_VERTEX_PROGRAM_ARB;
-
- if (!_mesa_parse_arb_program(ctx, str, len, &ap)) {
- /* Error in the program. Just return. */
- return;
- }
-
- /* Copy the relevant contents of the arb_program struct into the
- * vertex_program struct.
- */
- /* copy instruction buffer */
- newInstructions = (struct prog_instruction *)
- _mesa_malloc(ap.Base.NumInstructions * sizeof(struct prog_instruction));
- if (!newInstructions) {
- _mesa_error(ctx, GL_OUT_OF_MEMORY, "glProgramStringARB");
- return;
- }
- _mesa_memcpy(newInstructions, ap.VPInstructions,
- ap.Base.NumInstructions * sizeof(struct prog_instruction));
- if (program->Base.Instructions)
- _mesa_free(program->Base.Instructions);
- program->Base.Instructions = newInstructions;
- program->Base.String = ap.Base.String;
- program->Base.NumInstructions = ap.Base.NumInstructions;
- program->Base.NumTemporaries = ap.Base.NumTemporaries;
- program->Base.NumParameters = ap.Base.NumParameters;
- program->Base.NumAttributes = ap.Base.NumAttributes;
- program->Base.NumAddressRegs = ap.Base.NumAddressRegs;
- program->IsPositionInvariant = ap.HintPositionInvariant;
- program->Base.InputsRead = ap.Base.InputsRead;
- program->Base.OutputsWritten = ap.Base.OutputsWritten;
-
- if (program->Base.Parameters) {
- /* free previous program's parameters */
- _mesa_free_parameter_list(program->Base.Parameters);
- }
- program->Base.Parameters = ap.Base.Parameters;
-
-#if DEBUG_VP
- _mesa_print_program(&program->Base);
-#endif
-}