From 4e3002b50fcedf3a6db1ac7394077bc3337ccda1 Mon Sep 17 00:00:00 2001 From: Keith Whitwell Date: Thu, 16 Jul 2009 00:23:33 +0100 Subject: tgsi: no need to separately malloc input and output arrays Can now guarantee alignment in the initial allocation of the tgsi exec machine. --- src/gallium/auxiliary/tgsi/tgsi_exec.c | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) (limited to 'src/gallium/auxiliary/tgsi/tgsi_exec.c') diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c index d9ebd955c8..fe571a86bc 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_exec.c +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c @@ -379,24 +379,12 @@ tgsi_exec_machine_create( void ) mach->Samplers = NULL; mach->Consts = NULL; - mach->Inputs = NULL; - mach->Outputs = NULL; mach->Tokens = NULL; mach->Primitives = NULL; mach->InterpCoefs = NULL; mach->Instructions = NULL; mach->Declarations = NULL; - mach->Inputs = align_malloc(PIPE_MAX_ATTRIBS * - sizeof(struct tgsi_exec_vector), 16); - if (!mach->Inputs) - goto fail; - - mach->Outputs = align_malloc(PIPE_MAX_ATTRIBS * - sizeof(struct tgsi_exec_vector), 16); - if (!mach->Outputs) - goto fail; - /* Setup constants. */ for( i = 0; i < 4; i++ ) { mach->Temps[TEMP_0_I].xyzw[TEMP_0_C].u[i] = 0x00000000; @@ -420,12 +408,7 @@ tgsi_exec_machine_create( void ) return mach; fail: - if (mach) { - align_free(mach->Inputs); - align_free(mach->Outputs); - align_free(mach); - } - + align_free(mach); return NULL; } @@ -433,16 +416,11 @@ fail: void tgsi_exec_machine_destroy(struct tgsi_exec_machine *mach) { - if (mach->Instructions) { + if (mach) { FREE(mach->Instructions); - mach->Instructions = NULL; - mach->NumInstructions = 0; - } - if (mach->Declarations) { FREE(mach->Declarations); - mach->Declarations = NULL; - mach->NumDeclarations = 0; } + align_free(mach); } -- cgit v1.2.3