From ee295fccdd0c94cb6b8af4dfb30283e39f548223 Mon Sep 17 00:00:00 2001 From: Michal Krol Date: Mon, 29 Oct 2007 16:20:45 +0000 Subject: Make gallium compile in win32. Use FREE, MALLOC, CALLOC, GETENV wrappers. Silence compiler warnings. Add proper copyrights. --- src/mesa/pipe/tgsi/exec/tgsi_dump.c | 44 ++++++++++++++++++++++++------------ src/mesa/pipe/tgsi/exec/tgsi_exec.c | 22 ++++++++++-------- src/mesa/pipe/tgsi/exec/tgsi_parse.c | 31 +++++++++++++++++++++++-- src/mesa/pipe/tgsi/exec/tgsi_sse2.c | 29 +++++++++++++++++++++++- 4 files changed, 99 insertions(+), 27 deletions(-) (limited to 'src/mesa/pipe/tgsi/exec') diff --git a/src/mesa/pipe/tgsi/exec/tgsi_dump.c b/src/mesa/pipe/tgsi/exec/tgsi_dump.c index f740500dec..1df71efff7 100644 --- a/src/mesa/pipe/tgsi/exec/tgsi_dump.c +++ b/src/mesa/pipe/tgsi/exec/tgsi_dump.c @@ -1,3 +1,30 @@ +/************************************************************************** + * + * Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas. + * 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, sub license, 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 (including the + * next paragraph) 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 NON-INFRINGEMENT. + * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS 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. + * + **************************************************************************/ + #include "tgsi_platform.h" #include "tgsi_core.h" @@ -7,15 +34,6 @@ struct text_dump unsigned tabs; }; -static void -text_dump_write( - struct text_dump *dump, - const void *buffer, - unsigned size ) -{ - fwrite( buffer, size, 1, dump->file ); -} - static void text_dump_str( struct text_dump *dump, @@ -25,13 +43,13 @@ text_dump_str( size_t len = strlen( str ); for( i = 0; i < len; i++ ) { - text_dump_write( dump, &str[i], 1 ); + fprintf( dump->file, "%c", str[i] ); if( str[i] == '\n' ) { unsigned i; for( i = 0; i < dump->tabs; i++ ) { - text_dump_write( dump, " ", 4 ); + fprintf( dump->file, " " ); } } } @@ -1434,9 +1452,5 @@ tgsi_dump( TXT( "\ntgsi-dump end -------------------\n" ); tgsi_parse_free( &parse ); - - if (dump->file != stderr && - dump->file != stdout) - fclose( dump->file ); } diff --git a/src/mesa/pipe/tgsi/exec/tgsi_exec.c b/src/mesa/pipe/tgsi/exec/tgsi_exec.c index e4f23d3eef..7607ded63a 100644 --- a/src/mesa/pipe/tgsi/exec/tgsi_exec.c +++ b/src/mesa/pipe/tgsi/exec/tgsi_exec.c @@ -133,10 +133,10 @@ tgsi_exec_prepare( struct tgsi_exec_machine *mach ) labels->count = 0; declarations = (struct tgsi_full_declaration *) - malloc(maxDeclarations * sizeof(struct tgsi_full_declaration)); + MALLOC( maxDeclarations * sizeof(struct tgsi_full_declaration) ); instructions = (struct tgsi_full_instruction *) - malloc(maxInstructions * sizeof(struct tgsi_full_instruction)); + MALLOC( maxInstructions * sizeof(struct tgsi_full_instruction) ); k = tgsi_parse_init( &parse, mach->Tokens ); if (k != TGSI_PARSE_OK) { @@ -153,10 +153,12 @@ tgsi_exec_prepare( struct tgsi_exec_machine *mach ) case TGSI_TOKEN_TYPE_DECLARATION: /* save expanded declaration */ if (numDeclarations == maxDeclarations) { - maxDeclarations += 10; - declarations = realloc(declarations, + declarations = REALLOC(declarations, maxDeclarations + * sizeof(struct tgsi_full_instruction), + (maxDeclarations + 10) * sizeof(struct tgsi_full_instruction)); + maxDeclarations += 10; } memcpy(declarations + numDeclarations, &parse.FullToken.FullInstruction, @@ -186,10 +188,12 @@ tgsi_exec_prepare( struct tgsi_exec_machine *mach ) /* save expanded instruction */ if (numInstructions == maxInstructions) { - maxInstructions += 10; - instructions = realloc(instructions, + instructions = REALLOC(instructions, maxInstructions + * sizeof(struct tgsi_full_instruction), + (maxInstructions + 10) * sizeof(struct tgsi_full_instruction)); + maxInstructions += 10; } memcpy(instructions + numInstructions, &parse.FullToken.FullInstruction, @@ -204,13 +208,13 @@ tgsi_exec_prepare( struct tgsi_exec_machine *mach ) tgsi_parse_free (&parse); if (mach->Declarations) { - free(mach->Declarations); + FREE( mach->Declarations ); } mach->Declarations = declarations; mach->NumDeclarations = numDeclarations; if (mach->Instructions) { - free(mach->Instructions); + FREE( mach->Instructions ); } mach->Instructions = instructions; mach->NumInstructions = numInstructions; @@ -242,7 +246,7 @@ tgsi_exec_machine_init( k = tgsi_parse_init (&parse, mach->Tokens); if (k != TGSI_PARSE_OK) { - printf("Problem parsing!\n"); + fprintf( stderr, "Problem parsing!\n" ); return; } diff --git a/src/mesa/pipe/tgsi/exec/tgsi_parse.c b/src/mesa/pipe/tgsi/exec/tgsi_parse.c index 1096afffad..aee71decb3 100644 --- a/src/mesa/pipe/tgsi/exec/tgsi_parse.c +++ b/src/mesa/pipe/tgsi/exec/tgsi_parse.c @@ -1,3 +1,30 @@ +/************************************************************************** + * + * Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas. + * 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, sub license, 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 (including the + * next paragraph) 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 NON-INFRINGEMENT. + * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS 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. + * + **************************************************************************/ + #include "tgsi_platform.h" #include "tgsi_core.h" @@ -13,7 +40,7 @@ tgsi_full_token_free( union tgsi_full_token *full_token ) { if( full_token->Token.Type == TGSI_TOKEN_TYPE_IMMEDIATE ) { - free( full_token->FullImmediate.u.Pointer ); + FREE( full_token->FullImmediate.u.Pointer ); } } @@ -123,7 +150,7 @@ tgsi_parse_token( switch (imm->Immediate.DataType) { case TGSI_IMM_FLOAT32: - imm->u.Pointer = malloc( + imm->u.Pointer = MALLOC( sizeof( struct tgsi_immediate_float32 ) * (imm->Immediate.Size - 1) ); for( i = 0; i < imm->Immediate.Size - 1; i++ ) { next_token( ctx, &imm->u.ImmediateFloat32[i] ); diff --git a/src/mesa/pipe/tgsi/exec/tgsi_sse2.c b/src/mesa/pipe/tgsi/exec/tgsi_sse2.c index a71c5155c0..bc20d9ca05 100755 --- a/src/mesa/pipe/tgsi/exec/tgsi_sse2.c +++ b/src/mesa/pipe/tgsi/exec/tgsi_sse2.c @@ -1,3 +1,30 @@ +/************************************************************************** + * + * Copyright 2007 Tungsten Graphics, Inc., Cedar Park, Texas. + * 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, sub license, 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 (including the + * next paragraph) 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 NON-INFRINGEMENT. + * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS 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. + * + **************************************************************************/ + #include "tgsi_platform.h" #include "tgsi_core.h" #include "x86/rtasm/x86sse.h" @@ -465,7 +492,7 @@ emit_shufps( struct x86_function *func, struct x86_reg dst, struct x86_reg src, - unsigned shuf ) + unsigned char shuf ) { DUMP_RRI( "SHUFPS", dst, src, shuf ); sse_shufps( func, dst, src, shuf ); -- cgit v1.2.3