COMP PROPERTY CS_FIXED_BLOCK_WIDTH 16 PROPERTY CS_FIXED_BLOCK_HEIGHT 16 PROPERTY CS_FIXED_BLOCK_DEPTH 1 DCL SV[0], THREAD_ID DCL SV[1], BLOCK_ID DCL SAMP[0] DCL SVIEW[0], 2D, FLOAT DCL IMAGE[0], 2D_ARRAY, PIPE_FORMAT_NONE, WR DCL IMAGE[1], 2D, PIPE_FORMAT_NONE, WR DCL BUFFER[16] DCL BUFFER[17] DCL BUFFER[18] DCL BUFFER[19] DCL MEMORY[1], SHARED DCL CONST[0..17] DCL TEMP[0..73], LOCAL IMM[0] UINT32 {256, 16, 1, 0} IMM[1] UINT32 {4, 8, 12, 2139095039} IMM[2] UINT32 {20, 32, 2, 3} IMM[3] FLT32 { 0.0000, 0.0312, -1.0000, 1.0000} IMM[4] INT32 {0, 8, 4, 1} IMM[5] UINT32 {15, 80, 13, 14} IMM[6] INT32 {256, 16, 255, 0} IMM[7] FLT32 { 0.0000, 0.0000, 0.0000, 0.0000} IMM[8] UINT32 {255, 65535, 0, 0} 0: UMUL TEMP[0].x, SV[0].yyyy, IMM[0].yyyy 1: UMAD TEMP[0].x, IMM[0].xxxx, SV[0].zzzz, TEMP[0].xxxx 2: UADD TEMP[0].x, TEMP[0].xxxx, SV[0].xxxx 3: UMAD TEMP[1].xyz, SV[1].xyzz, IMM[0].yyzz, SV[0].xyzz 4: USEQ TEMP[2].x, TEMP[0].xxxx, IMM[0].wwww 5: UIF TEMP[2].xxxx :0 6: STORE MEMORY[1].x, IMM[0].wwww, IMM[0].wwww 7: STORE MEMORY[1].x, IMM[1].xxxx, IMM[0].wwww 8: STORE MEMORY[1].x, IMM[1].yyyy, IMM[0].wwww 9: STORE MEMORY[1].x, IMM[1].zzzz, IMM[0].wwww 10: STORE MEMORY[1].x, IMM[0].yyyy, IMM[1].wwww 11: STORE MEMORY[1].x, IMM[2].xxxx, IMM[0].wwww 12: ENDIF 13: MOV TEMP[2].xy, TEMP[1].xyyy 14: MOV TEMP[2].w, IMM[4].xxxx 15: TXF TEMP[2], TEMP[2], SAMP[0], 2D, IMM[4].xxx 16: ADD TEMP[1].x, TEMP[2].xxxx, CONST[2].zzzz 17: RCP TEMP[2].x, TEMP[1].xxxx 18: MUL TEMP[1].x, CONST[2].wwww, TEMP[2].xxxx 19: MOV TEMP[1].x, -TEMP[1].xxxx 20: MEMBAR IMM[4].yyyy 21: BARRIER 22: ATOMUMIN TEMP[2].x, MEMORY[1], IMM[0].yyyy, TEMP[1].xxxx 23: ATOMUMAX TEMP[2].x, MEMORY[1], IMM[2].xxxx, TEMP[1].xxxx 24: MEMBAR IMM[4].yyyy 25: BARRIER 26: LOAD TEMP[2].x, MEMORY[1], IMM[0].yyyy 27: MOV TEMP[3].x, TEMP[2].xxxx 28: MOV TEMP[1].x, TEMP[2].xxxx 29: LOAD TEMP[3].x, MEMORY[1], IMM[2].xxxx 30: MOV TEMP[3].w, TEMP[3].xxxx 31: MUL TEMP[4].xy, CONST[3].xyyy, IMM[3].yyyy 32: U2F TEMP[5].xy, SV[1].xyyy 33: FMA TEMP[6].xy, CONST[3].xyyy, IMM[3].yyyy, -TEMP[5].xyyy 34: MOV TEMP[5].zw, TEMP[6].yyxy 35: MUL TEMP[6].x, TEMP[4].xxxx, -CONST[4].xxxx 36: MOV TEMP[5].y, TEMP[6].xxxx 37: MUL TEMP[5].x, TEMP[4].yyyy, CONST[4].yyyy 38: MOV TEMP[3].y, -TEMP[2].xxxx 39: ADD TEMP[2], -TEMP[5].yzxw, IMM[3].xzxz 40: ADD TEMP[5], TEMP[5].yzxw, IMM[3].xzxz 41: DP2 TEMP[4].x, TEMP[2].xyyy, TEMP[2].xyyy 42: RSQ TEMP[4].x, TEMP[4].xxxx 43: MUL TEMP[4].xy, TEMP[4].xxxx, TEMP[2].xyyy 44: MOV TEMP[1].yz, TEMP[4].yxyy 45: DP2 TEMP[4].x, TEMP[5].xyyy, TEMP[5].xyyy 46: RSQ TEMP[4].x, TEMP[4].xxxx 47: MUL TEMP[5].xy, TEMP[4].xxxx, TEMP[5].xyyy 48: DP2 TEMP[4].x, TEMP[2].zwww, TEMP[2].zwww 49: RSQ TEMP[4].x, TEMP[4].xxxx 50: MUL TEMP[2].xy, TEMP[4].xxxx, TEMP[2].zwww 51: DP2 TEMP[4].x, TEMP[5].zwww, TEMP[5].zwww 52: RSQ TEMP[4].x, TEMP[4].xxxx 53: MUL TEMP[4].xy, TEMP[4].xxxx, TEMP[5].zwww 54: MOV TEMP[5].zw, TEMP[4].yyxy 55: SHL TEMP[4], SV[1].xyyy, IMM[4].zzzz 56: MOV TEMP[4], TEMP[4] 57: MOV TEMP[6].w, IMM[3].wwww 58: MOV TEMP[7].zw, IMM[3].xxxx 59: MOV TEMP[1].w, TEMP[0].xxxx 60: BGNLOOP :0 61: USGE TEMP[8].x, TEMP[1].wwww, CONST[16].xxxx 62: AND TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 63: INEG TEMP[10].x, TEMP[9].xxxx 64: MOV TEMP[2].z, TEMP[10].xxxx 65: MOV TEMP[11].x, TEMP[10].xxxx 66: USNE TEMP[12].x, TEMP[10].xxxx, IMM[0].wwww 67: UIF TEMP[12].xxxx :0 68: BRK 69: ENDIF 70: UMUL TEMP[13].x, IMM[2].yyyy, TEMP[1].wwww 71: LOAD TEMP[14].x, BUFFER[16], TEMP[13].xxxx 72: MOV TEMP[15].x, TEMP[14].xxxx 73: UMAD TEMP[16].x, TEMP[1].wwww, IMM[1].yyyy, IMM[0].zzzz 74: UMUL TEMP[17].x, TEMP[16].xxxx, IMM[1].xxxx 75: LOAD TEMP[18].x, BUFFER[16], TEMP[17].xxxx 76: MOV TEMP[15].y, TEMP[18].xxxx 77: UMAD TEMP[19].x, TEMP[1].wwww, IMM[1].yyyy, IMM[2].zzzz 78: UMUL TEMP[20].x, TEMP[19].xxxx, IMM[1].xxxx 79: LOAD TEMP[21].x, BUFFER[16], TEMP[20].xxxx 80: MOV TEMP[15].z, TEMP[21].xxxx 81: UMAD TEMP[22].x, TEMP[1].wwww, IMM[1].yyyy, IMM[2].wwww 82: UMUL TEMP[23].x, TEMP[22].xxxx, IMM[1].xxxx 83: LOAD TEMP[24].x, BUFFER[16], TEMP[23].xxxx 84: MOV TEMP[15].w, TEMP[24].xxxx 85: MOV TEMP[25].zw, TEMP[15].wwzw 86: MOV TEMP[6].xyz, TEMP[15].xyzx 87: DP4 TEMP[3].x, CONST[13], TEMP[6] 88: DP4 TEMP[25].x, CONST[14], TEMP[6] 89: DP4 TEMP[26].x, CONST[15], TEMP[6] 90: MOV TEMP[3].z, TEMP[26].xxxx 91: DP2 TEMP[27].x, IMM[3].wwww, TEMP[3].zwww 92: MOV TEMP[2].z, TEMP[27].xxxx 93: DP2 TEMP[28].x, IMM[3].wzzz, TEMP[3].yzzz 94: MOV TEMP[2].w, TEMP[28].xxxx 95: FSGE TEMP[29].xy, TEMP[2].zwww, -TEMP[24].xxxx 96: AND TEMP[30].xy, TEMP[29].xyyy, IMM[4].wwww 97: INEG TEMP[31].xy, TEMP[30].xyyy 98: AND TEMP[32].x, TEMP[31].yyyy, TEMP[31].xxxx 99: DP2 TEMP[33].x, TEMP[1].yzzz, TEMP[3].xzzz 100: FSGE TEMP[34].x, TEMP[33].xxxx, -TEMP[24].xxxx 101: AND TEMP[35].x, TEMP[34].xxxx, IMM[4].wwww 102: INEG TEMP[36].x, TEMP[35].xxxx 103: AND TEMP[37].x, TEMP[36].xxxx, TEMP[32].xxxx 104: DP2 TEMP[38].x, TEMP[5].xyyy, TEMP[3].xzzz 105: FSGE TEMP[39].x, TEMP[38].xxxx, -TEMP[24].xxxx 106: AND TEMP[40].x, TEMP[39].xxxx, IMM[4].wwww 107: INEG TEMP[41].x, TEMP[40].xxxx 108: AND TEMP[42].x, TEMP[41].xxxx, TEMP[37].xxxx 109: MOV TEMP[25].y, TEMP[26].xxxx 110: DP2 TEMP[43].x, TEMP[2].xyyy, TEMP[25].xyyy 111: FSGE TEMP[44].x, TEMP[43].xxxx, -TEMP[24].xxxx 112: AND TEMP[45].x, TEMP[44].xxxx, IMM[4].wwww 113: INEG TEMP[46].x, TEMP[45].xxxx 114: AND TEMP[47].x, TEMP[46].xxxx, TEMP[42].xxxx 115: DP2 TEMP[48].x, TEMP[5].zwww, TEMP[25].xyyy 116: FSGE TEMP[49].x, TEMP[48].xxxx, -TEMP[24].xxxx 117: AND TEMP[50].x, TEMP[49].xxxx, IMM[4].wwww 118: INEG TEMP[51].x, TEMP[50].xxxx 119: MOV TEMP[2].w, TEMP[51].xxxx 120: AND TEMP[52].x, TEMP[51].xxxx, TEMP[47].xxxx 121: MOV TEMP[2].z, TEMP[52].xxxx 122: MOV TEMP[53].x, TEMP[52].xxxx 123: USNE TEMP[54].x, TEMP[52].xxxx, IMM[0].wwww 124: UIF TEMP[54].xxxx :0 125: ATOMUADD TEMP[55].x, MEMORY[1], IMM[0].wwww, IMM[0].zzzz 126: MOV TEMP[25].x, TEMP[55].xxxx 127: AND TEMP[56].x, TEMP[55].xxxx, IMM[5].xxxx 128: MOV TEMP[6].x, TEMP[56].xxxx 129: USHR TEMP[57].x, TEMP[55].xxxx, IMM[1].xxxx 130: MOV TEMP[6].y, TEMP[57].xxxx 131: UADD TEMP[58].xy, TEMP[4].xwww, TEMP[6].xyyy 132: MOV TEMP[7].xy, TEMP[58].xyxx 133: MOV TEMP[59].xyz, TEMP[7].xyzz 134: STORE IMAGE[0], TEMP[7].xyzx, TEMP[1].wwww, RESTRICT, 2D_ARRAY 135: ENDIF 136: UADD TEMP[60].x, TEMP[1].wwww, IMM[6].xxxx 137: MOV TEMP[1].w, TEMP[60].xxxx 138: ENDLOOP :0 139: MOV TEMP[6].w, IMM[3].wwww 140: MOV TEMP[7].zw, IMM[7].xxxx 141: MOV TEMP[1].w, TEMP[0].xxxx 142: BGNLOOP :0 143: USGE TEMP[8].x, TEMP[1].wwww, CONST[16].yyyy 144: AND TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 145: INEG TEMP[10].x, TEMP[9].xxxx 146: MOV TEMP[2].z, TEMP[10].xxxx 147: MOV TEMP[11].x, TEMP[10].xxxx 148: USNE TEMP[12].x, TEMP[10].xxxx, IMM[0].wwww 149: UIF TEMP[12].xxxx :0 150: BRK 151: ENDIF 152: UMUL TEMP[13].x, IMM[5].yyyy, TEMP[1].wwww 153: LOAD TEMP[14].x, BUFFER[19], TEMP[13].xxxx 154: MOV TEMP[15].x, TEMP[14].xxxx 155: UMAD TEMP[16].x, TEMP[1].wwww, IMM[2].xxxx, IMM[0].zzzz 156: UMUL TEMP[17].x, TEMP[16].xxxx, IMM[1].xxxx 157: LOAD TEMP[18].x, BUFFER[19], TEMP[17].xxxx 158: MOV TEMP[15].y, TEMP[18].xxxx 159: UMAD TEMP[19].x, TEMP[1].wwww, IMM[2].xxxx, IMM[2].zzzz 160: UMUL TEMP[20].x, TEMP[19].xxxx, IMM[1].xxxx 161: LOAD TEMP[21].x, BUFFER[19], TEMP[20].xxxx 162: MOV TEMP[15].z, TEMP[21].xxxx 163: UMAD TEMP[22].x, TEMP[1].wwww, IMM[2].xxxx, IMM[2].wwww 164: UMUL TEMP[23].x, TEMP[22].xxxx, IMM[1].xxxx 165: LOAD TEMP[24].x, BUFFER[19], TEMP[23].xxxx 166: MOV TEMP[15].w, TEMP[24].xxxx 167: MOV TEMP[25].zw, TEMP[15].wwzw 168: MOV TEMP[6].xyz, TEMP[15].xyzx 169: DP4 TEMP[3].x, CONST[13], TEMP[6] 170: DP4 TEMP[25].x, CONST[14], TEMP[6] 171: DP4 TEMP[26].x, CONST[15], TEMP[6] 172: MOV TEMP[3].z, TEMP[26].xxxx 173: DP2 TEMP[27].x, IMM[3].wwww, TEMP[3].zwww 174: MOV TEMP[2].z, TEMP[27].xxxx 175: DP2 TEMP[28].x, IMM[3].wzzz, TEMP[3].yzzz 176: MOV TEMP[2].w, TEMP[28].xxxx 177: FSGE TEMP[29].xy, TEMP[2].zwww, -TEMP[24].xxxx 178: AND TEMP[30].xy, TEMP[29].xyyy, IMM[4].wwww 179: INEG TEMP[31].xy, TEMP[30].xyyy 180: AND TEMP[32].x, TEMP[31].yyyy, TEMP[31].xxxx 181: DP2 TEMP[33].x, TEMP[1].yzzz, TEMP[3].xzzz 182: FSGE TEMP[34].x, TEMP[33].xxxx, -TEMP[24].xxxx 183: AND TEMP[35].x, TEMP[34].xxxx, IMM[4].wwww 184: INEG TEMP[36].x, TEMP[35].xxxx 185: AND TEMP[37].x, TEMP[36].xxxx, TEMP[32].xxxx 186: DP2 TEMP[38].x, TEMP[5].xyyy, TEMP[3].xzzz 187: FSGE TEMP[39].x, TEMP[38].xxxx, -TEMP[24].xxxx 188: AND TEMP[40].x, TEMP[39].xxxx, IMM[4].wwww 189: INEG TEMP[41].x, TEMP[40].xxxx 190: MOV TEMP[2].w, TEMP[41].xxxx 191: AND TEMP[42].x, TEMP[41].xxxx, TEMP[37].xxxx 192: MOV TEMP[25].y, TEMP[26].xxxx 193: DP2 TEMP[43].x, TEMP[2].xyyy, TEMP[25].xyyy 194: FSGE TEMP[44].x, TEMP[43].xxxx, -TEMP[24].xxxx 195: AND TEMP[45].x, TEMP[44].xxxx, IMM[4].wwww 196: INEG TEMP[46].x, TEMP[45].xxxx 197: AND TEMP[47].x, TEMP[46].xxxx, TEMP[42].xxxx 198: DP2 TEMP[48].x, TEMP[5].zwww, TEMP[25].xyyy 199: FSGE TEMP[49].x, TEMP[48].xxxx, -TEMP[24].xxxx 200: AND TEMP[50].x, TEMP[49].xxxx, IMM[4].wwww 201: INEG TEMP[51].x, TEMP[50].xxxx 202: MOV TEMP[2].z, TEMP[51].xxxx 203: AND TEMP[52].x, TEMP[47].xxxx, TEMP[51].xxxx 204: MOV TEMP[3].z, TEMP[52].xxxx 205: MOV TEMP[53].x, TEMP[52].xxxx 206: USNE TEMP[54].x, TEMP[52].xxxx, IMM[0].wwww 207: UIF TEMP[54].xxxx :0 208: ATOMUADD TEMP[55].x, MEMORY[1], IMM[1].xxxx, IMM[0].zzzz 209: MOV TEMP[25].x, TEMP[55].xxxx 210: AND TEMP[56].x, TEMP[55].xxxx, IMM[5].xxxx 211: MOV TEMP[6].x, TEMP[56].xxxx 212: USHR TEMP[57].x, TEMP[55].xxxx, IMM[1].xxxx 213: MOV TEMP[6].y, TEMP[57].xxxx 214: UADD TEMP[58].xy, TEMP[4].xwww, TEMP[6].xyyy 215: MOV TEMP[7].xy, TEMP[58].xyxx 216: MOV TEMP[59].xyz, TEMP[7].xyzz 217: STORE IMAGE[0], TEMP[7].xyzx, TEMP[1].wwww, RESTRICT, 2D_ARRAY 218: ENDIF 219: UADD TEMP[60].x, TEMP[1].wwww, IMM[6].xxxx 220: MOV TEMP[1].w, TEMP[60].xxxx 221: ENDLOOP :0 222: MOV TEMP[6].w, IMM[3].wwww 223: MOV TEMP[7].zw, TEMP[3].yywy 224: MOV TEMP[25].zw, IMM[7].yyyy 225: MOV TEMP[1].w, TEMP[0].xxxx 226: BGNLOOP :0 227: USGE TEMP[8].x, TEMP[1].wwww, CONST[16].zzzz 228: AND TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 229: INEG TEMP[10].x, TEMP[9].xxxx 230: MOV TEMP[3].z, TEMP[10].xxxx 231: MOV TEMP[11].x, TEMP[10].xxxx 232: USNE TEMP[12].x, TEMP[10].xxxx, IMM[0].wwww 233: UIF TEMP[12].xxxx :0 234: BRK 235: ENDIF 236: UMUL TEMP[13].x, IMM[5].yyyy, TEMP[1].wwww 237: LOAD TEMP[14].x, BUFFER[18], TEMP[13].xxxx 238: MOV TEMP[15].x, TEMP[14].xxxx 239: UMAD TEMP[16].x, TEMP[1].wwww, IMM[2].xxxx, IMM[0].zzzz 240: UMUL TEMP[17].x, TEMP[16].xxxx, IMM[1].xxxx 241: LOAD TEMP[18].x, BUFFER[18], TEMP[17].xxxx 242: MOV TEMP[15].y, TEMP[18].xxxx 243: UMAD TEMP[19].x, TEMP[1].wwww, IMM[2].xxxx, IMM[2].zzzz 244: UMUL TEMP[20].x, TEMP[19].xxxx, IMM[1].xxxx 245: LOAD TEMP[21].x, BUFFER[18], TEMP[20].xxxx 246: MOV TEMP[15].z, TEMP[21].xxxx 247: UMAD TEMP[22].x, TEMP[1].wwww, IMM[2].xxxx, IMM[2].wwww 248: UMUL TEMP[23].x, TEMP[22].xxxx, IMM[1].xxxx 249: LOAD TEMP[24].x, BUFFER[18], TEMP[23].xxxx 250: MOV TEMP[15].w, TEMP[24].xxxx 251: MOV TEMP[26].zw, TEMP[15].wwzw 252: MOV TEMP[6].xyz, TEMP[15].xyzx 253: DP4 TEMP[7].x, CONST[13], TEMP[6] 254: DP4 TEMP[26].x, CONST[14], TEMP[6] 255: DP4 TEMP[27].x, CONST[15], TEMP[6] 256: MOV TEMP[7].y, TEMP[27].xxxx 257: DP2 TEMP[28].x, IMM[3].wwww, TEMP[7].yzzz 258: FSGE TEMP[29].x, TEMP[28].xxxx, -TEMP[24].xxxx 259: AND TEMP[30].x, TEMP[29].xxxx, IMM[4].wwww 260: INEG TEMP[31].x, TEMP[30].xxxx 261: DP2 TEMP[32].x, IMM[3].zwww, TEMP[7].ywww 262: FSGE TEMP[33].x, TEMP[32].xxxx, -TEMP[24].xxxx 263: AND TEMP[34].x, TEMP[33].xxxx, IMM[4].wwww 264: INEG TEMP[35].x, TEMP[34].xxxx 265: AND TEMP[36].x, TEMP[31].xxxx, TEMP[35].xxxx 266: DP2 TEMP[37].x, TEMP[1].yzzz, TEMP[7].xyyy 267: FSGE TEMP[38].x, TEMP[37].xxxx, -TEMP[24].xxxx 268: AND TEMP[39].x, TEMP[38].xxxx, IMM[4].wwww 269: INEG TEMP[40].x, TEMP[39].xxxx 270: AND TEMP[41].x, TEMP[36].xxxx, TEMP[40].xxxx 271: DP2 TEMP[42].x, TEMP[5].xyyy, TEMP[7].xyyy 272: FSGE TEMP[43].x, TEMP[42].xxxx, -TEMP[24].xxxx 273: AND TEMP[44].x, TEMP[43].xxxx, IMM[4].wwww 274: INEG TEMP[45].x, TEMP[44].xxxx 275: AND TEMP[46].x, TEMP[41].xxxx, TEMP[45].xxxx 276: MOV TEMP[26].y, TEMP[27].xxxx 277: DP2 TEMP[47].x, TEMP[2].xyyy, TEMP[26].xyyy 278: FSGE TEMP[48].x, TEMP[47].xxxx, -TEMP[24].xxxx 279: AND TEMP[49].x, TEMP[48].xxxx, IMM[4].wwww 280: INEG TEMP[50].x, TEMP[49].xxxx 281: AND TEMP[51].x, TEMP[46].xxxx, TEMP[50].xxxx 282: DP2 TEMP[52].x, TEMP[5].zwww, TEMP[26].xyyy 283: FSGE TEMP[53].x, TEMP[52].xxxx, -TEMP[24].xxxx 284: AND TEMP[54].x, TEMP[53].xxxx, IMM[4].wwww 285: INEG TEMP[55].x, TEMP[54].xxxx 286: MOV TEMP[2].z, TEMP[55].xxxx 287: AND TEMP[56].x, TEMP[51].xxxx, TEMP[55].xxxx 288: MOV TEMP[3].z, TEMP[56].xxxx 289: MOV TEMP[57].x, TEMP[56].xxxx 290: USNE TEMP[58].x, TEMP[56].xxxx, IMM[0].wwww 291: UIF TEMP[58].xxxx :0 292: ATOMUADD TEMP[59].x, MEMORY[1], IMM[1].yyyy, IMM[0].zzzz 293: MOV TEMP[26].x, TEMP[59].xxxx 294: AND TEMP[60].x, TEMP[59].xxxx, IMM[5].xxxx 295: MOV TEMP[6].x, TEMP[60].xxxx 296: USHR TEMP[61].x, TEMP[59].xxxx, IMM[1].xxxx 297: MOV TEMP[6].y, TEMP[61].xxxx 298: UADD TEMP[62].xy, TEMP[4].xwww, TEMP[6].xyyy 299: MOV TEMP[25].xy, TEMP[62].xyxx 300: MOV TEMP[63].xyz, TEMP[25].xyzz 301: STORE IMAGE[0], TEMP[25].xyzx, TEMP[1].wwww, RESTRICT, 2D_ARRAY 302: ENDIF 303: UADD TEMP[64].x, TEMP[1].wwww, IMM[6].xxxx 304: MOV TEMP[1].w, TEMP[64].xxxx 305: ENDLOOP :0 306: FSLT TEMP[8].x, TEMP[1].xxxx, CONST[3].wwww 307: AND TEMP[8].x, TEMP[8].xxxx, IMM[4].wwww 308: INEG TEMP[8].x, TEMP[8].xxxx 309: MOV TEMP[1].x, TEMP[8].xxxx 310: MOV TEMP[9].x, TEMP[8].xxxx 311: USNE TEMP[8].x, TEMP[8].xxxx, IMM[0].wwww 312: UIF TEMP[8].xxxx :0 313: F2U TEMP[8].x, CONST[3].zzzz 314: MOV TEMP[1].x, TEMP[8].xxxx 315: UMIN TEMP[8].x, TEMP[8].xxxx, CONST[17].xxxx 316: MOV TEMP[1].x, TEMP[8].xxxx 317: MOV TEMP[6].w, TEMP[3].wwww 318: MOV TEMP[1].w, TEMP[0].xxxx 319: BGNLOOP :0 320: USGE TEMP[8].x, TEMP[1].wwww, TEMP[1].xxxx 321: AND TEMP[9].x, TEMP[8].xxxx, IMM[4].wwww 322: INEG TEMP[10].x, TEMP[9].xxxx 323: MOV TEMP[3].z, TEMP[10].xxxx 324: MOV TEMP[11].x, TEMP[10].xxxx 325: USNE TEMP[12].x, TEMP[10].xxxx, IMM[0].wwww 326: UIF TEMP[12].xxxx :0 327: BRK 328: ENDIF 329: UMAD TEMP[13].x, TEMP[1].wwww, IMM[0].yyyy, IMM[2].wwww 330: UMUL TEMP[14].x, TEMP[13].xxxx, IMM[1].xxxx 331: LOAD TEMP[15].x, BUFFER[17], TEMP[14].xxxx 332: UMAD TEMP[16].x, TEMP[1].wwww, IMM[0].yyyy, IMM[1].zzzz 333: UMUL TEMP[17].x, TEMP[16].xxxx, IMM[1].xxxx 334: LOAD TEMP[18].x, BUFFER[17], TEMP[17].xxxx 335: MOV TEMP[19].x, TEMP[18].xxxx 336: UMAD TEMP[20].x, TEMP[1].wwww, IMM[0].yyyy, IMM[5].zzzz 337: UMUL TEMP[21].x, TEMP[20].xxxx, IMM[1].xxxx 338: LOAD TEMP[22].x, BUFFER[17], TEMP[21].xxxx 339: MOV TEMP[19].y, TEMP[22].xxxx 340: UMAD TEMP[23].x, TEMP[1].wwww, IMM[0].yyyy, IMM[5].wwww 341: UMUL TEMP[24].x, TEMP[23].xxxx, IMM[1].xxxx 342: LOAD TEMP[26].x, BUFFER[17], TEMP[24].xxxx 343: MOV TEMP[19].z, TEMP[26].xxxx 344: MOV TEMP[6].xyz, TEMP[19].xyzx 345: USLT TEMP[27].x, IMM[0].wwww, TEMP[1].wwww 346: AND TEMP[28].x, TEMP[27].xxxx, IMM[4].wwww 347: INEG TEMP[29].x, TEMP[28].xxxx 348: MOV TEMP[3].w, TEMP[29].xxxx 349: DP2 TEMP[30].x, IMM[3].wwww, TEMP[6].zwww 350: FSGE TEMP[31].x, TEMP[30].xxxx, -TEMP[15].xxxx 351: AND TEMP[32].x, TEMP[31].xxxx, IMM[4].wwww 352: INEG TEMP[33].x, TEMP[32].xxxx 353: MOV TEMP[3].x, TEMP[19].zzzz 354: DP2 TEMP[34].x, IMM[3].zwww, TEMP[3].xyyy 355: FSGE TEMP[35].x, TEMP[34].xxxx, -TEMP[15].xxxx 356: AND TEMP[36].x, TEMP[35].xxxx, IMM[4].wwww 357: INEG TEMP[37].x, TEMP[36].xxxx 358: AND TEMP[38].x, TEMP[37].xxxx, TEMP[33].xxxx 359: DP2 TEMP[39].x, TEMP[1].yzzz, TEMP[19].xzzz 360: FSGE TEMP[40].x, TEMP[39].xxxx, -TEMP[15].xxxx 361: AND TEMP[41].x, TEMP[40].xxxx, IMM[4].wwww 362: INEG TEMP[42].x, TEMP[41].xxxx 363: AND TEMP[43].x, TEMP[38].xxxx, TEMP[42].xxxx 364: DP2 TEMP[44].x, TEMP[5].xyyy, TEMP[19].xzzz 365: FSGE TEMP[45].x, TEMP[44].xxxx, -TEMP[15].xxxx 366: AND TEMP[46].x, TEMP[45].xxxx, IMM[4].wwww 367: INEG TEMP[47].x, TEMP[46].xxxx 368: AND TEMP[48].x, TEMP[43].xxxx, TEMP[47].xxxx 369: DP2 TEMP[49].x, TEMP[2].xyyy, TEMP[19].yzzz 370: FSGE TEMP[50].x, TEMP[49].xxxx, -TEMP[15].xxxx 371: AND TEMP[51].x, TEMP[50].xxxx, IMM[4].wwww 372: INEG TEMP[52].x, TEMP[51].xxxx 373: AND TEMP[53].x, TEMP[48].xxxx, TEMP[52].xxxx 374: DP2 TEMP[54].x, TEMP[5].zwww, TEMP[19].yzzz 375: MOV TEMP[2].z, TEMP[54].xxxx 376: FSGE TEMP[55].x, TEMP[54].xxxx, -TEMP[15].xxxx 377: AND TEMP[56].x, TEMP[55].xxxx, IMM[4].wwww 378: INEG TEMP[57].x, TEMP[56].xxxx 379: MOV TEMP[3].z, TEMP[57].xxxx 380: AND TEMP[58].x, TEMP[57].xxxx, TEMP[53].xxxx 381: AND TEMP[59].x, TEMP[58].xxxx, TEMP[29].xxxx 382: MOV TEMP[3].x, TEMP[59].xxxx 383: MOV TEMP[60].x, TEMP[59].xxxx 384: USNE TEMP[61].x, TEMP[59].xxxx, IMM[0].wwww 385: UIF TEMP[61].xxxx :0 386: ATOMUADD TEMP[62].x, MEMORY[1], IMM[1].zzzz, IMM[0].zzzz 387: MOV TEMP[7].x, TEMP[62].xxxx 388: USLT TEMP[63].x, TEMP[62].xxxx, IMM[8].xxxx 389: AND TEMP[64].x, TEMP[63].xxxx, IMM[4].wwww 390: INEG TEMP[65].x, TEMP[64].xxxx 391: MOV TEMP[3].x, TEMP[65].xxxx 392: MOV TEMP[66].x, TEMP[65].xxxx 393: USNE TEMP[67].x, TEMP[65].xxxx, IMM[0].wwww 394: UIF TEMP[67].xxxx :0 395: AND TEMP[68].x, TEMP[62].xxxx, IMM[5].xxxx 396: MOV TEMP[25].x, TEMP[68].xxxx 397: USHR TEMP[69].xyz, TEMP[62].xxxx, IMM[1].xxxx 398: MOV TEMP[25].yzw, TEMP[69].yxyz 399: UMAD TEMP[70], SV[1].xyyy, IMM[6].yyyy, TEMP[25] 400: MOV TEMP[71], TEMP[70] 401: MOV TEMP[7], TEMP[70] 402: MOV TEMP[72].xy, TEMP[70].xyyy 403: STORE IMAGE[1], TEMP[70].xyxx, TEMP[1].wwww, RESTRICT, 2D 404: ELSE :0 405: STORE MEMORY[1].x, IMM[1].zzzz, IMM[8].xxxx 406: ENDIF 407: ENDIF 408: UADD TEMP[73].x, TEMP[1].wwww, IMM[6].xxxx 409: MOV TEMP[1].w, TEMP[73].xxxx 410: ENDLOOP :0 411: ENDIF 412: MEMBAR IMM[4].yyyy 413: BARRIER 414: USEQ TEMP[0].x, TEMP[0].xxxx, IMM[0].wwww 415: UIF TEMP[0].xxxx :0 416: LOAD TEMP[0].x, MEMORY[1], IMM[0].wwww 417: AND TEMP[2].x, TEMP[0].xxxx, IMM[5].xxxx 418: MOV TEMP[3].x, TEMP[2].xxxx 419: USHR TEMP[0].x, TEMP[0].xxxx, IMM[1].xxxx 420: MOV TEMP[3].y, TEMP[0].xxxx 421: UADD TEMP[0].xy, TEMP[4].xwww, TEMP[3].xyyy 422: MOV TEMP[1].xy, TEMP[0].xyxx 423: MOV TEMP[1].z, IMM[3].xxxx 424: MOV TEMP[0].xyz, TEMP[1].xyzz 425: STORE IMAGE[0], TEMP[1].xyzx, IMM[8].yyyy, RESTRICT, 2D_ARRAY 426: LOAD TEMP[0].x, MEMORY[1], IMM[1].xxxx 427: AND TEMP[2].x, TEMP[0].xxxx, IMM[5].xxxx 428: MOV TEMP[3].x, TEMP[2].xxxx 429: USHR TEMP[0].x, TEMP[0].xxxx, IMM[1].xxxx 430: MOV TEMP[3].y, TEMP[0].xxxx 431: UADD TEMP[0].xy, TEMP[4].xwww, TEMP[3].xyyy 432: MOV TEMP[1].xy, TEMP[0].xyxx 433: MOV TEMP[1].z, IMM[7].xxxx 434: MOV TEMP[0].xyz, TEMP[1].xyzz 435: STORE IMAGE[0], TEMP[1].xyzx, IMM[8].yyyy, RESTRICT, 2D_ARRAY 436: LOAD TEMP[0].x, MEMORY[1], IMM[1].yyyy 437: AND TEMP[2].x, TEMP[0].xxxx, IMM[5].xxxx 438: MOV TEMP[3].x, TEMP[2].xxxx 439: USHR TEMP[0].x, TEMP[0].xxxx, IMM[1].xxxx 440: MOV TEMP[3].y, TEMP[0].xxxx 441: UADD TEMP[0].xy, TEMP[4].xwww, TEMP[3].xyyy 442: MOV TEMP[1].xy, TEMP[0].xyxx 443: MOV TEMP[1].zw, IMM[7].yyyy 444: MOV TEMP[0].xyz, TEMP[1].xyzz 445: STORE IMAGE[0], TEMP[1].xyzx, IMM[8].yyyy, RESTRICT, 2D_ARRAY 446: LOAD TEMP[0].x, MEMORY[1], IMM[1].zzzz 447: MOV TEMP[1].x, TEMP[0].xxxx 448: INEG TEMP[0].x, TEMP[0].xxxx 449: UADD TEMP[0].x, IMM[6].zzzz, TEMP[0].xxxx 450: UMIN TEMP[0].x, TEMP[0].xxxx, IMM[1].xxxx 451: MOV TEMP[1].y, TEMP[0].xxxx 452: MOV TEMP[1].z, IMM[3].xxxx 453: BGNLOOP :0 454: USGE TEMP[0].x, TEMP[1].zzzz, TEMP[1].yyyy 455: AND TEMP[2].x, TEMP[0].xxxx, IMM[4].wwww 456: INEG TEMP[5].x, TEMP[2].xxxx 457: MOV TEMP[1].w, TEMP[5].xxxx 458: MOV TEMP[6].x, TEMP[5].xxxx 459: USNE TEMP[7].x, TEMP[5].xxxx, IMM[0].wwww 460: UIF TEMP[7].xxxx :0 461: BRK 462: ENDIF 463: UADD TEMP[8].x, TEMP[1].xxxx, TEMP[1].zzzz 464: MOV TEMP[1].w, TEMP[8].xxxx 465: AND TEMP[9].x, TEMP[8].xxxx, IMM[5].xxxx 466: MOV TEMP[3].x, TEMP[9].xxxx 467: USHR TEMP[10].xyz, TEMP[8].xxxx, IMM[1].xxxx 468: MOV TEMP[3].yzw, TEMP[10].yxyz 469: UADD TEMP[11], TEMP[4], TEMP[3] 470: MOV TEMP[12], TEMP[11] 471: MOV TEMP[3], TEMP[11] 472: MOV TEMP[13].xy, TEMP[11].xyyy 473: STORE IMAGE[1], TEMP[11].xyxx, IMM[0].wwww, RESTRICT, 2D 474: UADD TEMP[14].x, TEMP[1].zzzz, IMM[4].wwww 475: MOV TEMP[1].z, TEMP[14].xxxx 476: ENDLOOP :0 477: ENDIF 478: END