[Bug 89597] Implement SSBOs in GLSL front-end and i965

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Apr 20 00:35:00 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=89597

--- Comment #22 from Iago Toral <itoral at igalia.com> ---
(...)
> > > (In reply to Iago Toral from comment #18)
> > > Are you setting the block size in the message descriptor?
> > > 
> > > Bits 9:8 should be
> > > 
> > >   10: 8 DWords
> > >   11: 16 DWords
> > 
> > Yes, I think this is most likely the problem. We actually have a nice
> > #define for this.  You can see it in use in my wip/fs-indirects-v0.5 branch
> > in this commit:
> > 
> > http://cgit.freedesktop.org/~jekstrand/mesa/commit/?h=wip/fs-indirects-v0.
> > 5&id=df4293526f873102b45dd89dc20b084bc8662181
> > 
> > In fact, feel free to just cherry-pick that if you think it's what you want.
> > It also handles setting the right opcode for the different gens.
> 
> Nope, that shouldn't be it, this is what I have:
> 
> int mlen, msg_type;
> if (dispatch_width == 8) {
>    msg_type = BRW_DATAPORT_DWORD_SCATTERED_BLOCK_8DWORDS;
>    mlen = 3;
> } else {
>    msg_type = BRW_DATAPORT_DWORD_SCATTERED_BLOCK_16DWORDS;
>    mlen = 5;
> }
> 
> I use dispatch_width rather than the inst->exec_size to check if we are in
> SIMD16 or SIMD8 mode, but both should be valid I guess. Anyway, if my
> understanding of how things operate in SIMD16 mode is correct then there
> must be something silly getting in the way, I'll try to track it down.

I fixed the problem, in case you are curious: I had to update the
implementation of fs_inst::regs_read in brw_fs.cpp. As soon as I added that
things started to work fine.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20150420/137e61c3/attachment.html>


More information about the intel-3d-bugs mailing list