projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
merge from master
[mesa.git]
/
src
/
mesa
/
drivers
/
dri
/
r300
/
r300_vertprog.c
diff --git
a/src/mesa/drivers/dri/r300/r300_vertprog.c
b/src/mesa/drivers/dri/r300/r300_vertprog.c
index 0c43270d757eff3acff36e0ad985d71d578192c1..aa2f20127ba81df942fcdcd41d8843b8368409d6 100644
(file)
--- a/
src/mesa/drivers/dri/r300/r300_vertprog.c
+++ b/
src/mesa/drivers/dri/r300/r300_vertprog.c
@@
-33,11
+33,13
@@
USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "macros.h"
#include "enums.h"
#include "program.h"
#include "macros.h"
#include "enums.h"
#include "program.h"
-#include "nvvertexec.h"
+#include "shader/prog_instruction.h"
+#include "shader/prog_parameter.h"
+#include "shader/prog_statevars.h"
+#include "tnl/tnl.h"
#include "r300_context.h"
#include "r300_program.h"
#include "r300_context.h"
#include "r300_program.h"
-#include "program_instruction.h"
#if SWIZZLE_X != VSF_IN_COMPONENT_X || \
SWIZZLE_Y != VSF_IN_COMPONENT_Y || \
#if SWIZZLE_X != VSF_IN_COMPONENT_X || \
SWIZZLE_Y != VSF_IN_COMPONENT_Y || \
@@
-103,7
+105,7
@@
int r300VertexProgUpdateParams(GLcontext *ctx, struct r300_vertex_program_cont *
struct gl_program_parameter_list *paramList;
if (mesa_vp->IsNVProgram) {
struct gl_program_parameter_list *paramList;
if (mesa_vp->IsNVProgram) {
- _mesa_
init_vp_per_primitive_register
s(ctx);
+ _mesa_
load_tracked_matrice
s(ctx);
for (pi=0; pi < MAX_NV_VERTEX_PROGRAM_PARAMS; pi++) {
*dst++=ctx->VertexProgram.Parameters[pi][0];
for (pi=0; pi < MAX_NV_VERTEX_PROGRAM_PARAMS; pi++) {
*dst++=ctx->VertexProgram.Parameters[pi][0];
@@
-880,7
+882,7
@@
static void position_invariant(struct gl_program *prog)
struct gl_program_parameter_list *paramList;
int i;
struct gl_program_parameter_list *paramList;
int i;
-
GLint tokens[6] = { STATE_MATRIX, STATE_MVP, 0, 0, 0, STATE_MATRIX
};
+
gl_state_index tokens[STATE_LENGTH] = { STATE_MVP_MATRIX, 0, 0, 0, 0
};
#ifdef PREFER_DP4
tokens[5] = STATE_MATRIX;
#ifdef PREFER_DP4
tokens[5] = STATE_MATRIX;
@@
-946,7
+948,7
@@
static void position_invariant(struct gl_program *prog)
#endif
}
#endif
}
- _mesa_
memcpy(&vpi[i], prog->Instructions, prog->NumInstructions * sizeof(struct prog_instruction)
);
+ _mesa_
copy_instructions (&vpi[i], prog->Instructions, prog->NumInstructions
);
free(prog->Instructions);
free(prog->Instructions);
@@
-969,10
+971,11
@@
static void insert_wpos(struct r300_vertex_program *vp,
vpi = _mesa_alloc_instructions (prog->NumInstructions + 2);
_mesa_init_instructions (vpi, prog->NumInstructions + 2);
/* all but END */
vpi = _mesa_alloc_instructions (prog->NumInstructions + 2);
_mesa_init_instructions (vpi, prog->NumInstructions + 2);
/* all but END */
- _mesa_
memcpy(vpi, prog->Instructions, (prog->NumInstructions - 1) * sizeof(struct prog_instruction)
);
+ _mesa_
copy_instructions (vpi, prog->Instructions, prog->NumInstructions - 1
);
/* END */
/* END */
- _mesa_memcpy(&vpi[prog->NumInstructions + 1], &prog->Instructions[prog->NumInstructions - 1],
- sizeof(struct prog_instruction));
+ _mesa_copy_instructions (&vpi[prog->NumInstructions + 1],
+ &prog->Instructions[prog->NumInstructions - 1],
+ 1);
vpi_insert = &vpi[prog->NumInstructions - 1];
vpi_insert[i].Opcode = OPCODE_MOV;
vpi_insert = &vpi[prog->NumInstructions - 1];
vpi_insert[i].Opcode = OPCODE_MOV;