projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mesa: inline _mesa_add_unnamed_constant()
[mesa.git]
/
src
/
mesa
/
program
/
prog_opt_constant_fold.c
diff --git
a/src/mesa/program/prog_opt_constant_fold.c
b/src/mesa/program/prog_opt_constant_fold.c
index 3811c0d8aa6b40da4a9a3d60d2b30eebddd365d8..1d796dcf2e43b809101ca5aa8ea1c5cfc55849a7 100644
(file)
--- a/
src/mesa/program/prog_opt_constant_fold.c
+++ b/
src/mesa/program/prog_opt_constant_fold.c
@@
-38,6
+38,8
@@
src_regs_are_constant(const struct prog_instruction *inst, unsigned num_srcs)
for (i = 0; i < num_srcs; i++) {
if (inst->SrcReg[i].File != PROGRAM_CONSTANT)
return false;
for (i = 0; i < num_srcs; i++) {
if (inst->SrcReg[i].File != PROGRAM_CONSTANT)
return false;
+ if (inst->SrcReg[i].RelAddr)
+ return false;
}
return true;
}
return true;
@@
-80,7
+82,6
@@
src_regs_are_same(const struct prog_src_register *a,
return (a->File == b->File)
&& (a->Index == b->Index)
&& (a->Swizzle == b->Swizzle)
return (a->File == b->File)
&& (a->Index == b->Index)
&& (a->Swizzle == b->Swizzle)
- && (a->Abs == b->Abs)
&& (a->Negate == b->Negate)
&& (a->RelAddr == 0)
&& (b->RelAddr == 0);
&& (a->Negate == b->Negate)
&& (a->RelAddr == 0)
&& (b->RelAddr == 0);
@@
-97,13
+98,6
@@
get_value(struct gl_program *prog, struct prog_src_register *r, float *data)
data[2] = value[GET_SWZ(r->Swizzle, 2)].f;
data[3] = value[GET_SWZ(r->Swizzle, 3)].f;
data[2] = value[GET_SWZ(r->Swizzle, 2)].f;
data[3] = value[GET_SWZ(r->Swizzle, 3)].f;
- if (r->Abs) {
- data[0] = fabsf(data[0]);
- data[1] = fabsf(data[1]);
- data[2] = fabsf(data[2]);
- data[3] = fabsf(data[3]);
- }
-
if (r->Negate & 0x01) {
data[0] = -data[0];
}
if (r->Negate & 0x01) {
data[0] = -data[0];
}