Bugzilla – Bug 9996
KIL instruction broken on r300
Last modified: 2009-08-24 12:25:58 UTC
The KIL instruction is broken on R300 and causes an assertion. You can trigger
this with the tri-kil demo included with Mesa:
tri-kil: r300_state.c:1310: r300_setup_textures: Assertion `tmu_mappings[unit] >= 0' failed.
Created attachment 8751 [details]
Added log of running tri-kil with vertex and fragment program dumping enabled.
I recently got iba-2 to work for me thanks to aet's help on #dri-devel, so I'll
attach a dump of tri-kil's indirect buffers from the blob soon, probably later
I'd like to get this working, the KIL instruction can be quite useful as an
Created attachment 8920 [details]
Dump of tri-mov's indirect buffers when using the blob.
Created attachment 8921 [details]
Dump of tri-kil's indirect buffers when using the blob.
Created attachment 8922 [details]
Diff between tri-mov's and tri-kil's indirect buffers.
It seems that using the KIL instruction does in fact require a TEX lookup, the
folllowing is added when looking at the diff.
Also, the other other intsructions are changed, and one appears to be OR with a
constant, as well as a few other changed. Someone who knows more about this
should probably take a look. I think it might not be too hard to get this to
work for someone who really understands it. :)
The KIL instruction should work now (commit d9c7c5f071f5bf2a7516d877c9ab84b2b2b91779). Basically, at least one texture unit has to be enabled for KIL to work, even if there isn't actually a texture behind it.
Mass version move, cvs -> git