Lines Matching defs:source
101 * source register.
104 get_src_register_pointer(const struct prog_src_register *source,
108 GLint reg = source->Index;
110 if (source->RelAddr) {
118 switch (source->File) {
169 source->File);
219 * Fetch a 4-element float vector from the given source register.
223 fetch_vector4(const struct prog_src_register *source,
226 const GLfloat *src = get_src_register_pointer(source, machine);
229 if (source->Swizzle == SWIZZLE_NOOP) {
234 ASSERT(GET_SWZ(source->Swizzle, 0) <= 3);
235 ASSERT(GET_SWZ(source->Swizzle, 1) <= 3);
236 ASSERT(GET_SWZ(source->Swizzle, 2) <= 3);
237 ASSERT(GET_SWZ(source->Swizzle, 3) <= 3);
238 result[0] = src[GET_SWZ(source->Swizzle, 0)];
239 result[1] = src[GET_SWZ(source->Swizzle, 1)];
240 result[2] = src[GET_SWZ(source->Swizzle, 2)];
241 result[3] = src[GET_SWZ(source->Swizzle, 3)];
244 if (source->Abs) {
250 if (source->Negate) {
251 ASSERT(source->Negate == NEGATE_XYZW);
268 * Fetch a 4-element uint vector from the given source register.
272 fetch_vector4ui(const struct prog_src_register *source,
275 const GLuint *src = (GLuint *) get_src_register_pointer(source, machine);
278 if (source->Swizzle == SWIZZLE_NOOP) {
283 ASSERT(GET_SWZ(source->Swizzle, 0) <= 3);
284 ASSERT(GET_SWZ(source->Swizzle, 1) <= 3);
285 ASSERT(GET_SWZ(source->Swizzle, 2) <= 3);
286 ASSERT(GET_SWZ(source->Swizzle, 3) <= 3);
287 result[0] = src[GET_SWZ(source->Swizzle, 0)];
288 result[1] = src[GET_SWZ(source->Swizzle, 1)];
289 result[2] = src[GET_SWZ(source->Swizzle, 2)];
290 result[3] = src[GET_SWZ(source->Swizzle, 3)];
304 const struct prog_src_register *source,
308 if (source->File == PROGRAM_INPUT &&
309 source->Index < (GLint) machine->NumDeriv) {
316 deriv[0] = machine->DerivX[source->Index][0] * invQ;
317 deriv[1] = machine->DerivX[source->Index][1] * invQ;
318 deriv[2] = machine->DerivX[source->Index][2] * invQ;
319 deriv[3] = machine->DerivX[source->Index][3] * invQ;
322 deriv[0] = machine->DerivY[source->Index][0] * invQ;
323 deriv[1] = machine->DerivY[source->Index][1] * invQ;
324 deriv[2] = machine->DerivY[source->Index][2] * invQ;
325 deriv[3] = machine->DerivY[source->Index][3] * invQ;
328 result[0] = deriv[GET_SWZ(source->Swizzle, 0)];
329 result[1] = deriv[GET_SWZ(source->Swizzle, 1)];
330 result[2] = deriv[GET_SWZ(source->Swizzle, 2)];
331 result[3] = deriv[GET_SWZ(source->Swizzle, 3)];
333 if (source->Abs) {
339 if (source->Negate) {
340 ASSERT(source->Negate == NEGATE_XYZW);
357 fetch_vector1(const struct prog_src_register *source,
360 const GLfloat *src = get_src_register_pointer(source, machine);
363 result[0] = src[GET_SWZ(source->Swizzle, 0)];
365 if (source->Abs) {
368 if (source->Negate) {
375 fetch_vector1ui(const struct prog_src_register *source,
378 const GLuint *src = (GLuint *) get_src_register_pointer(source, machine);
379 return src[GET_SWZ(source->Swizzle, 0)];
1627 const struct prog_src_register *source = &inst->SrcReg[0];
1628 const GLfloat *src = get_src_register_pointer(source, machine);
1632 const GLuint swz = GET_SWZ(source->Swizzle, i);
1642 if (source->Negate & (1 << i))