Home | History | Annotate | Download | only in r200

Lines Matching refs:src

250 static unsigned long t_src_index(struct r200_vertex_program *vp, struct prog_src_register *src)
256 if(src->File == PROGRAM_INPUT){
257 /* if(vp->inputs[src->Index] != -1)
258 return vp->inputs[src->Index];
264 vp->inputs[src->Index] = max_reg+1;*/
267 assert(vp->inputs[src->Index] != -1);
268 return vp->inputs[src->Index];
270 if (src->Index < 0) {
274 return src->Index;
278 static unsigned long t_src(struct r200_vertex_program *vp, struct prog_src_register *src)
281 return MAKE_VSF_SOURCE(t_src_index(vp, src),
282 t_swizzle(GET_SWZ(src->Swizzle, 0)),
283 t_swizzle(GET_SWZ(src->Swizzle, 1)),
284 t_swizzle(GET_SWZ(src->Swizzle, 2)),
285 t_swizzle(GET_SWZ(src->Swizzle, 3)),
286 t_src_class(src->File),
287 src->Negate) | (src->RelAddr << 4);
290 static unsigned long t_src_scalar(struct r200_vertex_program *vp, struct prog_src_register *src)
293 return MAKE_VSF_SOURCE(t_src_index(vp, src),
294 t_swizzle(GET_SWZ(src->Swizzle, 0)),
295 t_swizzle(GET_SWZ(src->Swizzle, 0)),
296 t_swizzle(GET_SWZ(src->Swizzle, 0)),
297 t_swizzle(GET_SWZ(src->Swizzle, 0)),
298 t_src_class(src->File),
299 src->Negate ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src->RelAddr << 4);
444 struct prog_src_register src[3];
599 src[i] = vpi->SrcReg[i];
603 if (src[i].File == PROGRAM_INPUT) {
604 if (src[i].Index == VERT_ATTRIB_NORMAL) {
607 if (GET_SWZ(src[i].Swizzle, j) == SWIZZLE_W) {
608 src[i].Swizzle &= ~(SWIZZLE_W << (j*3));
609 src[i].Swizzle |= SWIZZLE_ONE << (j*3);
613 else if (src[i].Index == VERT_ATTRIB_COLOR1) {
616 if (GET_SWZ(src[i].Swizzle, j) == SWIZZLE_W) {
617 src[i].Swizzle &= ~(SWIZZLE_W << (j*3));
618 src[i].Swizzle |= SWIZZLE_ZERO << (j*3);
622 else if (src[i].Index == VERT_ATTRIB_FOG) {
625 if (GET_SWZ(src[i].Swizzle, j) == SWIZZLE_W) {
626 src[i].Swizzle &= ~(SWIZZLE_W << (j*3));
627 src[i].Swizzle |= SWIZZLE_ONE << (j*3);
629 else if ((GET_SWZ(src[i].Swizzle, j) == SWIZZLE_Y) ||
630 GET_SWZ(src[i].Swizzle, j) == SWIZZLE_Z) {
631 src[i].Swizzle &= ~(SWIZZLE_W << (j*3));
632 src[i].Swizzle |= SWIZZLE_ZERO << (j*3);
640 if( CMP_SRCS(src[1], src[2]) || CMP_SRCS(src[0], src[2]) ){
645 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[2]),
648 t_src_class(src[2].File), VSF_FLAG_NONE) | (src[2].RelAddr << 4);
654 src[2].File = PROGRAM_TEMPORARY;
655 src[2].Index = u_temp_i;
656 src[2].RelAddr = 0;
662 if( CMP_SRCS(src[1], src[0]) ){
667 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
670 t_src_class(src[0].File), VSF_FLAG_NONE) | (src[0].RelAddr << 4);
676 src[0].File = PROGRAM_TEMPORARY;
677 src[0].Index = u_temp_i;
678 src[0].RelAddr = 0;
699 if ((src[0].File == src[1].File) &&
700 (src[0].Index == src[1].Index)) {
703 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
704 t_swizzle(GET_SWZ(src[0].Swizzle, 0)),
706 t_swizzle(GET_SWZ(src[1].Swizzle, 0)),
708 t_src_class(src[0].File),
709 src[0].Negate) | (src[0].RelAddr << 4);
717 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
718 t_swizzle(GET_SWZ(src[0].Swizzle, 0)),
720 t_src_class(src[0].File),
721 src[0].Negate ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src[0].RelAddr << 4);
722 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
724 t_swizzle(GET_SWZ(src[1].Swizzle, 0)), SWIZZLE_ZERO,
725 t_src_class(src[1].File),
726 src[1].Negate ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src[1].RelAddr << 4);
749 o_inst->src0 = t_src(vp, &src[0]);
758 hw_op=(src[0].File == PROGRAM_TEMPORARY &&
759 src[1].File == PROGRAM_TEMPORARY &&
760 src[2].File == PROGRAM_TEMPORARY &&
761 (((src[0].RelAddr << 8) | src[0].Index) != ((src[1].RelAddr << 8) | src[1].Index)) &&
762 (((src[0].RelAddr << 8) | src[0].Index) != ((src[2].RelAddr << 8) | src[2].Index)) &&
763 (((src[1].RelAddr << 8) | src[1].Index) != ((src[2].RelAddr << 8) | src[2].Index))) ?
768 o_inst->src0 = t_src(vp, &src[0]);
772 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
774 t_src_class(src[1].File),
775 src[1].Negate) | (src[1].RelAddr << 4);
776 o_inst->src2 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
778 t_src_class(src[1].File),
779 src[1].Negate) | (src[1].RelAddr << 4);
782 o_inst->src1 = t_src(vp, &src[1]);
783 o_inst->src2 = t_src(vp, &src[2]);
786 o_inst->src1 = t_src(vp, &src[1]);
787 o_inst->src2 = t_src(vp, &src[2]);
795 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
796 t_swizzle(GET_SWZ(src[0].Swizzle, 0)),
797 t_swizzle(GET_SWZ(src[0].Swizzle, 1)),
798 t_swizzle(GET_SWZ(src[0].Swizzle, 2)),
800 t_src_class(src[0].File),
801 src[0].Negate) | (src[0].RelAddr << 4);
803 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
804 t_swizzle(GET_SWZ(src[1].Swizzle, 0)),
805 t_swizzle(GET_SWZ(src[1].Swizzle, 1)),
806 t_swizzle(GET_SWZ(src[1].Swizzle, 2)),
808 t_src_class(src[1].File),
809 src[1].Negate) | (src[1].RelAddr << 4);
818 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
819 t_swizzle(GET_SWZ(src[0].Swizzle, 0)),
820 t_swizzle(GET_SWZ(src[0].Swizzle, 1)),
821 t_swizzle(GET_SWZ(src[0].Swizzle, 2)),
823 t_src_class(src[0].File),
824 src[0].Negate) | (src[0].RelAddr << 4);
825 o_inst->src1 = t_src(vp, &src[1]);
833 o_inst->src0 = t_src(vp, &src[0]);
834 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
835 t_swizzle(GET_SWZ(src[1].Swizzle, 0)),
836 t_swizzle(GET_SWZ(src[1].Swizzle, 1)),
837 t_swizzle(GET_SWZ(src[1].Swizzle, 2)),
838 t_swizzle(GET_SWZ(src[1].Swizzle, 3)),
839 t_src_class(src[1].File),
840 (!src[1].Negate) ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src[1].RelAddr << 4);
848 o_inst->src0=t_src(vp, &src[0]);
849 o_inst->src1=MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
850 t_swizzle(GET_SWZ(src[0].Swizzle, 0)),
851 t_swizzle(GET_SWZ(src[0].Swizzle, 1)),
852 t_swizzle(GET_SWZ(src[0].Swizzle, 2)),
853 t_swizzle(GET_SWZ(src[0].Swizzle, 3)),
854 t_src_class(src[0].File),
855 (!src[0].Negate) ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src[0].RelAddr << 4);
867 o_inst->src0 = t_src(vp, &src[0]);
875 o_inst->src0 = t_src(vp, &src[0]);
883 (!src[0].Negate) ? VSF_FLAG_ALL : VSF_FLAG_NONE/*VSF_FLAG_ALL*/);
893 hw_op=(src[0].File == PROGRAM_TEMPORARY &&
894 src[1].File == PROGRAM_TEMPORARY &&
895 (((src[0].RelAddr << 8) | src[0].Index) != ((src[1].RelAddr << 8) | src[1].Index))) ?
902 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
903 t_swizzle(GET_SWZ(src[0].Swizzle, 1)), // y
904 t_swizzle(GET_SWZ(src[0].Swizzle, 2)), // z
905 t_swizzle(GET_SWZ(src[0].Swizzle, 0)), // x
906 t_swizzle(GET_SWZ(src[0].Swizzle, 3)), // w
907 t_src_class(src[0].File),
908 src[0].Negate) | (src[0].RelAddr << 4);
910 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
911 t_swizzle(GET_SWZ(src[1].Swizzle, 2)), // z
912 t_swizzle(GET_SWZ(src[1].Swizzle, 0)), // x
913 t_swizzle(GET_SWZ(src[1].Swizzle, 1)), // y
914 t_swizzle(GET_SWZ(src[1].Swizzle, 3)), // w
915 t_src_class(src[1].File),
916 src[1].Negate) | (src[1].RelAddr << 4);
925 o_inst->src0 = MAKE_VSF_SOURCE(t_src_index(vp, &src[1]),
926 t_swizzle(GET_SWZ(src[1].Swizzle, 1)), // y
927 t_swizzle(GET_SWZ(src[1].Swizzle, 2)), // z
928 t_swizzle(GET_SWZ(src[1].Swizzle, 0)), // x
929 t_swizzle(GET_SWZ(src[1].Swizzle, 3)), // w
930 t_src_class(src[1].File),
931 (!src[1].Negate) ? VSF_FLAG_ALL : VSF_FLAG_NONE) | (src[1].RelAddr << 4);
933 o_inst->src1 = MAKE_VSF_SOURCE(t_src_index(vp, &src[0]),
934 t_swizzle(GET_SWZ(src[0].Swizzle, 2)), // z
935 t_swizzle(GET_SWZ(src[0].Swizzle, 0)), // x
936 t_swizzle(GET_SWZ(src[0].Swizzle, 1)), // y
937 t_swizzle(GET_SWZ(src[0].Swizzle, 3)), // w
938 t_src_class(src[0].File),
939 src[0].Negate) | (src[0].RelAddr << 4);
962 o_inst->src0 = t_src_scalar(vp, &src[0]);
968 o_inst->src0 = t_src_scalar(vp, &src[0]);
969 o_inst->src1 = t_src_scalar(vp, &src[1]);
974 o_inst->src0 = t_src_scalar(vp, &src[0]);
975 o_inst->src1 = t_src_scalar(vp, &src[1]);
976 o_inst->src2 = t_src_scalar(vp, &src[2]);
987 src[0]);
993 o_inst->src0 = t_src(vp, &src[0]);
994 o_inst->src1 = t_src(vp, &src[1]);
999 o_inst->src0 = t_src(vp, &src[0]);
1000 o_inst->src1 = t_src(vp, &src[1]);
1001 o_inst->src2 = t_src(vp, &src[2]);