Bug 56521 - [GM45] Webgl conformance glsl-function-texture2d-bias test assertion failure
Summary: [GM45] Webgl conformance glsl-function-texture2d-bias test assertion failure
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: Other All
: high normal
Assignee: Eric Anholt
QA Contact:
URL: https://www.khronos.org/registry/webg...
Whiteboard:
Keywords:
: 56520 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-10-29 13:25 UTC by Pavel Ondračka
Modified: 2012-11-26 17:02 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
full backtrace (29.69 KB, text/plain)
2012-10-29 13:25 UTC, Pavel Ondračka
Details

Description Pavel Ondračka 2012-10-29 13:25:30 UTC
Created attachment 69227 [details]
full backtrace

firefox: brw_fs_reg_allocate.cpp:415: bool fs_visitor::assign_regs(): Předpoklad „this->virtual_grf_sizes[i] >= 1 && this->virtual_grf_sizes[i] <= 4 && "Register allocation relies on split_virtual_grfs()"“ nesplněn.

https://www.khronos.org/registry/webgl/sdk/tests/conformance/glsl/samplers/glsl-function-texture2d-bias.html

Full backtrace attached.

Firefox: 16.0.1
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset 
OpenGL version string: 2.1 Mesa 9.1-devel (git-96ed6c9)
Kernel: 3.6.2-4.fc17.x86_64
xf86-veideo-intel: f4c32af48b0c92a48131090886a6a6b6c45dbe34 (sna enabled)
Comment 1 Pavel Ondračka 2012-10-29 15:16:30 UTC
Almost three dozens of piglit tests are also affected by this (for example glsl-fs-texture2d-bias, glsl-fs-texturelod-01, tex_grad-04.frag, glsl-fs-shadow2DGradARB-01 and much more). 9.0 works fine, so I did try git bisect and this is what showed up:

commit 5d90b988791e51cfb6413109271ad102fd7a304c
Author: Eric Anholt <eric@anholt.net>
Date:   Mon Oct 1 16:39:54 2012 -0700

    i965/fs: Make the register allocation class_sizes[] choice static.
    
    Based on split_virtual_grfs(), we choose the same set every time, so set it 
    stone.  This will help us avoid regenerating the somewhat expensive
    class/register set setup every compile.
Comment 2 Ian Romanick 2012-10-29 18:25:58 UTC
This may be a dup of bug #56520.  This one has a bisect, so I'd prefer to close the other.
Comment 3 Eric Anholt 2012-10-31 17:59:23 UTC
I see it, the problem is the "if (simd16)" case in brw_fs_visitor.cpp, so we have a size of 8 we need to handle.  Should be easy, just waiting on tests.
Comment 4 Eric Anholt 2012-10-31 17:59:33 UTC
*** Bug 56520 has been marked as a duplicate of this bug. ***
Comment 5 Eric Anholt 2012-11-26 17:02:15 UTC
commit 244db0855c3c604211d7a868240ec927610881dd
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Nov 13 15:54:41 2012 -0800

    i965/gen4: Fix LOD bias texturing since my fixed reg classes change.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.