[PATCH] D45104: [COFF] Fix reading variable-length encoded records

Alexandre Ganea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 30 12:41:29 PDT 2018


aganea created this revision.
aganea added reviewers: zturner, rnk.
Herald added subscribers: llvm-commits, hiraditya.

While reading Codeview records which contain variable-length encoded integers,
such as LF_BCLASS, LF_ENUMERATE, LF_MEMBER, LF_VBCLASS or LF_IVBCLASS,
the record's size would be improperly calculated in cases where the value was
indeed variable-length (>= LF_NUMERIC). This caused a bad alignement on the
next record, which would/might crash later on.


Repository:
  rL LLVM

https://reviews.llvm.org/D45104

Files:
  llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
  test/DebugInfo/COFF/enum_var.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45104.140472.patch
Type: text/x-patch
Size: 4447 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180330/798d819e/attachment.bin>


More information about the llvm-commits mailing list