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: [email protected]
          Reporter: [email protected]
        QA Contact: [email protected]

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.
_______________________________________________
Nouveau mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to