On Don, 2012-12-27 at 03:29 +0100, Marek Olšák wrote: > On Thu, Dec 27, 2012 at 12:54 AM, Dave Airlie <airl...@gmail.com> wrote: > > So I've got a persistent hang with the glsl-1.40-tf-no-position when I > > enabled ubo/tbo and glsl 1.40. > > > > My original thoughts were there was no param export from the vertex > > shader, but I was wrong on that count, the > > vertex shader exports a param along with the stream output. > > > > Below is the TGSI/r600g dump from my evergreen for the offending > > program, it reliably takes out all the EG cards I tested on (haven't > > tried anything else). > > > > This is blocking me from enabling UBO/TBO on evergreen as I don't want > > to start having piglit lockups once I enable it. > > > > Dave. > > ______________________________________________________________ > > -------------------------------------------------------------- > > VERT > > DCL IN[0] > > DCL OUT[0], GENERIC[12] > > DCL TEMP[0], LOCAL > > 0: MOV TEMP[0].x, IN[0].xxxx > > 1: MOV OUT[0], TEMP[0] > > 2: END > > STREAMOUT > > 0: MEM_STREAM0_BUF0 OUT[0].x___ > > This looks like the "copy_buffer" shader, which is known to work. The > only differences are that there is no position output and OUT[0] is > declared as GENERIC[12]. > > My bet is that the problem is with the declaration, not with streamout > itself. Maybe the POSITION output should be added artificially if it's > missing in the shader, [...]
That could be it indeed. At least on SI, the vertex shader is required to export to position 0, the same could be true for Evergreen. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Debian, X and DRI developer _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev