llvm-project/llvm/tools
Daniel Berlin 60606266e0 Rework CFG simplification in bugpoint
Summary:
Depends on D22841

We now use a much simpler CFG simplification routine for bugpoint,
because SimplifyCFG is no longer a good match for what bugpoint wants
to do.

At the same time, to make sure we don't lose anything valuable it was doing,
SimplifyCFG is now run as a per-BB reduction pass.

With this and D22841 combined, bugpoint operates both much faster on
the large testcases i have, and reduces them to pretty much minimal
testcases (in one case, bugpoint used to leave about 6000 useless blocks, and
now it leaves 3 ...)

Reviewers: chandlerc, majnemer

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D22845

llvm-svn: 277063
2016-07-28 22:29:25 +00:00
..
bugpoint Rework CFG simplification in bugpoint 2016-07-28 22:29:25 +00:00
bugpoint-passes Remove autoconf support 2016-01-26 21:29:08 +00:00
dsymutil MC] Provide an MCTargetOptions to implementors of MCAsmBackendCtorTy, NFC 2016-07-25 17:18:28 +00:00
gold [ThinLTO/gold] Support for getting list of included objects from gold 2016-07-22 18:20:22 +00:00
llc llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
lli [cmake] Change lli-child-target to use add_llvm_utility instead of add_llvm_executable. 2016-07-10 02:43:50 +00:00
llvm-ar [llvm-ar] Document 'T' thin archive modifier (NFC) 2016-07-22 19:41:00 +00:00
llvm-as Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-as-fuzzer Remove every uses of getGlobalContext() in LLVM (but the C API) 2016-04-14 21:59:01 +00:00
llvm-bcanalyzer Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-c-test Add support for callsite in the new C API for attributes 2016-06-15 05:14:29 +00:00
llvm-config [llvm-config][GlobalISel] Canonicalize LLVM_HAS_GLOBAL_ISEL on ON/OFF. 2016-07-21 17:26:47 +00:00
llvm-cov [llvm-cov] Add a debug mode for source range highlighting (in html) 2016-07-27 21:57:15 +00:00
llvm-cxxdump [Object] Re-apply r275316 now that I have the corresponding LLD patch ready. 2016-07-14 02:24:01 +00:00
llvm-diff [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
llvm-dis IR: Allow metadata attachments on declarations, and fix lazy loaded metadata issue with globals. 2016-06-21 23:42:48 +00:00
llvm-dwarfdump Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-dwp MC] Provide an MCTargetOptions to implementors of MCAsmBackendCtorTy, NFC 2016-07-25 17:18:28 +00:00
llvm-extract Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-go [llvm-go] parameterize $GOPATH construction 2016-07-27 03:21:51 +00:00
llvm-jitlistener Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-link Don't verify inputs to the Linker if ODR merging. 2016-06-29 18:31:48 +00:00
llvm-lto Move legacy LTO interface headers to legacy/ directory. 2016-07-14 21:21:16 +00:00
llvm-mc MC] Provide an MCTargetOptions to implementors of MCAsmBackendCtorTy, NFC 2016-07-25 17:18:28 +00:00
llvm-mc-fuzzer [llvm-mc-fuzzer] Use LLVMFuzzerInitialize() instead of a custom main() and FuzzerDriver() 2016-05-13 10:23:04 +00:00
llvm-mcmarkup Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-nm [Object] Re-apply r275316 now that I have the corresponding LLD patch ready. 2016-07-14 02:24:01 +00:00
llvm-objdump Next step along the way to getting good error messages for bad archives. 2016-07-19 20:47:07 +00:00
llvm-pdbdump [pdb] Refactor library to more clearly separate reading/writing 2016-07-28 19:12:28 +00:00
llvm-profdata [llvm-profdata] Bring back reading profile data from STDIN. 2016-07-22 12:39:55 +00:00
llvm-readobj [pdb] Refactor library to more clearly separate reading/writing 2016-07-28 19:12:28 +00:00
llvm-rtdyld Thread Expected<...> up from libObject’s getSymbolAddress() for symbols to allow 2016-06-24 18:24:42 +00:00
llvm-shlib Revert "[CMake] LINK_LIBS need to be public for Darwin dylib targets" 2016-05-26 04:35:35 +00:00
llvm-size [Object] Re-apply r275316 now that I have the corresponding LLD patch ready. 2016-07-14 02:24:01 +00:00
llvm-split Remove every uses of getGlobalContext() in LLVM (but the C API) 2016-04-14 21:59:01 +00:00
llvm-stress [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
llvm-symbolizer Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
lto Move legacy LTO interface headers to legacy/ directory. 2016-07-14 21:21:16 +00:00
msbuild MSBuild integration: fix the loop in install.bat 2014-09-30 22:30:06 +00:00
obj2yaml [yaml2obj] Remove --format option in favor of YAML tags 2016-06-27 19:53:53 +00:00
opt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00
sancov [Object] Re-apply r275316 now that I have the corresponding LLD patch ready. 2016-07-14 02:24:01 +00:00
sanstats [Symbolize] Check if the PE file has a PDB and emit an error if we can't load it 2016-06-03 20:25:09 +00:00
verify-uselistorder Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
xcode-toolchain [CMake] Updating Xcode Toolchain creation to support Xcode 7 2016-07-26 00:47:52 +00:00
yaml2obj [yaml2obj] Remove --format option in favor of YAML tags 2016-06-27 19:53:53 +00:00
CMakeLists.txt Fixup r271533, or check-clang didn't find llvm-lto as the target. 2016-06-02 20:39:24 +00:00
LLVMBuild.txt llvm-dwp: Initial layout 2015-12-01 00:48:34 +00:00