[PATCH] D19987: Allow the LTO code generator to drop malformed debug info from the input

Adrian Prantl via llvm-commits llvm-commits at lists.llvm.org
Thu May 5 11:17:12 PDT 2016


aprantl created this revision.
aprantl added a reviewer: joker.eph.
aprantl added subscribers: dexonsmith, llvm-commits.
Herald added a subscriber: joker.eph.

This patch introduces a new option -lto-strip-invalid-debug-info, which drops malformed debug info from the input.

The problem I'm trying to solve with this sequence of patches is that historically we've done a really bad job at verifying debug info. We want to be able to make the verifier stricter without having to worry about breaking bitcode compatibility with existing producers. For example, we don't necessarily want IR produced by an older version of clang to be rejected by an LTO link just because of malformed debug info, and rather provide an option to strip it. Note that merely outdated (but well-formed) debug info would continue to be auto-upgraded in this scenario.

rdar://problem/25818489

http://reviews.llvm.org/D19987

Files:
  include/llvm/LTO/LTOCodeGenerator.h
  lib/IR/Verifier.cpp
  lib/LTO/LTOCodeGenerator.cpp
  test/LTO/X86/Inputs/strip-debug-info.bc
  test/LTO/X86/strip-debug-info.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D19987.56318.patch
Type: text/x-patch
Size: 3750 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160505/53af643d/attachment.bin>


More information about the llvm-commits mailing list