VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL IN[4] DCL IN[5] DCL OUT[0], POSITION DCL OUT[1], GENERIC[0] DCL OUT[2], GENERIC[1] DCL OUT[3], GENERIC[2] DCL OUT[4], GENERIC[3] DCL CONST[1][0..37] DCL CONST[2][0..455] DCL TEMP[0..8], LOCAL DCL ADDR[0] IMM[0] FLT32 { 1.0000, 2.0000, -1.0000, 0.0000} IMM[1] INT32 {3, 4, 1, 2} IMM[2] UINT32 {1, 64, 16, 0} IMM[3] UINT32 {32, 48, 160, 0} 0: MOV TEMP[0].xyz, IN[0].xyzx 1: MOV TEMP[0].w, IMM[0].xxxx 2: UMUL TEMP[1], IN[5], IMM[1].xxxx 3: IDIV TEMP[2].x, TEMP[1].yyyy, IMM[1].yyyy 4: MOD TEMP[3].x, TEMP[1].yyyy, IMM[1].yyyy 5: UMUL TEMP[3].x, TEMP[3].xxxx, IMM[2].zzzz 6: UMAD TEMP[2].x, TEMP[2].xxxx, IMM[2].yyyy, TEMP[3].xxxx 7: USHR TEMP[3].x, TEMP[2].xxxx, IMM[1].yyyy 8: UARL ADDR[0].x, TEMP[3].xxxx 9: MOV TEMP[2], CONST[2][ADDR[0].x] 10: MUL TEMP[2], IN[4].yyyy, TEMP[2] 11: IDIV TEMP[3].x, TEMP[1].xxxx, IMM[1].yyyy 12: MOD TEMP[4].x, TEMP[1].xxxx, IMM[1].yyyy 13: UMUL TEMP[4].x, TEMP[4].xxxx, IMM[2].zzzz 14: UMAD TEMP[3].x, TEMP[3].xxxx, IMM[2].yyyy, TEMP[4].xxxx 15: USHR TEMP[4].x, TEMP[3].xxxx, IMM[1].yyyy 16: UARL ADDR[0].x, TEMP[4].xxxx 17: MOV TEMP[3], CONST[2][ADDR[0].x] 18: MAD TEMP[2], TEMP[3], IN[4].xxxx, TEMP[2] 19: IDIV TEMP[3].x, TEMP[1].zzzz, IMM[1].yyyy 20: MOD TEMP[4].x, TEMP[1].zzzz, IMM[1].yyyy 21: UMUL TEMP[4].x, TEMP[4].xxxx, IMM[2].zzzz 22: UMAD TEMP[3].x, TEMP[3].xxxx, IMM[2].yyyy, TEMP[4].xxxx 23: USHR TEMP[4].x, TEMP[3].xxxx, IMM[1].yyyy 24: UARL ADDR[0].x, TEMP[4].xxxx 25: MOV TEMP[3], CONST[2][ADDR[0].x] 26: MAD TEMP[2], TEMP[3], IN[4].zzzz, TEMP[2] 27: IDIV TEMP[3].x, TEMP[1].wwww, IMM[1].yyyy 28: MOD TEMP[4].x, TEMP[1].wwww, IMM[1].yyyy 29: UMUL TEMP[4].x, TEMP[4].xxxx, IMM[2].zzzz 30: UMAD TEMP[3].x, TEMP[3].xxxx, IMM[2].yyyy, TEMP[4].xxxx 31: USHR TEMP[4].x, TEMP[3].xxxx, IMM[1].yyyy 32: UARL ADDR[0].x, TEMP[4].xxxx 33: MOV TEMP[3], CONST[2][ADDR[0].x] 34: MAD TEMP[2], TEMP[3], IN[4].wwww, TEMP[2] 35: DP4 TEMP[3].x, TEMP[0], TEMP[2] 36: UADD TEMP[4].x, TEMP[1].yyyy, IMM[1].zzzz 37: IDIV TEMP[4].x, TEMP[4].xxxx, IMM[1].yyyy 38: UADD TEMP[5].x, TEMP[1].yyyy, IMM[1].zzzz 39: MOD TEMP[5].x, TEMP[5].xxxx, IMM[1].yyyy 40: UMUL TEMP[5].x, TEMP[5].xxxx, IMM[2].zzzz 41: UMAD TEMP[4].x, TEMP[4].xxxx, IMM[2].yyyy, TEMP[5].xxxx 42: USHR TEMP[5].x, TEMP[4].xxxx, IMM[1].yyyy 43: UARL ADDR[0].x, TEMP[5].xxxx 44: MOV TEMP[4], CONST[2][ADDR[0].x] 45: MUL TEMP[4], IN[4].yyyy, TEMP[4] 46: UADD TEMP[5].x, TEMP[1].xxxx, IMM[1].zzzz 47: IDIV TEMP[5].x, TEMP[5].xxxx, IMM[1].yyyy 48: UADD TEMP[6].x, TEMP[1].xxxx, IMM[1].zzzz 49: MOD TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 50: UMUL TEMP[6].x, TEMP[6].xxxx, IMM[2].zzzz 51: UMAD TEMP[5].x, TEMP[5].xxxx, IMM[2].yyyy, TEMP[6].xxxx 52: USHR TEMP[6].x, TEMP[5].xxxx, IMM[1].yyyy 53: UARL ADDR[0].x, TEMP[6].xxxx 54: MOV TEMP[5], CONST[2][ADDR[0].x] 55: MAD TEMP[4], TEMP[5], IN[4].xxxx, TEMP[4] 56: UADD TEMP[5].x, TEMP[1].zzzz, IMM[1].zzzz 57: IDIV TEMP[5].x, TEMP[5].xxxx, IMM[1].yyyy 58: UADD TEMP[6].x, TEMP[1].zzzz, IMM[1].zzzz 59: MOD TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 60: UMUL TEMP[6].x, TEMP[6].xxxx, IMM[2].zzzz 61: UMAD TEMP[5].x, TEMP[5].xxxx, IMM[2].yyyy, TEMP[6].xxxx 62: USHR TEMP[6].x, TEMP[5].xxxx, IMM[1].yyyy 63: UARL ADDR[0].x, TEMP[6].xxxx 64: MOV TEMP[5], CONST[2][ADDR[0].x] 65: MAD TEMP[4], TEMP[5], IN[4].zzzz, TEMP[4] 66: UADD TEMP[5].x, TEMP[1].wwww, IMM[1].zzzz 67: IDIV TEMP[5].x, TEMP[5].xxxx, IMM[1].yyyy 68: UADD TEMP[6].x, TEMP[1].wwww, IMM[1].zzzz 69: MOD TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 70: UMUL TEMP[6].x, TEMP[6].xxxx, IMM[2].zzzz 71: UMAD TEMP[5].x, TEMP[5].xxxx, IMM[2].yyyy, TEMP[6].xxxx 72: USHR TEMP[6].x, TEMP[5].xxxx, IMM[1].yyyy 73: UARL ADDR[0].x, TEMP[6].xxxx 74: MOV TEMP[5], CONST[2][ADDR[0].x] 75: MAD TEMP[4], TEMP[5], IN[4].wwww, TEMP[4] 76: DP4 TEMP[5].x, TEMP[0], TEMP[4] 77: MOV TEMP[3].y, TEMP[5].xxxx 78: UADD TEMP[5].x, TEMP[1].yyyy, IMM[1].wwww 79: IDIV TEMP[5].x, TEMP[5].xxxx, IMM[1].yyyy 80: UADD TEMP[6].x, TEMP[1].yyyy, IMM[1].wwww 81: MOD TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 82: UMUL TEMP[6].x, TEMP[6].xxxx, IMM[2].zzzz 83: UMAD TEMP[5].x, TEMP[5].xxxx, IMM[2].yyyy, TEMP[6].xxxx 84: USHR TEMP[6].x, TEMP[5].xxxx, IMM[1].yyyy 85: UARL ADDR[0].x, TEMP[6].xxxx 86: MOV TEMP[5], CONST[2][ADDR[0].x] 87: MUL TEMP[5], IN[4].yyyy, TEMP[5] 88: UADD TEMP[6].x, TEMP[1].xxxx, IMM[1].wwww 89: IDIV TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 90: UADD TEMP[7].x, TEMP[1].xxxx, IMM[1].wwww 91: MOD TEMP[7].x, TEMP[7].xxxx, IMM[1].yyyy 92: UMUL TEMP[7].x, TEMP[7].xxxx, IMM[2].zzzz 93: UMAD TEMP[6].x, TEMP[6].xxxx, IMM[2].yyyy, TEMP[7].xxxx 94: USHR TEMP[7].x, TEMP[6].xxxx, IMM[1].yyyy 95: UARL ADDR[0].x, TEMP[7].xxxx 96: MOV TEMP[6], CONST[2][ADDR[0].x] 97: MAD TEMP[5], TEMP[6], IN[4].xxxx, TEMP[5] 98: UADD TEMP[6].x, TEMP[1].zzzz, IMM[1].wwww 99: IDIV TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 100: UADD TEMP[7].x, TEMP[1].zzzz, IMM[1].wwww 101: MOD TEMP[7].x, TEMP[7].xxxx, IMM[1].yyyy 102: UMUL TEMP[7].x, TEMP[7].xxxx, IMM[2].zzzz 103: UMAD TEMP[6].x, TEMP[6].xxxx, IMM[2].yyyy, TEMP[7].xxxx 104: USHR TEMP[7].x, TEMP[6].xxxx, IMM[1].yyyy 105: UARL ADDR[0].x, TEMP[7].xxxx 106: MOV TEMP[6], CONST[2][ADDR[0].x] 107: MAD TEMP[5], TEMP[6], IN[4].zzzz, TEMP[5] 108: UADD TEMP[6].x, TEMP[1].wwww, IMM[1].wwww 109: IDIV TEMP[6].x, TEMP[6].xxxx, IMM[1].yyyy 110: UADD TEMP[7].x, TEMP[1].wwww, IMM[1].wwww 111: MOD TEMP[7].x, TEMP[7].xxxx, IMM[1].yyyy 112: UMUL TEMP[7].x, TEMP[7].xxxx, IMM[2].zzzz 113: UMAD TEMP[6].x, TEMP[6].xxxx, IMM[2].yyyy, TEMP[7].xxxx 114: USHR TEMP[7].x, TEMP[6].xxxx, IMM[1].yyyy 115: UARL ADDR[0].x, TEMP[7].xxxx 116: MOV TEMP[6], CONST[2][ADDR[0].x] 117: MAD TEMP[1], TEMP[6], IN[4].wwww, TEMP[5] 118: DP4 TEMP[5].x, TEMP[0], TEMP[1] 119: MOV TEMP[3].z, TEMP[5].xxxx 120: MOV TEMP[3].w, IMM[0].xxxx 121: DP4 TEMP[5].x, TEMP[3], CONST[1][0] 122: DP4 TEMP[6].x, TEMP[3], CONST[1][1] 123: MOV TEMP[5].y, TEMP[6].xxxx 124: DP4 TEMP[6].x, TEMP[3], CONST[1][2] 125: MOV TEMP[5].z, TEMP[6].xxxx 126: DP4 TEMP[6].x, TEMP[3], CONST[1][3] 127: MOV TEMP[5].w, TEMP[6].xxxx 128: DP4 TEMP[6].x, TEMP[3], CONST[1][10] 129: MOV TEMP[6].w, TEMP[6].xxxx 130: MOV TEMP[6].xyz, TEMP[3].xyzx 131: MOV TEMP[3].xy, IN[3].xyxx 132: MAD TEMP[0].xyz, IN[2].xyzz, IMM[0].yyyy, IMM[0].zzzz 133: DP3 TEMP[7].x, TEMP[0].xyzz, TEMP[2].xyzz 134: DP3 TEMP[8].x, TEMP[0].xyzz, TEMP[4].xyzz 135: MOV TEMP[7].y, TEMP[8].xxxx 136: DP3 TEMP[8].x, TEMP[0].xyzz, TEMP[1].xyzz 137: MOV TEMP[7].z, TEMP[8].xxxx 138: MAD TEMP[0].xyz, IN[1].xyzz, IMM[0].yyyy, IMM[0].zzzz 139: DP3 TEMP[2].x, TEMP[0].xyzz, TEMP[2].xyzz 140: DP3 TEMP[4].x, TEMP[0].xyzz, TEMP[4].xyzz 141: MOV TEMP[2].y, TEMP[4].xxxx 142: DP3 TEMP[0].x, TEMP[0].xyzz, TEMP[1].xyzz 143: MOV TEMP[2].z, TEMP[0].xxxx 144: MAD TEMP[0].x, IN[1].wwww, IMM[0].yyyy, IMM[0].zzzz 145: MOV TEMP[2].w, TEMP[0].xxxx 146: MOV OUT[1], TEMP[3] 147: MOV OUT[2], TEMP[6] 148: MOV OUT[3], TEMP[7] 149: MOV OUT[4], TEMP[2] 150: MOV OUT[0], TEMP[5] 151: END