mesa: added _mesa_free_instructions()
authorBrian <brian.paul@tungstengraphics.com>
Mon, 7 Apr 2008 17:15:23 +0000 (11:15 -0600)
committerBrian <brian.paul@tungstengraphics.com>
Mon, 7 Apr 2008 17:23:43 +0000 (11:23 -0600)
src/mesa/shader/prog_instruction.c
src/mesa/shader/prog_instruction.h

index 066129037a7c94e5066f49f70539d7e0a10e9b95..bea5d0551e47e464d1d1f4d533794104a734dbc7 100644 (file)
@@ -118,6 +118,23 @@ _mesa_copy_instructions(struct prog_instruction *dest,
 }
 
 
+/**
+ * Free an array of instructions
+ */
+void
+_mesa_free_instructions(struct prog_instruction *inst, GLuint count)
+{
+   GLuint i;
+   for (i = 0; i < count; i++) {
+      if (inst[i].Data)
+         _mesa_free(inst[i].Data);
+      if (inst[i].Comment)
+         _mesa_free((char *) inst[i].Comment);
+   }
+   _mesa_free(inst);
+}
+
+
 /**
  * Basic info about each instruction
  */
index e8a2407ea85e77b3f62d4dc6207794e2ec3b2ee6..711166f9ddbe8a62bbffb675736982edb4af50ab 100644 (file)
@@ -439,6 +439,9 @@ extern struct prog_instruction *
 _mesa_copy_instructions(struct prog_instruction *dest,
                         const struct prog_instruction *src, GLuint n);
 
+extern void
+_mesa_free_instructions(struct prog_instruction *inst, GLuint count);
+
 extern GLuint
 _mesa_num_inst_src_regs(gl_inst_opcode opcode);