Fix a bug in GlobalOpt's handling of DIExpressions.
authorAdrian Prantl <aprantl@apple.com>
Fri, 27 Apr 2018 21:41:36 +0000 (21:41 +0000)
committerAdrian Prantl <aprantl@apple.com>
Fri, 27 Apr 2018 21:41:36 +0000 (21:41 +0000)
commit210a29de7bcc6dcf73fec98efe38e2e1fac83c50
treefd434f8f89a9706e581bd115715220a67dafb61a
parent6959b8e76f18f63aacaaf24dd74b11d733b57314
Fix a bug in GlobalOpt's handling of DIExpressions.

This patch adds support for fragment expressions
TryToShrinkGlobalToBoolean() which were previously just dropped.

Thanks to Reid Kleckner for providing me a reproducer!

llvm-svn: 331086
llvm/include/llvm/IR/DebugInfoMetadata.h
llvm/lib/IR/DebugInfoMetadata.cpp
llvm/lib/Transforms/IPO/GlobalOpt.cpp
llvm/lib/Transforms/Utils/Local.cpp
llvm/test/Transforms/GlobalOpt/integer-bool-dwarf.ll