[Nouveau] [Bug 102382] New: nv50ir: isImmediate doesn't properly work for integers if Value is typed as float

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Aug 23 21:18:46 UTC 2017


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

            Bug ID: 102382
           Summary: nv50ir: isImmediate doesn't properly work for integers
                    if Value is typed as float
           Product: xorg
           Version: git
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Driver/nouveau
          Assignee: nouveau at lists.freedesktop.org
          Reporter: karolherbst at gmail.com
        QA Contact: xorg-team at lists.x.org

Created attachment 133728
  --> https://bugs.freedesktop.org/attachment.cgi?id=133728&action=edit
TGSI

codegen should generate a texfetch instruction with a lod according to
IMM[1].xxxx, which is of value 2, but in
https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp#n140
the isInteger(0) call assumes the Value being a F32, which leads to a is
2.8E-45 == 0 check returning true resulting into the lod argument being removed
from texfetch.

This causes a fail in the KHR-GL44.robust_buffer_access_behavior.texel_fetch
CTS test.

Other isInteger calls might be broken as well where an immediate of type float
is interpreted as int by the instruction.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/nouveau/attachments/20170823/c91679cd/attachment.html>


More information about the Nouveau mailing list