aboutsummaryrefslogtreecommitdiff
path: root/tools/bugpoint/OptimizerDriver.cpp
AgeCommit message (Collapse)Author
2013-01-02Move all of the header files which are involved in modelling the LLVM IRChandler Carruth
into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Sort the #include lines for tools/...Chandler Carruth
Again, tools are trickier to pick the main module header for than library source files. I've started to follow the pattern of using LLVMContext.h when it is included as a stub for program source files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169252 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-08Move TargetData to DataLayout.Micah Villmow
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-19Fix two bugpoint bugs:Chris Lattner
1) opt is not usually in the same path as the target program. Even for the bugpoint as a standalone app, it should be more portable to search in PATH, isn't it? 2) bugpoint driver accounts opt plugins, but does not list them in the final output command. Patch by Dmitry Mikushin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153066 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-21Have Program::Wait return -2 for crashed and timeouts instead of embeddingAndrew Trick
info in the error message. Per Dan's request. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131780 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-24fit in 80 cols.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126399 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-29Merge System into Support.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-03Rename FindExecutable to PrependMainExecutablePath.Mikhail Glushenkov
Makes it more clear that it is just a path manipulation function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118174 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-0380-col violations, trailing whitespace.Mikhail Glushenkov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118173 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Check for (unlikely) errors from FindExecutable.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117658 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-29Delete this obsolete comment.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117655 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-07Move tool_output_file into its own file.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115973 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-01Make tool_output_file's raw_ostream instance a member variable insteadDan Gohman
of a base class. This makes it possible to unregister the file from FilesToRemove when the file is done. Also, this eliminates the need for formatted_tool_output_file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112706 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-24Apply "Win32's Hybrid path separator in argv[0] should be accepted to bugpoint",Chris Lattner
patch by NAKAMURA Takumi! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111929 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-20Convert tools to use tool_output_file, and introduce errorDan Gohman
checking to places which previously lacked it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111651 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08Add a opt-args option that can be used to pass arguments to every optRafael Espindola
invocation. Fixes PR7793: bugpoint -debug test.ll --opt-args -unroll-count=4 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110555 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-08Most of bugpoint now only needs to know the pass names.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110534 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-07Run opt instead of bugpoint itself.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110524 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-05Revert bugpoint change due to buildbot breakage.Bob Wilson
--- Reverse-merging r110333 into '.': U tools/bugpoint/BugDriver.h U tools/bugpoint/OptimizerDriver.cpp U tools/bugpoint/bugpoint.cpp U tools/bugpoint/BugDriver.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110341 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-05Run opt instead of bugpoint itself.Rafael Espindola
Fixes PR753. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110333 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-05Make EmitProgressBitcode const and add a Module argument to runPasses. UseRafael Espindola
that argument to simplify runPassesOn. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110291 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-28Instead of abusing swapProgramIn, just add a Module argument toRafael Espindola
EmitProgressBitcode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109602 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20Speculatively revert r108813, in an attempt to get the self-host buildbots ↵Owen Anderson
working again. I don't see why this patch would cause them to fail the way they are, but none of the other intervening patches seem likely either. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108818 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20Reapply r108794, a fix for the failing test from last time.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108813 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20Revert r108794, "Separate PassInfo into two classes: a constructor-freeDaniel Dunbar
superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is breaking teh everything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108805 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-20Separate PassInfo into two classes: a constructor-free superclass ↵Owen Anderson
(StaticPassInfo) and a constructor-ful subclass (PassInfo). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108794 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-19Bugpoint's default memory limit (100MB) was too low for valgrind, soJeffrey Yasskin
this patch raises the default to 800MB when valgrind's active. 800 was chosen semi-arbitrarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98905 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-07Add -output-prefix option to bugpoint (to change the default output name).Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81154 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-25Make LLVM command-line tools overwrite their output files without -f.Dan Gohman
This is conventional command-line tool behavior. -f now just means "enable binary output on terminals". Add a -f option to llvm-extract and llvm-link, for consistency. Remove F_Force from raw_fd_ostream and enable overwriting and truncating by default. Introduce an F_Excl flag to permit users to enable a failure when the file already exists. This flag is currently unused. Update Makefiles and documentation accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79990 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-23Prune #includes from llvm/Linker.h and llvm/System/Path.h,Chris Lattner
forcing them down into various .cpp files. This change also: 1. Renames TimeValue::toString() and Path::toString() to ::str() for similarity with the STL. 2. Removes all stream insertion support for sys::Path, forcing clients to call .str(). 3. Removes a use of Config/alloca.h from bugpoint, using smallvector instead. 4. Weans llvm-db off <iostream> sys::Path really needs to be gutted, but I don't have the desire to do it at this point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79869 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-23eliminate the std::ostream forms of the bitcode writing APIs.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79840 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-18Include valgrind in the steps to reproduce if valgrind was used to reproduceNick Lewycky
the problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79322 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05Fix FindExecutable to use sys::Path::GetMainExecutable instead ofDan Gohman
just argv[0]. And remove the code for searching the current working directory and for searching PATH; the point of FindExecutable is not to find whatever version of the executable can be found by searching around, but to find an executable that accompanies the current executable. Update the tools to use sys::Program::FindProgramByName when they want PATH searching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78240 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16Convert more tools code from cerr and cout to errs() and outs().Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76070 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-01Add a pointer to the owning LLVMContext to Module. This requires threading ↵Owen Anderson
LLVMContext through a lot of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools. Patches for Clang and LLVM-GCC to follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-12Add -silence-passes option to bugpoint. This option suppresses output generatedMatthijs Kooijman
when bugpoint is running passes in a child process. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52234 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-26Detabify.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47596 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29remove attributions from tools.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45421 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-14Allow the block extractor take to take a list of basic blocks to not extractNick Lewycky
from a file containing Function/BasicBlock pairings. This is not safe against anonymous or abnormally-named Funcs or BBs. Make bugpoint use this interface to pass the BBs list to the child bugpoint. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44101 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-04Pretty straightforward replacement of "bytecode" by "bitcode"Gabor Greif
performed on tools/ first, in order not to cause lethal damage git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37877 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06Fix a buggy conversion from bytecode to bitcodeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36883 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06switch tools to bitcode from bytecodeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36872 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06add bitcode supportChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36849 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-16Add possibility to set memory limit for binaries run via libSystem. ThisAnton Korobeynikov
is especially needed for bugpoint. This partly implements PR688 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34349 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-21default to emiting an uncompressed .bc fileChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33420 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling
now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-29Replacing std::iostreams with llvm iostreams. Some of these changes involveBill Wendling
adding a temporary wrapper around the ostream to make it friendly to functions expecting an LLVM stream. This should be fixed in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31990 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-14Fix --enable-valgrind. Add room for the new arguments, and don't keepNick Lewycky
a pointer to a temporary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30312 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-14Add --enable-valgrind option to run optimizations through valgrind toNick Lewycky
pick up on memory errors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30311 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27analyze no longer exists, don't offer to run it :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29919 91177308-0d34-0410-b5e6-96231b3b80d8