summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_compile_function.c
diff options
context:
space:
mode:
authorBrian <brian@yutani.localnet.net>2007-04-21 12:08:56 -0600
committerBrian <brian@yutani.localnet.net>2007-04-21 12:30:58 -0600
commitcd3e39340f057712fcf02a35dff85645e475053a (patch)
treea7c6e2d0d6be2ccaa882075539e38935b77b5522 /src/mesa/shader/slang/slang_compile_function.c
parentad3cc95485c488e3920f9c460b373338043000c5 (diff)
Use new memory pool allocator. Lots of debug code still in place...
Diffstat (limited to 'src/mesa/shader/slang/slang_compile_function.c')
-rw-r--r--src/mesa/shader/slang/slang_compile_function.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/mesa/shader/slang/slang_compile_function.c b/src/mesa/shader/slang/slang_compile_function.c
index 2f74050b86..bb5be3feec 100644
--- a/src/mesa/shader/slang/slang_compile_function.c
+++ b/src/mesa/shader/slang/slang_compile_function.c
@@ -30,6 +30,7 @@
#include "imports.h"
#include "slang_compile.h"
+#include "slang_mem.h"
/* slang_fixup_table */
@@ -43,7 +44,11 @@ slang_fixup_table_init(slang_fixup_table * fix)
void
slang_fixup_table_free(slang_fixup_table * fix)
{
+#if USE_MEMPOOL
+ _slang_free(fix->table);
+#else
slang_alloc_free(fix->table);
+#endif
slang_fixup_table_init(fix);
}
@@ -54,7 +59,11 @@ GLboolean
slang_fixup_save(slang_fixup_table *fixups, GLuint address)
{
fixups->table = (GLuint *)
+#if USE_MEMPOOL
+ _slang_realloc(fixups->table,
+#else
slang_alloc_realloc(fixups->table,
+#endif
fixups->count * sizeof(GLuint),
(fixups->count + 1) * sizeof(GLuint));
if (fixups->table == NULL)
@@ -76,7 +85,11 @@ slang_function_construct(slang_function * func)
return 0;
func->parameters = (slang_variable_scope *)
+#if USE_MEMPOOL
+ _slang_alloc(sizeof(slang_variable_scope));
+#else
slang_alloc_malloc(sizeof(slang_variable_scope));
+#endif
if (func->parameters == NULL) {
slang_variable_destruct(&func->header);
return 0;
@@ -95,10 +108,18 @@ slang_function_destruct(slang_function * func)
{
slang_variable_destruct(&func->header);
slang_variable_scope_destruct(func->parameters);
+#if USE_MEMPOOL
+ _slang_free(func->parameters);
+#else
slang_alloc_free(func->parameters);
+#endif
if (func->body != NULL) {
slang_operation_destruct(func->body);
+#if USE_MEMPOOL
+ _slang_free(func->body);
+#else
slang_alloc_free(func->body);
+#endif
}
slang_fixup_table_free(&func->fixups);
}
@@ -122,7 +143,11 @@ slang_function_scope_destruct(slang_function_scope * scope)
for (i = 0; i < scope->num_functions; i++)
slang_function_destruct(scope->functions + i);
+#if USE_MEMPOOL
+ _slang_free(scope->functions);
+#else
slang_alloc_free(scope->functions);
+#endif
}