https://bugs.kde.org/show_bug.cgi?id=401112

            Bug ID: 401112
           Summary: LLVM 5.0 generates comparison against partially
                    initialized data.
           Product: valgrind
           Version: 3.14 SVN
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: memcheck
          Assignee: jsew...@acm.org
          Reporter: nicolas.b.pier...@nbp.name
  Target Milestone: ---

Created attachment 116354
  --> https://bugs.kde.org/attachment.cgi?id=116354&action=edit
Spec rule for SUBL-Cond{BE,NBE} with ((1 << N) - 1) immediate

SUMMARY
https://bugzilla.mozilla.org/show_bug.cgi?id=1489572#c47

LLVM 5.0 generates SUBL {CondBE / CondNBE} with power of 2 minus 1 immediate,
to compare the high bits of data structures, where the bottom of the data
structure might have undefined bits.

The attached patch copies the spec rule which were added previous and changes
the way N is computed, based on the ((1 << N) - 1) pattern instead. Testing on
the initial issue seems to fix the problem.

STEPS TO REPRODUCE
1. https://bugzilla.mozilla.org/show_bug.cgi?id=1489572#c47

OBSERVED RESULT
Conditional jump or move depends on uninitialised value(s)

EXPECTED RESULT
Nothing.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to