[Nouveau] [Bug 80266] New: Undefined operation in tgsi_ureg.c left shift of 1 by 31 places cannot be represented in type 'int'

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Jun 19 22:46:58 PDT 2014


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

          Priority: medium
            Bug ID: 80266
          Assignee: nouveau at lists.freedesktop.org
           Summary: Undefined operation in tgsi_ureg.c left shift of 1 by
                    31 places cannot be represented in type 'int'
          Severity: minor
    Classification: Unclassified
                OS: Linux (All)
          Reporter: zeccav at gmail.com
          Hardware: x86-64 (AMD64)
            Status: NEW
           Version: 10.2
         Component: Drivers/DRI/nouveau
           Product: Mesa

In tgsi_ureg.c:1498
"if (ureg->vs_inputs[i/32] & (1 << (i%32))) {"
when i==31 then 1 << 31 may be computed.
With gcc option -std=c99 this is wrong because the result cannot be int.

Perhaps the right instruction is
"if (ureg->vs_inputs[i/32] & ((unsigned) 1 << (i%32))) {"

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


More information about the Nouveau mailing list