projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mesa: ensure UsesFogFragCoord value is set for non-glsl shaders
[mesa.git]
/
src
/
mesa
/
shader
/
prog_execute.h
diff --git
a/src/mesa/shader/prog_execute.h
b/src/mesa/shader/prog_execute.h
index 1eb9e73d01abd211186810266508bc506ee57b9f..adefc5439dea2bf273518c061eb0f793400e8da1 100644
(file)
--- a/
src/mesa/shader/prog_execute.h
+++ b/
src/mesa/shader/prog_execute.h
@@
-1,6
+1,6
@@
/*
* Mesa 3-D graphics library
/*
* Mesa 3-D graphics library
- * Version:
6.5
.3
+ * Version:
7.0
.3
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@
-25,6
+25,8
@@
#ifndef PROG_EXECUTE_H
#define PROG_EXECUTE_H
#ifndef PROG_EXECUTE_H
#define PROG_EXECUTE_H
+#include "main/config.h"
+
typedef void (*FetchTexelLodFunc)(GLcontext *ctx, const GLfloat texcoord[4],
GLfloat lambda, GLuint unit, GLfloat color[4]);
typedef void (*FetchTexelLodFunc)(GLcontext *ctx, const GLfloat texcoord[4],
GLfloat lambda, GLuint unit, GLfloat color[4]);
@@
-32,13
+34,10
@@
typedef void (*FetchTexelLodFunc)(GLcontext *ctx, const GLfloat texcoord[4],
typedef void (*FetchTexelDerivFunc)(GLcontext *ctx, const GLfloat texcoord[4],
const GLfloat texdx[4],
const GLfloat texdy[4],
typedef void (*FetchTexelDerivFunc)(GLcontext *ctx, const GLfloat texcoord[4],
const GLfloat texdx[4],
const GLfloat texdy[4],
+ GLfloat lodBias,
GLuint unit, GLfloat color[4]);
GLuint unit, GLfloat color[4]);
-/** The larger of VERT_RESULT_MAX, FRAG_RESULT_MAX */
-#define MAX_PROGRAM_OUTPUTS VERT_RESULT_MAX
-
-
/**
* Virtual machine state used during execution of vertex/fragment programs.
*/
/**
* Virtual machine state used during execution of vertex/fragment programs.
*/
@@
-48,6
+47,9
@@
struct gl_program_machine
/** Fragment Input attributes */
GLfloat (*Attribs)[MAX_WIDTH][4];
/** Fragment Input attributes */
GLfloat (*Attribs)[MAX_WIDTH][4];
+ GLfloat (*DerivX)[4];
+ GLfloat (*DerivY)[4];
+ GLuint NumDeriv; /**< Max index into DerivX/Y arrays */
GLuint CurElement; /**< Index into Attribs arrays */
/** Vertex Input attribs */
GLuint CurElement; /**< Index into Attribs arrays */
/** Vertex Input attribs */
@@
-55,9
+57,11
@@
struct gl_program_machine
GLfloat Temporaries[MAX_PROGRAM_TEMPS][4];
GLfloat Outputs[MAX_PROGRAM_OUTPUTS][4];
GLfloat Temporaries[MAX_PROGRAM_TEMPS][4];
GLfloat Outputs[MAX_PROGRAM_OUTPUTS][4];
+ GLfloat (*EnvParams)[4]; /**< Vertex or Fragment env parameters */
GLuint CondCodes[4]; /**< COND_* value for x/y/z/w */
GLuint CondCodes[4]; /**< COND_* value for x/y/z/w */
+ GLint AddressReg[MAX_PROGRAM_ADDRESS_REGS][4];
- GLint AddressReg[MAX_VERTEX_PROGRAM_ADDRESS_REGS][4];
+ const GLubyte *Samplers; /** Array mapping sampler var to tex unit */
GLuint CallStack[MAX_PROGRAM_CALL_DEPTH]; /**< For CAL/RET instructions */
GLuint StackDepth; /**< Index/ptr to top of CallStack[] */
GLuint CallStack[MAX_PROGRAM_CALL_DEPTH]; /**< For CAL/RET instructions */
GLuint StackDepth; /**< Index/ptr to top of CallStack[] */
@@
-69,13
+73,13
@@
struct gl_program_machine
extern void
extern void
-_mesa_get_program_register(GLcontext *ctx,
enum
register_file file,
+_mesa_get_program_register(GLcontext *ctx,
gl_
register_file file,
GLuint index, GLfloat val[4]);
extern GLboolean
_mesa_execute_program(GLcontext *ctx,
GLuint index, GLfloat val[4]);
extern GLboolean
_mesa_execute_program(GLcontext *ctx,
- const struct gl_program *program,
GLuint maxInst,
- struct gl_program_machine *machine
, GLuint element
);
+ const struct gl_program *program,
+ struct gl_program_machine *machine);
#endif /* PROG_EXECUTE_H */
#endif /* PROG_EXECUTE_H */