mesa: when negating scalar src args, use NEGATE_XYZW, not NEGATE_X

This makes things easier on the back-end when generating GPU code.
This commit is contained in:
Brian Paul 2008-03-25 11:22:57 -06:00
parent 331a56136e
commit bedb93e989

View file

@ -2578,7 +2578,7 @@ parse_fp_vector_src_reg(GLcontext * ctx, const GLubyte ** inst,
GLboolean isRelOffset;
/* Grab the sign */
negate = (parse_sign (inst) == -1) ? 0xf : 0x0;
negate = (parse_sign (inst) == -1) ? NEGATE_XYZW : NEGATE_NONE;
/* And the src reg */
if (parse_src_reg(ctx, inst, vc_head, program, &file, &index, &isRelOffset))
@ -2635,7 +2635,7 @@ parse_fp_scalar_src_reg (GLcontext * ctx, const GLubyte ** inst,
GLboolean IsRelOffset;
/* Grab the sign */
Negate = (parse_sign (inst) == -1) ? 0x1 : 0x0;
Negate = (parse_sign (inst) == -1) ? NEGATE_XYZW : NEGATE_NONE;
/* And the src reg */
if (parse_src_reg (ctx, inst, vc_head, Program, &File, &Index, &IsRelOffset))
@ -3123,7 +3123,7 @@ parse_vp_vector_src_reg(GLcontext * ctx, const GLubyte ** inst,
GLboolean isRelOffset;
/* Grab the sign */
negateMask = (parse_sign (inst) == -1) ? 0xf : 0x0;
negateMask = (parse_sign (inst) == -1) ? NEGATE_XYZW : NEGATE_NONE;
/* And the src reg */
if (parse_src_reg (ctx, inst, vc_head, program, &file, &index, &isRelOffset))
@ -3150,12 +3150,12 @@ parse_vp_scalar_src_reg (GLcontext * ctx, const GLubyte ** inst,
{
enum register_file File;
GLint Index;
GLubyte Negate;
GLubyte negateMask;
GLubyte Swizzle[4];
GLboolean IsRelOffset;
/* Grab the sign */
Negate = (parse_sign (inst) == -1) ? 0x1 : 0x0;
negateMask = (parse_sign (inst) == -1) ? NEGATE_XYZW : NEGATE_NONE;
/* And the src reg */
if (parse_src_reg (ctx, inst, vc_head, Program, &File, &Index, &IsRelOffset))
@ -3167,7 +3167,7 @@ parse_vp_scalar_src_reg (GLcontext * ctx, const GLubyte ** inst,
reg->File = File;
reg->Index = Index;
reg->Swizzle = (Swizzle[0] << 0);
reg->NegateBase = Negate;
reg->NegateBase = negateMask;
reg->RelAddr = IsRelOffset;
return 0;
}