Lines Matching refs:SrcReg

76 				&reader_data->Writer->U.I.PreSub.SrcReg[0],
77 &reader_data->Writer->U.I.PreSub.SrcReg[1])) {
91 if(reader_data->Writer->U.I.SrcReg[0].File != RC_FILE_TEMPORARY &&
92 reader_data->Writer->U.I.SrcReg[0].File != RC_FILE_INPUT &&
162 *reader_data.Readers[i].U.I.Src = chain_srcregs(*reader_data.Readers[i].U.I.Src, inst_mov->U.I.SrcReg[0]);
164 if (inst_mov->U.I.SrcReg[0].File == RC_FILE_PRESUB)
215 if (is_src_uniform_constant(inst->U.I.SrcReg[2], &swz, &negate)) {
222 if (is_src_uniform_constant(inst->U.I.SrcReg[1], &swz, &negate)) {
226 inst->U.I.SrcReg[0].Negate ^= RC_MASK_XYZW;
227 inst->U.I.SrcReg[1] = inst->U.I.SrcReg[2];
231 inst->U.I.SrcReg[0] = inst->U.I.SrcReg[2];
236 if (is_src_uniform_constant(inst->U.I.SrcReg[0], &swz, &negate)) {
240 inst->U.I.SrcReg[1].Negate ^= RC_MASK_XYZW;
241 inst->U.I.SrcReg[0] = inst->U.I.SrcReg[2];
245 inst->U.I.SrcReg[0] = inst->U.I.SrcReg[2];
256 if (is_src_uniform_constant(inst->U.I.SrcReg[0], &swz, &negate)) {
259 inst->U.I.SrcReg[0] = inst->U.I.SrcReg[1];
261 inst->U.I.SrcReg[0].Negate ^= RC_MASK_XYZW;
265 inst->U.I.SrcReg[0].Swizzle = RC_SWIZZLE_0000;
270 if (is_src_uniform_constant(inst->U.I.SrcReg[1], &swz, &negate)) {
274 inst->U.I.SrcReg[0].Negate ^= RC_MASK_XYZW;
278 inst->U.I.SrcReg[0].Swizzle = RC_SWIZZLE_0000;
289 if (is_src_uniform_constant(inst->U.I.SrcReg[0], &swz, &negate)) {
292 inst->U.I.SrcReg[0] = inst->U.I.SrcReg[1];
297 if (is_src_uniform_constant(inst->U.I.SrcReg[1], &swz, &negate)) {
323 if (GET_SWZ(inst->U.I.SrcReg[src].Swizzle, chan) <= 3)
326 inst->U.I.SrcReg[src].File = RC_FILE_NONE;
331 if (inst->U.I.SrcReg[src].File != RC_FILE_CONSTANT ||
332 inst->U.I.SrcReg[src].RelAddr ||
333 inst->U.I.SrcReg[src].Index >= c->Program.Constants.Count)
337 &c->Program.Constants.Constants[inst->U.I.SrcReg[src].Index];
342 newsrc = inst->U.I.SrcReg[src];
381 c->SwizzleCaps->IsNative(inst->U.I.Opcode, inst->U.I.SrcReg[src]))
384 inst->U.I.SrcReg[src] = newsrc;
401 memset(&inst->U.I.SrcReg[i], 0, sizeof(struct rc_src_register));
443 &reader_data->Writer->U.I.SrcReg[0],
444 &reader_data->Writer->U.I.SrcReg[1])) {
475 if (&reader.Inst->U.I.SrcReg[src_index] == reader.U.I.Src)
482 /* This function assumes that inst_add->U.I.SrcReg[0] and
483 * inst_add->U.I.SrcReg[1] aren't both negative. */
490 if (inst_add->U.I.SrcReg[1].Negate || inst_add->U.I.SrcReg[0].Negate)
495 if (inst_add->U.I.SrcReg[1].Negate) {
496 inst_reader->U.I.PreSub.SrcReg[0] = inst_add->U.I.SrcReg[1];
497 inst_reader->U.I.PreSub.SrcReg[1] = inst_add->U.I.SrcReg[0];
499 inst_reader->U.I.PreSub.SrcReg[0] = inst_add->U.I.SrcReg[0];
500 inst_reader->U.I.PreSub.SrcReg[1] = inst_add->U.I.SrcReg[1];
502 inst_reader->U.I.PreSub.SrcReg[0].Negate = 0;
503 inst_reader->U.I.PreSub.SrcReg[1].Negate = 0;
505 inst_reader->U.I.SrcReg[src_index] =
506 chain_srcregs(inst_reader->U.I.SrcReg[src_index],
507 inst_reader->U.I.PreSub.SrcReg[0]);
508 inst_reader->U.I.SrcReg[src_index].File = RC_FILE_PRESUB;
509 inst_reader->U.I.SrcReg[src_index].Index = presub_opcode;
539 get_swz(inst->U.I.SrcReg[i].Swizzle, chan);
551 struct rc_src_register src = inst->U.I.SrcReg[i];
567 unsigned src0_neg = inst_add->U.I.SrcReg[0].Negate & dstmask;
568 unsigned src1_neg = inst_add->U.I.SrcReg[1].Negate & dstmask;
570 if (inst_add->U.I.SrcReg[0].Swizzle != inst_add->U.I.SrcReg[1].Swizzle)
574 if (inst_add->U.I.SrcReg[0].Abs || inst_add->U.I.SrcReg[1].Abs)
578 if (inst_add->U.I.SrcReg[0].Negate && inst_add->U.I.SrcReg[1].Negate)
582 if (inst_add->U.I.SrcReg[0].Negate && src0_neg != dstmask)
586 if (inst_add->U.I.SrcReg[1].Negate && src1_neg != dstmask)
606 inst_reader->U.I.PreSub.SrcReg[0] = inst_add->U.I.SrcReg[1];
607 inst_reader->U.I.PreSub.SrcReg[0].Negate = 0;
609 inst_reader->U.I.SrcReg[src_index] = chain_srcregs(inst_reader->U.I.SrcReg[src_index],
610 inst_reader->U.I.PreSub.SrcReg[0]);
612 inst_reader->U.I.SrcReg[src_index].File = RC_FILE_PRESUB;
613 inst_reader->U.I.SrcReg[src_index].Index = RC_PRESUB_INV;
639 swz = GET_SWZ(inst_add->U.I.SrcReg[0].Swizzle, i);
647 if ((inst_add->U.I.SrcReg[1].Negate & inst_add->U.I.DstReg.WriteMask) !=
649 || inst_add->U.I.SrcReg[1].Abs
650 || (inst_add->U.I.SrcReg[1].File != RC_FILE_TEMPORARY
651 && inst_add->U.I.SrcReg[1].File != RC_FILE_CONSTANT)
652 || src_has_const_swz(inst_add->U.I.SrcReg[1])) {
714 if (inst_mul->U.I.SrcReg[i].File != RC_FILE_CONSTANT
715 && inst_mul->U.I.SrcReg[i].File != RC_FILE_TEMPORARY) {
718 if (inst_mul->U.I.SrcReg[i].File == RC_FILE_TEMPORARY) {
728 if (inst_mul->U.I.SrcReg[i].Negate) {
736 GET_SWZ(inst_mul->U.I.SrcReg[i].Swizzle, j);
756 if (!rc_src_reg_is_immediate(c, inst_mul->U.I.SrcReg[const_index].File,
757 inst_mul->U.I.SrcReg[const_index].Index)) {
761 inst_mul->U.I.SrcReg[const_index].Index,
762 inst_mul->U.I.SrcReg[const_index].Swizzle,
763 inst_mul->U.I.SrcReg[const_index].Negate,
783 RC_INSTRUCTION_NORMAL, &inst_mul->U.I.SrcReg[temp_index]);