aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate some unnessary Path::exists() calls.Dan Gohman2010-05-273-19/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104888 91177308-0d34-0410-b5e6-96231b3b80d8
* When handling raw_ostream errors manually, use clear_error() so thatDan Gohman2010-05-271-1/+3
| | | | | | | | | | raw_ostream doesn't try to do its own error handling. Also, close the raw_ostream before checking for errors so that any errors that occur during closing are caught by the manual check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104882 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't special-case stdout in llvm::WriteBitcodeToFile; just considerDan Gohman2010-05-271-2/+6
| | | | | | | | it to be the caller's responsibility to provide a stream in binary mode. This fixes a layering violation and avoids an outs() call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104878 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't create an output stream when output is disabled.Dan Gohman2010-05-271-19/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104875 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid calling outs() and fouts() when the stream isn't really needed.Dan Gohman2010-05-273-10/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104873 91177308-0d34-0410-b5e6-96231b3b80d8
* Apply timeouts and memory limits in more places. In particular, whenDuncan Sands2010-05-243-21/+40
| | | | | | | | | bugpoint does "Running the code generator to test for a crash" this gets you a crash if llc goes into an infinite loop or uses up vast amounts of memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104485 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Add an MCLoggingStreamer, for use in debugging integrated-as mismatches.Daniel Dunbar2010-05-231-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104463 91177308-0d34-0410-b5e6-96231b3b80d8
* Currently, createMachOStreamer() is invoked directly in llvm-mc whichMatt Fleming2010-05-211-1/+2
| | | | | | | | | | | isn't ideal if we want to be able to use another object file format. Add a createObjectStreamer() factory method so that the correct object file streamer can be instantiated for a given target triple. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104318 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead option.Daniel Dunbar2010-05-211-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104303 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid renaming loadable modules at install time. Now the gold plugin is namedRafael Espindola2010-05-161-1/+1
| | | | | | | LLVMgold.so both in both the build and install directories. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103897 91177308-0d34-0410-b5e6-96231b3b80d8
* Use regular PassManager instead of FunctionPassManager in opt, since itDan Gohman2010-05-141-12/+8
| | | | | | | isn't doing lazy streaming. This also fixes a missing doFinalization call. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103774 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix complete badness in bugpoint's IsARMArchitecture() function.Jakob Stoklund Olesen2010-05-131-3/+2
| | | | | | | | | | The revision history for this function is interesting, with multiple layers of wrongness being introduced one at a time. This fixes a weird issue where bugpoint -run-llc would suddenly exit 13 half way through isolating a miscompilation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103721 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an also-emit-llvm option to the gold plugin.Rafael Espindola2010-05-131-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103714 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR6951 by fixing Module leaks in bugpoint.Jeffrey Yasskin2010-05-111-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103523 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the "WantsWholeFile" concept, as it's no longer needed. CBEDan Gohman2010-05-111-67/+26
| | | | | | | | | and the others use the regular addPassesToEmitFile hook now, and llc no longer needs a bunch of redundant code to handle the whole-file case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103492 91177308-0d34-0410-b5e6-96231b3b80d8
* Extended the edis "IsBranch" property to callSean Callanan2010-05-112-1/+8
| | | | | | | | instructions as well. Added support for checking this to the llvm-mc tester as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103454 91177308-0d34-0410-b5e6-96231b3b80d8
* The getDefaultSubtargetFeatures method of SubtargetFeature did actually return aBill Wendling2010-05-112-4/+6
| | | | | | | | | | | | | | | | string of features for that target. However LTO was using that string to pass into the "create target machine" stuff. That stuff needed the feature string to be in a particular form. In particular, it needed the CPU specified first and then the attributes. If there isn't a CPU specified, it required it to be blank -- e.g., ",+altivec". Yuck. Modify the getDefaultSubtargetFeatures method to be a non-static member function. For all attributes for a specific subtarget, it will add them in like normal. It will also take a CPU string so that it can satisfy this horrible syntax. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103451 91177308-0d34-0410-b5e6-96231b3b80d8
* Add command line option --gcc to bugpoint.Kalle Raiskila2010-05-103-17/+30
| | | | | | | Remove sending duplicate of the --gcc-tool-args parameters to gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103397 91177308-0d34-0410-b5e6-96231b3b80d8
* don't pass -f to llc, it doesn't have it anymore. Patch by Kevin Fan (PR7090)Chris Lattner2010-05-071-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103263 91177308-0d34-0410-b5e6-96231b3b80d8
* make -filetype=obj default to emitting its output to foo.obj Chris Lattner2010-05-061-3/+8
| | | | | | | when on windows instead of foo.o. Patch by Nathan Jeffords! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103150 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed a sign-extension bug in the X86 disassemblerSean Callanan2010-05-051-0/+2
| | | | | | | | | that was causing PC-relative branch targets to be evaluated incorrectly. Also added support for checking operand values to the llvm-mc tester. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103128 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the -enable-sjlj-eh option, which doesn't do anything.Duncan Sands2010-05-021-14/+0
| | | | | | | | Remove the -enable-eh option which is only used by the JIT, and replace it with -jit-enable-eh. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102865 91177308-0d34-0410-b5e6-96231b3b80d8
* The llc -f flag was removed.Nick Lewycky2010-04-292-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102670 91177308-0d34-0410-b5e6-96231b3b80d8
* llc no longer requires the -f option to overwrite files.Dan Gohman2010-04-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102651 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead option.Daniel Dunbar2010-04-291-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102621 91177308-0d34-0410-b5e6-96231b3b80d8
* r98363 deleted a '!' when cleaning up whitespace. This caused globals which areBill Wendling2010-04-271-1/+1
| | | | | | | | *not* declarations to *not* be placed in the "preserve" list. <rdar://problem/7870735> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102405 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed edis to tokenize instructions with noSean Callanan2010-04-241-3/+5
| | | | | | | operands correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102227 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixes to edis that mark x86 call targets asSean Callanan2010-04-231-0/+3
| | | | | | | memory operands rather than immediate operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102217 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed EDOperand to use the operand type, not theSean Callanan2010-04-231-1/+3
| | | | | | | | flags, to determine whether or not the operand is a memory operand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102158 91177308-0d34-0410-b5e6-96231b3b80d8
* Support .a files directly (without -l).Mikhail Glushenkov2010-04-191-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101789 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more -Wcast-qual warnings.Dan Gohman2010-04-172-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101656 91177308-0d34-0410-b5e6-96231b3b80d8
* introduce a new CallGraphSCC class, and pass it aroundChris Lattner2010-04-161-5/+4
| | | | | | | | | to CallGraphSCCPass's instead of passing around a std::vector<CallGraphNode*>. No functionality change, but now we have a much tidier interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101558 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r64616 which worked around http://gcc.gnu.org/PR42757 , we just didn'tNick Lewycky2010-04-161-4/+2
| | | | | | | know it at the time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101439 91177308-0d34-0410-b5e6-96231b3b80d8
* Create an exports file, so that the plugin only exports the onload symbol.Dan Gohman2010-04-162-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101431 91177308-0d34-0410-b5e6-96231b3b80d8
* Make things static that don't need to be referenced from outside the file.Dan Gohman2010-04-161-12/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101430 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the export files absolute paths, and change Makefile.rulesDan Gohman2010-04-152-2/+2
| | | | | | | to expect them this way, to fix srcdir!=objdir builds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101414 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize the EXPORTED_SYMBOL_FILE concept in the Makefiles to work withDan Gohman2010-04-154-62/+63
| | | | | | | | | | | native linking export files, including running sed to prepend underscores on darwin, and make use of it in libLTO and libEnhancedDisassembly. Remove the leading underscores from library export files so that they work with the new EXPORTED_SYMBOL_FILE support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101399 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify ".bc" detection.Benjamin Kramer2010-04-151-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101365 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unnecessary uses of <iostream>.Daniel Dunbar2010-04-152-5/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101338 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a crash on "lli ex" or any other file whose name is exactly twoChris Lattner2010-04-151-1/+2
| | | | | | | characters long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101336 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't forget cmake!Nick Lewycky2010-04-141-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101234 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove accidentally committed cruft.Nick Lewycky2010-04-141-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101230 91177308-0d34-0410-b5e6-96231b3b80d8
* Bugpoint no longer uses exceptions.Nick Lewycky2010-04-142-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101228 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak CMake build by improving the EnhancedDisassembly makefile aDouglas Gregor2010-04-131-17/+1
| | | | | | | | bit (we're not trying to build a shared library yet) and generating the X86GenEDInfo.inc and ARMGenEDInfo.inc files as necessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101188 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed a nasty layering violation in the edis sourceSean Callanan2010-04-136-68/+36
| | | | | | | | | | | | | | | | code. It used to #include the enhanced disassembly information for the targets it supported straight out of lib/Target/{X86,ARM,...} but now it uses a new interface provided by MCDisassembler, and (so far) implemented by X86 and ARM. Also removed hacky #define-controlled initialization of targets in edis. If clients only want edis to initialize a limited set of targets, they can set --enable-targets on the configure command line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101179 91177308-0d34-0410-b5e6-96231b3b80d8
* Add CMake support for 'edis'.Ted Kremenek2010-04-134-0/+44
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101177 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the disassembler respect the assembler dialect when printing instructions,Chris Lattner2010-04-131-1/+3
| | | | | | | patch by Marius Wachtler! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101160 91177308-0d34-0410-b5e6-96231b3b80d8
* Build system fix to make llvm-mc properly buildSean Callanan2010-04-121-2/+2
| | | | | | | | | after edis. Really, there ought to be some mechanism to ensure that PARALLEL_DIRS get built after DIRS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101095 91177308-0d34-0410-b5e6-96231b3b80d8
* Build system fixes. llvm-mc depends onSean Callanan2010-04-122-14/+11
| | | | | | | | | | | | libEnhancedDisassembly, so we now build the static library in all cases (although the shared library is only built when requested/possible). Also, fixed a bug where edis wasn't properly initializing the targets it uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101072 91177308-0d34-0410-b5e6-96231b3b80d8
* Bug fix: made the enhanced disassembler's linkSean Callanan2010-04-121-1/+1
| | | | | | | flags work properly when EDIS_VERSION is defined git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101063 91177308-0d34-0410-b5e6-96231b3b80d8