#endif
#endif
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
-typedef void (XSTDCALL *sse2_function)(
+typedef void (XSTDCALL *codegen_function) (
const struct tgsi_exec_vector *input,
struct tgsi_exec_vector *output,
float (*constant)[4],
struct tgsi_exec_vector *temporary );
-#endif
/**
* Transform vertices with the current vertex program/shader
/* run shader */
if( draw->vertex_shader.executable != NULL ) {
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
- sse2_function func = (sse2_function) draw->vertex_shader.executable;
+ codegen_function func = (codegen_function) draw->vertex_shader.executable;
func(
machine.Inputs,
machine.Outputs,
machine.Consts,
machine.Temps );
-#else
- assert( 0 );
-#endif
}
else {
tgsi_exec_machine_run( &machine );
#endif
#endif
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
-typedef void (XSTDCALL *sse2_function)(
+typedef void (XSTDCALL *codegen_function)(
const struct tgsi_exec_vector *input,
struct tgsi_exec_vector *output,
float (*constant)[4],
struct tgsi_exec_vector *temporary,
const struct tgsi_interp_coef *coef );
-#endif
/* This should be done by the fragment shader execution unit (code
* generated from the decl instructions). Do it here for now.
/* run shader */
if( softpipe->fs->executable != NULL ) {
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
- sse2_function func = (sse2_function) softpipe->fs->executable;
+ codegen_function func = (codegen_function) softpipe->fs->executable;
func(
machine.Inputs,
machine.Outputs,
machine.Consts,
machine.Temps,
machine.InterpCoefs );
-#else
- assert( 0 );
-#endif
}
else {
tgsi_exec_machine_run( &machine );
#include "tgsi_core.h"
#include "x86/rtasm/x86sse.h"
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
#define FOR_EACH_CHANNEL( CHAN )\
for( CHAN = 0; CHAN < 4; CHAN++ )
prog->serialNo = 1;
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
x86_init_func( &prog->sse2_program );
#endif
prog->serialNo = 1;
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
x86_init_func( &prog->sse2_program );
#endif
case GL_VERTEX_PROGRAM_ARB:
{
struct st_vertex_program *stvp = (struct st_vertex_program *) prog;
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
x86_release_func( &stvp->sse2_program );
#endif
st_remove_vertex_program(st, stvp);
{
struct st_fragment_program *stfp
= (struct st_fragment_program *) prog;
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
x86_release_func( &stfp->sse2_program );
#endif
st_remove_fragment_program(st, stfp);
if (TGSI_DEBUG)
tgsi_dump( tokensOut, 0 );
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
if (stvp->sse2_program.csr == stvp->sse2_program.store)
tgsi_emit_sse2( tokensOut, &stvp->sse2_program );
if (TGSI_DEBUG)
tgsi_dump( tokensOut, 0/*TGSI_DUMP_VERBOSE*/ );
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
if (stfp->sse2_program.csr == stfp->sse2_program.store)
tgsi_emit_sse2_fs( tokensOut, &stfp->sse2_program );
/** The program in TGSI format */
struct tgsi_token tokens[ST_FP_MAX_TOKENS];
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
struct x86_function sse2_program;
#endif
/** The program in TGSI format */
struct tgsi_token tokens[ST_FP_MAX_TOKENS];
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
struct x86_function sse2_program;
#endif
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
#include "imports.h"
#include "x86sse.h"
#ifndef _X86SSE_H_
#define _X86SSE_H_
-#if defined(USE_X86_ASM) || defined(SLANG_X86)
+#if defined(__i386__) || defined(__386__)
#include "glheader.h"