[Nouveau] [Bug 78161] [NV96] Artifacts in output of fragment program containing not unrolled loops with conditional break
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu May 1 19:01:04 PDT 2014
https://bugs.freedesktop.org/show_bug.cgi?id=78161
--- Comment #6 from Ilia Mirkin <imirkin at alum.mit.edu> ---
Fail. Their compiler is a lot smarter than ours. (Note that I'm pretty sure
their code starts at 0x100, which is why the branch destinations are all off.)
00000000: 10008005 03f80003 mov b32 $r1 0x3f800000
00000008: 8000000c interp $r3 v[0x0]
0000000c: 1000fe10 mov b32 $r4 $r63
00000010: 10008208 mov b32 $r2 $r1
00000014: 10008200 mov b32 $r0 $r1
00000018: 90000615 00000780 rcp f32 $r5 $r3
00000020: b08009fd 604107c8 set $c0 # g f32 $r4 c1[0x0]
00000028: 10039003 00000680 (lgu $c0) bra 0x1c8
00000030: b000080d 04204003 add f32 $r3 $r4 0x42040000
00000038: 82010a18 interp $r6 v[0x4] $r5
0000003c: 82020a1c interp $r7 v[0x8] $r5
00000040: c0060621 00000780 mul rn f32 $r8 $r3 $r6
00000048: c02e0e0d 0486563f mul f32 $r3 $r7 0x486563ee
00000050: b00d0819 03f8cccf add f32 $r6 $r4 0x3f8ccccd
00000058: e000100d 04367003 add f32 $r3 (mul $r8 0x43670000) $r3
00000060: c0030c0d 00000780 mul rn f32 $r3 $r6 $r3
00000068: b000060d c0000780 presin f32 $r3 $r3
00000070: 9000060d a0000780 cos f32 $r3 $r3
00000078: b08107fd 60c107c8 set $c0 # g f32 $r3 c3[0x4]
00000080: c0830809 00c00680 (lgu $c0) mul rn f32 $r2 $r4 c3[0xc]
00000088: 10007e05 0403c680 (lgu $c0) mov b32 $r1 $r63
00000090: 10007e01 0403c680 (lgu $c0) mov b32 $r0 $r63
00000098: 10039003 00000680 (lgu $c0) bra 0x1c8
000000a0: b0000811 03f80003 add f32 $r4 $r4 0x3f800000
000000a8: b082080d 60c04780 set $r3 l f32 $r4 c3[0x8]
000000b0: a000060d 04114780 cvt abs u32 $r3 s32 $r3
000000b8: 303f07fd 640087c8 set $c0 # e u32 $r3 $r63
000000c0: 10024003 00000700 (geu $c0) bra 0x120
000000c8: b00d0001 03dccccf add f32 $r0 $r0 0x3dcccccd
000000d0: 1000080d 24c0c781 exit ld $r3 b32 c3[0x10]
So... I guess the next move is to write a horrendously twisted glsl program
that even their compiler can't avoid breaks on, and see what happens.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/nouveau/attachments/20140502/954af9bb/attachment-0001.html>
More information about the Nouveau
mailing list