Lines Matching defs:source
76 * source register.
79 get_src_register_pointer(const struct prog_src_register *source,
83 GLint reg = source->Index;
85 if (source->RelAddr) {
93 switch (source->File) {
132 source->File);
179 * Fetch a 4-element float vector from the given source register.
183 fetch_vector4(const struct prog_src_register *source,
186 const GLfloat *src = get_src_register_pointer(source, machine);
188 if (source->Swizzle == SWIZZLE_NOOP) {
193 assert(GET_SWZ(source->Swizzle, 0) <= 3);
194 assert(GET_SWZ(source->Swizzle, 1) <= 3);
195 assert(GET_SWZ(source->Swizzle, 2) <= 3);
196 assert(GET_SWZ(source->Swizzle, 3) <= 3);
197 result[0] = src[GET_SWZ(source->Swizzle, 0)];
198 result[1] = src[GET_SWZ(source->Swizzle, 1)];
199 result[2] = src[GET_SWZ(source->Swizzle, 2)];
200 result[3] = src[GET_SWZ(source->Swizzle, 3)];
203 if (source->Negate) {
204 assert(source->Negate == NEGATE_XYZW);
225 fetch_vector4_deriv(const struct prog_src_register *source,
229 if (source->File == PROGRAM_INPUT &&
230 source->Index < (GLint) machine->NumDeriv) {
237 deriv[0] = machine->DerivX[source->Index][0] * invQ;
238 deriv[1] = machine->DerivX[source->Index][1] * invQ;
239 deriv[2] = machine->DerivX[source->Index][2] * invQ;
240 deriv[3] = machine->DerivX[source->Index][3] * invQ;
243 deriv[0] = machine->DerivY[source->Index][0] * invQ;
244 deriv[1] = machine->DerivY[source->Index][1] * invQ;
245 deriv[2] = machine->DerivY[source->Index][2] * invQ;
246 deriv[3] = machine->DerivY[source->Index][3] * invQ;
249 result[0] = deriv[GET_SWZ(source->Swizzle, 0)];
250 result[1] = deriv[GET_SWZ(source->Swizzle, 1)];
251 result[2] = deriv[GET_SWZ(source->Swizzle, 2)];
252 result[3] = deriv[GET_SWZ(source->Swizzle, 3)];
254 if (source->Negate) {
255 assert(source->Negate == NEGATE_XYZW);
272 fetch_vector1(const struct prog_src_register *source,
275 const GLfloat *src = get_src_register_pointer(source, machine);
277 result[0] = src[GET_SWZ(source->Swizzle, 0)];
279 if (source->Negate) {
1042 const struct prog_src_register *source = &inst->SrcReg[0];
1043 const GLfloat *src = get_src_register_pointer(source, machine);
1047 const GLuint swz = GET_SWZ(source->Swizzle, i);
1056 if (source->Negate & (1 << i))