Lines Matching refs:op

247 	std::ostringstream& op = isVertexCase ? vtx : frag;
283 op << "uniform ${COUNTER_PRECISION} int " << getIntUniformName(numLoopIters) << ";\n";
288 op << "uniform ${COUNTER_PRECISION} float " << getFloatFractionUniformName(numLoopIters) << ";\n";
291 op << "uniform ${COUNTER_PRECISION} float uf_one;\n";
327 op << " ${PRECISION} vec4 res = coords;\n";
381 op << " for (" + loopCountDeclStr + "; " + loopCmpStr + "; " + incrementStr + ")\n";
382 op << " {\n";
383 op << loopBody;
384 op << " }\n";
388 op << "\t" << loopCountDeclStr + ";\n";
389 op << " while (" + loopCmpStr + ")\n";
390 op << " {\n";
391 op << loopBody;
392 op << "\t\t" + incrementStr + ";\n";
393 op << " }\n";
397 op << "\t" << loopCountDeclStr + ";\n";
398 op << " do\n";
399 op << " {\n";
400 op << loopBody;
401 op << "\t\t" + incrementStr + ";\n";
402 op << " } while (" + loopCmpStr + ");\n";
445 std::ostringstream& op = isVertexCase ? vtx : frag;
476 op << "uniform bool ub_true;\n";
478 op << "uniform ${COUNTER_PRECISION} int ui_zero, ui_one, ui_two, ui_three, ui_four, ui_five, ui_six;\n";
480 op << "uniform ${COUNTER_PRECISION} int ui_oneHundredOne;\n";
508 op << " ${PRECISION} vec4 res = coords;\n";
523 op << " ${FOR_LOOP} {}\n";
528 op << " for (;;) { break; res = res.yzwx; }\n";
533 op << " for (;;) { res = res.yzwx; break; }\n";
538 op << " ${COUNTER_PRECISION} int i = 0;\n";
539 op << " for (;;) { res = res.yzwx; if (i == ${ONE}) break; i++; }\n";
543 op << " ${FOR_LOOP} res = res.yzwx;\n";
549 op << " ${FOR_LOOP} { res = res.yzwx; res = res.yzwx; }\n";
555 op << " ${FOR_LOOP} res = res.yzwx, res = res.yzwx;\n";
561 op << " ${FOR_LOOP} res = res.yzwx;\n";
567 op << " ${FOR_LOOP} res = res.yzwx;\n";
571 op << " for (int i = 0; i < (ub_true ? ${ITER_COUNT} : 0); i++) res = res.yzwx;\n";
576 op << " ${FOR_LOOP} { if (i == ${TWO}) continue; res = res.yzwx; }\n";
580 op << " ${FOR_LOOP} { res = res.yzwx; continue; }\n";
585 op << " ${FOR_LOOP} { continue; }\n";
590 op << " ${FOR_LOOP} { if (i == ${TWO}) continue; res = res.yzwx; continue; }\n";
595 op << " ${FOR_LOOP} { if (i == ${TWO}) break; res = res.yzwx; }\n";
600 op << " ${FOR_LOOP} { res = res.yzwx; break; }\n";
604 op << " for (int i = 0; i < ${ITER_COUNT}; ++i) { res = res.yzwx; }\n";
608 op << " ${FOR_LOOP} { res = res.yzwx; }\n";
614 op << " ${FOR_LOOP} { if (i == 0) continue; else if (i == 3) break; res = res.yzwx; }\n";
618 op << " for (${COUNTER_PRECISION} ivec4 i = ivec4(0, 1, ${ITER_COUNT}, 0); i.x < i.z; i.x += i.y) { res = res.yzwx; }\n";
623 op << " ${FOR_LOOP} res = res.yzwx;\n";
629 op << " ${COUNTER_PRECISION} int i;\n";
630 op << " for (i = 0; i < ${TWO}; i++) { res = res.yzwx; }\n";
631 op << " for (; i < ${ITER_COUNT}; i++) { res = res.yzwx; }\n";
636 op << " for (${COUNTER_PRECISION} int i = 0; i < ${TWO}; i++)\n";
637 op << " {\n";
638 op << " for (${COUNTER_PRECISION} int j = 0; j < ${ITER_COUNT}; j++)\n";
639 op << " res = res.yzwx;\n";
640 op << " }\n";
645 op << " for (${COUNTER_PRECISION} int i = 0; i < ${ITER_COUNT}; i++)\n";
646 op << " {\n";
647 op << " for (${COUNTER_PRECISION} int j = 0; j < ${TWO}; j++)\n";
648 op << " res = res.yzwx;\n";
649 op << " for (${COUNTER_PRECISION} int j = 0; j < ${ONE}; j++)\n";
650 op << " res = res.yzwx;\n";
651 op << " }\n";
656 op << " ${FOR_LOOP}\n";
657 op << " {\n";
658 op << " res = coords; // ignore outer loop effect \n";
659 op << " for (${COUNTER_PRECISION} int j = 0; j < ${TWO}; j++)\n";
660 op << " res = res.yzwx;\n";
661 op << " }\n";
666 op << " ${FOR_LOOP}\n";
667 op << " {\n";
668 op << " res = coords.wxyz;\n";
669 op << " for (${COUNTER_PRECISION} int j = 0; j < ${TWO}; j++)\n";
670 op << " res = res.yzwx;\n";
671 op << " coords = res;\n";
672 op << " }\n";
694 op << " ${WHILE_LOOP} {}\n";
699 op << " while (true) { break; res = res.yzwx; }\n";
704 op << " while (true) { res = res.yzwx; break; }\n";
709 op << " ${COUNTER_PRECISION} int i = 0;\n";
710 op << " while (true) { res = res.yzwx; if (i == ${ONE}) break; i++; }\n";
714 op << " ${WHILE_LOOP} res = res.yzwx;\n";
720 op << " ${WHILE_LOOP} { res = res.yzwx; res = res.yzwx; }\n";
726 op << " ${WHILE_LOOP} res = res.yzwx, res = res.yzwx;\n";
732 op << " ${WHILE_LOOP} res = res.yzwx;\n";
738 op << " ${WHILE_LOOP} res = res.yzwx;\n";
742 op << " ${COUNTER_PRECISION} int i = 0;\n";
743 op << " while (i < (ub_true ? ${ITER_COUNT} : 0)) { res = res.yzwx; i++; }\n";
748 op << " ${WHILE_LOOP} { if (i == ${TWO}) continue; res = res.yzwx; }\n";
752 op << " ${WHILE_LOOP} { res = res.yzwx; continue; }\n";
757 op << " ${WHILE_LOOP} { continue; }\n";
762 op << " ${WHILE_LOOP} { if (i == ${ONE}) continue; res = res.yzwx; continue; }\n";
767 op << " ${WHILE_LOOP} { if (i == ${THREE}) break; res = res.yzwx; }\n";
772 op << " ${WHILE_LOOP} { res = res.yzwx; break; }\n";
777 op << " ${COUNTER_PRECISION} int i = 0;\n";
778 op << " while (++i < ${ITER_COUNT}) { res = res.yzwx; }\n";
782 op << " ${COUNTER_PRECISION} int i = 0;\n";
783 op << " while (i++ < ${ITER_COUNT}) { res = res.yzwx; }\n";
789 op << " ${WHILE_LOOP} { if (i == 0) continue; else if (i == 3) break; res = res.yzwx; }\n";
793 op << " ${COUNTER_PRECISION} ivec4 i = ivec4(0, 1, ${ITER_COUNT}, 0);\n";
794 op << " while (i.x < i.z) { res = res.yzwx; i.x += i.y; }\n";
799 op << " ${WHILE_LOOP} res = res.yzwx;\n";
805 op << " ${COUNTER_PRECISION} int i = 0;\n";
806 op << " while (i++ < ${TWO}) { res = res.yzwx; }\n";
807 op << " while (i++ < ${ITER_COUNT}) { res = res.yzwx; }\n"; // \note skips one iteration
812 op << " ${COUNTER_PRECISION} int i = 0;\n";
813 op << " while (i++ < ${TWO})\n";
814 op << " {\n";
815 op << " ${COUNTER_PRECISION} int j = 0;\n";
816 op << " while (j++ < ${ITER_COUNT})\n";
817 op << " res = res.yzwx;\n";
818 op << " }\n";
823 op << " ${COUNTER_PRECISION} int i = 0;\n";
824 op << " while (i++ < ${ITER_COUNT})\n";
825 op << " {\n";
826 op << " ${COUNTER_PRECISION} int j = 0;\n";
827 op << " while (j++ < ${ONE})\n";
828 op << " res = res.yzwx;\n";
829 op << " while (j++ < ${THREE})\n"; // \note skips one iteration
830 op << " res = res.yzwx;\n";
831 op << " }\n";
836 op << " ${WHILE_LOOP}\n";
837 op << " {\n";
838 op << " res = coords; // ignore outer loop effect \n";
839 op << " ${COUNTER_PRECISION} int j = 0;\n";
840 op << " while (j++ < ${TWO})\n";
841 op << " res = res.yzwx;\n";
842 op << " }\n";
847 op << " ${WHILE_LOOP}\n";
848 op << " {\n";
849 op << " res = coords.wxyz;\n";
850 op << " ${COUNTER_PRECISION} int j = 0;\n";
851 op << " while (j++ < ${TWO})\n";
852 op << " res = res.yzwx;\n";
853 op << " coords = res;\n";
854 op << " }\n";
878 op << " ${DO_WHILE_PRE} {} ${DO_WHILE_POST}\n";
883 op << " do { break; res = res.yzwx; } while (true);\n";
888 op << " do { res = res.yzwx; break; } while (true);\n";
893 op << " ${COUNTER_PRECISION} int i = 0;\n";
894 op << " do { res = res.yzwx; if (i == ${ONE}) break; i++; } while (true);\n";
898 op << " ${DO_WHILE_PRE} res = res.yzwx; ${DO_WHILE_POST}\n";
904 op << " ${DO_WHILE_PRE} { res = res.yzwx; res = res.yzwx; } ${DO_WHILE_POST}\n";
910 op << " ${DO_WHILE_PRE} res = res.yzwx, res = res.yzwx; ${DO_WHILE_POST}\n";
920 op << " ${DO_WHILE_PRE} res = res.yzwx; ${DO_WHILE_POST}\n";
924 op << " ${COUNTER_PRECISION} int i = 0;\n";
925 op << " do { res = res.yzwx; } while (++i < (ub_true ? ${ITER_COUNT} : 0));\n";
930 op << " ${DO_WHILE_PRE} { if (i == ${TWO}) continue; res = res.yzwx; } ${DO_WHILE_POST}\n";
934 op << " ${DO_WHILE_PRE} { res = res.yzwx; continue; } ${DO_WHILE_POST}\n";
939 op << " ${DO_WHILE_PRE} { continue; } ${DO_WHILE_POST}\n";
944 op << " ${DO_WHILE_PRE} { if (i == ${TWO}) continue; res = res.yzwx; continue; } ${DO_WHILE_POST}\n";
949 op << " ${DO_WHILE_PRE} { res = res.yzwx; if (i == ${ONE}) break; } ${DO_WHILE_POST}\n";
954 op << " ${DO_WHILE_PRE} { res = res.yzwx; break; } ${DO_WHILE_POST}\n";
958 op << " ${COUNTER_PRECISION} int i = 0;\n";
959 op << " do { res = res.yzwx; } while (++i < ${ITER_COUNT});\n";
964 op << " ${COUNTER_PRECISION} int i = 0;\n";
965 op << " do { res = res.yzwx; } while (i++ < ${ITER_COUNT});\n";
971 op << " ${DO_WHILE_PRE} { if (i == 0) continue; else if (i == 3) break; res = res.yzwx; } ${DO_WHILE_POST}\n";
975 op << " ${COUNTER_PRECISION} ivec4 i = ivec4(0, 1, ${ITER_COUNT}, 0);\n";
976 op << " do { res = res.yzwx; } while ((i.x += i.y) < i.z);\n";
981 op << " ${DO_WHILE_PRE} res = res.yzwx; ${DO_WHILE_POST}\n";
987 op << " ${COUNTER_PRECISION} int i = 0;\n";
988 op << " do { res = res.yzwx; } while (++i < ${TWO});\n";
989 op << " do { res = res.yzwx; } while (++i < ${ITER_COUNT});\n";
994 op << " ${COUNTER_PRECISION} int i = 0;\n";
995 op << " do\n";
996 op << " {\n";
997 op << " ${COUNTER_PRECISION} int j = 0;\n";
998 op << " do\n";
999 op << " res = res.yzwx;\n";
1000 op << " while (++j < ${ITER_COUNT});\n";
1001 op << " } while (++i < ${TWO});\n";
1006 op << " ${COUNTER_PRECISION} int i = 0;\n";
1007 op << " do\n";
1008 op << " {\n";
1009 op << " ${COUNTER_PRECISION} int j = 0;\n";
1010 op << " do\n";
1011 op << " res = res.yzwx;\n";
1012 op << " while (++j < ${TWO});\n";
1013 op << " do\n";
1014 op << " res = res.yzwx;\n";
1015 op << " while (++j < ${THREE});\n";
1016 op << " } while (++i < ${ITER_COUNT});\n";
1021 op << " ${DO_WHILE_PRE}\n";
1022 op << " {\n";
1023 op << " res = coords; // ignore outer loop effect \n";
1024 op << " ${COUNTER_PRECISION} int j = 0;\n";
1025 op << " do\n";
1026 op << " res = res.yzwx;\n";
1027 op << " while (++j < ${TWO});\n";
1028 op << " } ${DO_WHILE_POST}\n";
1033 op << " ${DO_WHILE_PRE}\n";
1034 op << " {\n";
1035 op << " res = coords.wxyz;\n";
1036 op << " ${COUNTER_PRECISION} int j = 0;\n";
1037 op << " while (j++ < ${TWO})\n";
1038 op << " res = res.yzwx;\n";
1039 op << " coords = res;\n";
1040 op << " } ${DO_WHILE_POST}\n";