[Mesa-dev] [Bug 105670] [regression][hang] Trine1EE hangs GPU after loading screen on Mesa3D-17.3 and later
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Mar 23 17:49:39 UTC 2018
https://bugs.freedesktop.org/show_bug.cgi?id=105670
--- Comment #7 from Gert Wollny <gw.fossdev at gmail.com> ---
I tried to create a piglit, but so far i failed. So here is a dumped down
version of the loop contained in the relevant shader:
const vec4 ps_lc21 = vec4(5.00000000e-01, -5.00000000e-01,
0.00000000e+00, 0.00000000e+00);
const vec4 ps_lc20 = vec4(1.00000000e+00, 3.92156886e-03,
1.53787005e-05, 2.00000003e-01);
const vec4 ps_lc19 = vec4(3.30000013e-01, -1.70000002e-01,
4.00000000e+00, 1.00000001e-01);
const vec4 ps_lc18 = vec4(2.00000000e+00, -1.00000000e+00,
1.00000005e-03, 0.00000000e+00);
const vec4 ps_lc17 = vec4(-5.00000000e-01, 1.00000000e+00,
2.00000000e+00, -9.99999978e-03);
R0.w = (ps_lc17.y);
for (tmpInt0 = 0; tmpInt0 < 4; tmpInt0++) {
R6.xyz = ((R5.xyz * ps_lc20.www) + R6.xyz);
R9.xyzw = (textureLod(ps_sampler4, R6.xy, R6.w).xyzw);
R3.w = ((R9.w * ps_lc20.y) + R9.z);
R5.w = ((R3.w * -ps_c[11].y) + ps_in[7].z);
tmp0.w = (R5.w >= 0.0 ? abs(ps_lc18.w) : abs(ps_lc18.y));
R5.w = (tmp0.w);
R3.w = ((R3.w * ps_c[11].y) + -R6.z);
tmp0.w = (R3.w >= 0.0 ? abs(ps_lc18.w) : abs(ps_lc18.y));
R3.w = (tmp0.w);
R3.w = (R5.w * R3.w);
if (R3.w != -R3.w) {
R8.xy = (R6.xy);
R3.w = (R0.w);
if (R3.w != -R3.w)
break;
}
}
the working TGSI looks like this:
IMM[0] FLT32 { 2.0000, -1.0000, 1.0000, 0.0010}
IMM[1] FLT32 { 0.3300, -0.1700, -0.0000, -1.0000}
IMM[2] FLT32 { -0.5000, 0.0000, 0.1000, -2.0000}
IMM[3] FLT32 { 1.0000, 0.0039, 0.0000, -0.0100}
IMM[4] FLT32 { -0.5000, 1.0000, -0.0100, 0.0000}
IMM[5] FLT32 { -1.0000, 0.0000, 4.0000, 0.5000}
IMM[6] FLT32 { 0.5000, -0.5000, 0.2000, 0.0000}
IMM[7] INT32 {0, 4, 1, 0}
...
218 MOV TEMP[2].w, IMM[0].zzzz
219 MOV TEMP[8].x, IMM[7].xxxx
220: BGNLOOP
221: ISGE TEMP[13].x, TEMP[8].xxxx, IMM[7].yyyy
222: UIF TEMP[13].xxxx
223: BRK
224: ENDIF
225: MAD TEMP[14].xyz, TEMP[11].xyzz, IMM[6].zzzz, TEMP[14].xyzz
226: MOV TEMP[13].xy, TEMP[14].xyyy
227: MOV TEMP[13].w, TEMP[14].wwww
228: TXL TEMP[13], TEMP[13], SAMP[4], 2D
229: MOV TEMP[15], TEMP[13]
230: MAD TEMP[13].x, TEMP[13].wwww, IMM[3].yyyy, TEMP[13].zzzz
231: MAD TEMP[15].x, TEMP[13].xxxx, -CONST[0][11].yyyy, TEMP[1].zzzz
232: FSGE TEMP[15].x, TEMP[15].xxxx, IMM[2].yyyy
233: UIF TEMP[15].xxxx
234: MOV TEMP[9].x, IMM[2].yyyy
235: ELSE
236: MOV TEMP[9].x, IMM[0].zzzz
237: ENDIF
238: MOV TEMP[11].w, TEMP[9].xxxx
239: MAD TEMP[13].x, TEMP[13].xxxx, CONST[0][11].yyyy, -TEMP[14].zzzz
240: FSGE TEMP[13].x, TEMP[13].xxxx, IMM[2].yyyy
241: UIF TEMP[13].xxxx
242: MOV TEMP[12].x, IMM[2].yyyy
243: ELSE
244: MOV TEMP[12].x, IMM[0].zzzz
245: ENDIF
246: MOV TEMP[6].w, TEMP[12].xxxx
247: MUL TEMP[6].x, TEMP[9].xxxx, TEMP[12].xxxx
248: MOV TEMP[7].w, TEMP[6].xxxx
249: FSNE TEMP[6].x, TEMP[6].xxxx, -TEMP[6].xxxx
250: UIF TEMP[6].xxxx
251: MOV TEMP[4].xy, TEMP[14].xyxx
252: MOV TEMP[7].w, TEMP[2].wwww
253: FSNE TEMP[6].x, TEMP[2].wwww, -TEMP[2].wwww
254: UIF TEMP[6].xxxx
255: BRK
256: ENDIF
257: ENDIF
258: UADD TEMP[8].x, TEMP[8].xxxx, IMM[7].zzzz
259: ENDLOOP
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180323/ce0b7f68/attachment.html>
More information about the mesa-dev
mailing list