summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-extract
Commit message (Collapse)AuthorAgeFilesLines
...
* Move all of the header files which are involved in modelling the LLVM IRChandler Carruth2013-01-021-3/+3
| | | | | | | | | | | | | | | | | | | | | 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. llvm-svn: 171366
* Sort the #include lines for tools/...Chandler Carruth2012-12-041-8/+8
| | | | | | | | 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. llvm-svn: 169252
* One more step towards making doInitialization and doFinalization useful forPedro Artigas2012-11-291-2/+0
| | | | | | | start up and clean up module passes, now that ASAN and TSAN are fixed the tests pass llvm-svn: 168905
* Revert r168635 "Step towards implementation of pass manager with ↵Owen Anderson2012-11-271-0/+2
| | | | | | | | doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model". It appears to have broken at least one buildbot. llvm-svn: 168654
* Step towards implementation of pass manager with doInitialization and ↵Owen Anderson2012-11-261-2/+0
| | | | | | | | doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model Patch by Pedro Artigas, with feedback from by Chandler Carruth. llvm-svn: 168635
* Add doInitialization and doFinalization methods to ModulePass's, to allow ↵Owen Anderson2012-11-151-0/+2
| | | | | | | | them to be re-initialized and reused on multiple Module's. Patch by Pedro Artigas. llvm-svn: 168008
* Add -alias and -ralias options to match what we have for functions andRafael Espindola2012-10-291-0/+47
| | | | | | globals. llvm-svn: 166909
* Move TargetData to DataLayout.Micah Villmow2012-10-081-2/+2
| | | | llvm-svn: 165403
* Remove extraneous ".get()->" which is just "->". No functionality change.Nick Lewycky2011-12-301-5/+5
| | | | llvm-svn: 147379
* LLVMBuild: Remove trailing newline, which irked me.Daniel Dunbar2011-12-121-1/+0
| | | | llvm-svn: 146409
* LLVMBuild: Add description files for the LLVM tools.Daniel Dunbar2011-11-111-0/+23
| | | | llvm-svn: 144417
* build: Tidy up a bunch of tool Makefiles, and simplify where possible using theDaniel Dunbar2011-10-181-4/+3
| | | | | | new all-targets pseudo-component. llvm-svn: 142401
* Enhance llvm::SourceMgr to support diagnostic ranges, the same way clang ↵Chris Lattner2011-10-161-1/+1
| | | | | | | | | | | | | | | does. Enhance the X86 asmparser to produce ranges in the one case that was annoying me, for example: test.s:10:15: error: invalid operand for instruction movl 0(%rax), 0(%edx) ^~~~~~~ It should be straight-forward to enhance filecheck, tblgen, and/or the .ll parser to use ranges where appropriate if someone is interested. llvm-svn: 142106
* Add -rfunc and -rglob options to llvm-extract to support regularChad Rosier2011-09-161-6/+71
| | | | | | expression matching. llvm-svn: 139945
* Land the long talked about "type system rewrite" patch. ThisChris Lattner2011-07-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch brings numerous advantages to LLVM. One way to look at it is through diffstat: 109 files changed, 3005 insertions(+), 5906 deletions(-) Removing almost 3K lines of code is a good thing. Other advantages include: 1. Value::getType() is a simple load that can be CSE'd, not a mutating union-find operation. 2. Types a uniqued and never move once created, defining away PATypeHolder. 3. Structs can be "named" now, and their name is part of the identity that uniques them. This means that the compiler doesn't merge them structurally which makes the IR much less confusing. 4. Now that there is no way to get a cycle in a type graph without a named struct type, "upreferences" go away. 5. Type refinement is completely gone, which should make LTO much MUCH faster in some common cases with C++ code. 6. Types are now generally immutable, so we can use "Type *" instead "const Type *" everywhere. Downsides of this patch are that it removes some functions from the C API, so people using those will have to upgrade to (not yet added) new API. "LLVM 3.0" is the right time to do this. There are still some cleanups pending after this, this patch is large enough as-is. llvm-svn: 134829
* Merge System into Support.Michael J. Spencer2010-11-291-1/+1
| | | | llvm-svn: 120298
* Move tool_output_file into its own file.Dan Gohman2010-10-071-1/+1
| | | | llvm-svn: 115973
* Fix llvm-extract -delete's lazy loading to materialize the functions thatDan Gohman2010-09-231-7/+34
| | | | | | will not be deleted, rather than the ones that will. llvm-svn: 114614
* Revert "CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally."Michael J. Spencer2010-09-131-7/+2
| | | | | | | | | | This reverts commit r113632 Conflicts: cmake/modules/AddLLVM.cmake llvm-svn: 113819
* CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.Michael J. Spencer2010-09-101-2/+7
| | | | llvm-svn: 113632
* Make tool_output_file's raw_ostream instance a member variable insteadDan Gohman2010-09-011-3/+3
| | | | | | | | | | 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. llvm-svn: 112706
* Rewrite ExtractGV, removing a bunch of stuff that didn't fully work,Dan Gohman2010-08-261-5/+1
| | | | | | and was over-complicated, and replacing it with a simple implementation. llvm-svn: 112120
* Convert llvm-extract to use lazy loading. This makes it substantiallyDan Gohman2010-08-251-1/+14
| | | | | | faster on large modules. llvm-svn: 112110
* Use tool_output_file in llvm-extract and llvm-link too.Dan Gohman2010-08-201-7/+5
| | | | llvm-svn: 111604
* Don't register stdout to be deleted on a signal.Dan Gohman2010-08-181-1/+2
| | | | llvm-svn: 111368
* Preserve debug info for only extracted symbols.Devang Patel2010-07-011-0/+1
| | | | llvm-svn: 107417
* Trim #includes.Dan Gohman2010-03-241-1/+0
| | | | llvm-svn: 99416
* Add support to llvm-extract for extracting multiple functions and/orDan Gohman2010-02-101-23/+29
| | | | | | multiple global variables at a time. llvm-svn: 95825
* make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.Chris Lattner2010-01-241-1/+0
| | | | llvm-svn: 94378
* Stop building RTTI information for *most* llvm libraries. NotableChris Lattner2010-01-221-0/+1
| | | | | | | | | | | missing ones are libsupport, libsystem and libvmcore. libvmcore is currently blocked on bugpoint, which uses EH. Once it stops using EH, we can switch it off. This #if 0's out 3 unit tests, because gtest requires RTTI information. Suggestions welcome on how to fix this. llvm-svn: 94164
* De-bork CMake build. llvm-extract depends on asmparserDouglas Gregor2009-09-111-1/+1
| | | | llvm-svn: 81574
* Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn'tDan Gohman2009-09-112-17/+21
| | | | | | | | | | | | | | | working. To support this, add an is_displayed() function to raw_ostream, and generalize Process::StandardOutIsDisplayed and friends in order to support it. Also, call RemoveFileOnSignal before creating a file instead of after, so that the file isn't left behind if the program is interrupted between when the file is created and RemoveFileOnSignal is called. While here, add a -S to llvm-extract and port it to IRReader so that it supports assembly input. llvm-svn: 81568
* Make LLVM command-line tools overwrite their output files without -f.Dan Gohman2009-08-251-6/+6
| | | | | | | | | | | | | | | | 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. llvm-svn: 79990
* simplify output file selection, fixing two FIXMEs about binary outputChris Lattner2009-08-231-19/+10
| | | | llvm-svn: 79808
* Change raw_fd_ostream to take flags as an optional bitmask Chris Lattner2009-08-231-2/+3
| | | | | | | | | | | | | | | | instead of as two bools. Use this to add a F_Append flag which has the obvious behavior. Other unrelated changes conflated into this patch: 1. REmove EH stuff from llvm-dis and llvm-as, the try blocks are dead. 2. Simplify the filename inference code in llvm-as/llvm-dis, because raw_fd_ostream does the right thing with '-'. 3. Switch machine verifier to use raw_ostream instead of ostream (Which is the thing that needed append in the first place). llvm-svn: 79807
* "-" should write to stdout, not stderr.Chris Lattner2009-08-181-3/+3
| | | | llvm-svn: 79310
* Convert more tools code from cerr and cout to errs() and outs().Dan Gohman2009-07-161-4/+4
| | | | llvm-svn: 76070
* To simplify the upcoming context-on-type change, switch all command line ↵Owen Anderson2009-07-151-1/+1
| | | | | | | | tools to using the default global context for now. This will let us to hardwire stuff to the global context in the short term while the API is sorted out. llvm-svn: 75846
* Add a Force option to raw_fd_ostream to specify whether openingDan Gohman2009-07-151-15/+14
| | | | | | | | an existing file is considered an error. Convert several tools to use raw_fd_ostream instead of std::ostream, and to use this new option instead of doing a manual check. llvm-svn: 75801
* Hold the LLVMContext by reference rather than by pointer.Owen Anderson2009-07-011-1/+1
| | | | llvm-svn: 74640
* Add a pointer to the owning LLVMContext to Module. This requires threading ↵Owen Anderson2009-07-011-2/+4
| | | | | | | | | | 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. llvm-svn: 74614
* Use .empty() instead of .size().Dan Gohman2009-04-201-2/+2
| | | | llvm-svn: 69599
* Change various llvm utilities to use PrettyStackTraceProgram inChris Lattner2009-03-061-2/+6
| | | | | | | their main routines. This makes the tools print their argc/argv commands if they crash. llvm-svn: 66248
* disable exports from a bunch more tools, those without plugins.Chris Lattner2009-02-261-0/+3
| | | | llvm-svn: 65558
* Initial support for the CMake build system.Oscar Fuentes2008-09-221-0/+5
| | | | llvm-svn: 56419
* only extract main if the user didn't specify anything to extractAndrew Lenharth2008-03-071-1/+1
| | | | llvm-svn: 48023
* make error message reflect default search function nameAndrew Lenharth2008-03-071-3/+2
| | | | llvm-svn: 48021
* add a pass that can extract all kinds of global values, not just functions. ↵Andrew Lenharth2008-03-071-7/+23
| | | | | | Update llvm-extract to use it and optionally extract a global variable if you want it too llvm-svn: 48015
* remove attributions from tools.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45421
* remove attributions from tools/utils makefiles.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45414
OpenPOWER on IntegriCloud