summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Speed up isBytecodeLPath from 20s to .01s in common cases. This makes -nativeChris Lattner2005-09-231-17/+11
| | | | | | | | not completely painful to use. Once we decide a directory has a bytecode library, we know it this function returns true, no need to scan entire directories. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23405 91177308-0d34-0410-b5e6-96231b3b80d8
* 1. Do not use .c_str() to keep a persistent handle on a temporary string.Chris Lattner2005-09-231-23/+32
| | | | | | | | | 2. Concatenate -lfoo and -L/bar options into a single option instead of passing "-L /bar" (for example) which doesn't work on Darwin. 3. Send -v output to stderr instead of stdout git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23404 91177308-0d34-0410-b5e6-96231b3b80d8
* Add help support for -mcpu and -mattr.Jim Laskey2005-09-021-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23222 91177308-0d34-0410-b5e6-96231b3b80d8
* 1. Use SubtargetFeatures in llc/lli.Jim Laskey2005-09-011-1/+24
| | | | | | | | | 2. Propagate feature "string" to all targets. 3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23192 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow bugpoint+PPC codegen to use fsqrtChris Lattner2005-08-291-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23128 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement PR614:Reid Spencer2005-08-271-0/+2720
| | | | | | | | | | | These changes modify the makefiles so that the output of flex and bison are placed in the SRC directory, not the OBJ directory. It is intended that they be checked in as any other LLVM source so that platforms without convenient access to flex/bison can be compiled. From now on, if you change a .y or .l file you *must* also commit the generated .cpp and .h files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23115 91177308-0d34-0410-b5e6-96231b3b80d8
* If the user interrupts bugpoint, don't extract loopsChris Lattner2005-08-021-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22603 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass -export-dynamic to gcc when compiling with -native and the link isChris Lattner2005-08-023-8/+10
| | | | | | | | | performed with -export-dynamic (aka. -disable-internalize). Patch by Nicholas Riley! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22601 91177308-0d34-0410-b5e6-96231b3b80d8
* When the user hits ctrl-c, bugpoint should attempt to stop reduction asChris Lattner2005-08-025-30/+59
| | | | | | | | quickly as possible and output what it has so far. If they hit it twice, bugpoint is killed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22579 91177308-0d34-0410-b5e6-96231b3b80d8
* Keep tabs and trailing spaces out.Jeff Cohen2005-07-301-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22565 91177308-0d34-0410-b5e6-96231b3b80d8
* Run the verifier pass after all the other passes rather than before them.Reid Spencer2005-07-281-5/+4
| | | | | | | | This catches mistakes in the passes rather than just verifying the bytecode input to llc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22534 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the verifier pass run (in debug mode) in llc. This adds a sanity checkReid Spencer2005-07-281-0/+29
| | | | | | | | to llc when debugging. Also allow other passes to be run from llc. Patch contributed by Michael McCracken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22532 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate all remaining tabs and trailing spaces.Jeff Cohen2005-07-274-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22523 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR576.Chris Lattner2005-07-121-21/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of emitting a JIT stub that looks like this: internal void %l1_main_entry_2E_ce_wrapper(int) { header: %resolver = call sbyte* %getPointerToNamedFunction( sbyte* getelementptr ([20 x sbyte]* %l1_main_entry_2E_ce_name, int 0, int 0) ) ; <sbyte*> [#uses=1] %resolverCast = cast sbyte* %resolver to void (int)* ; <void (int)*> [#uses=1] call void %resolverCast( int %0 ) ret void } Emit one that looks like this: internal void %l1_main_entry_2E_ce_wrapper(int) { Entry: %fpcache = load void (int)** %l1_main_entry_2E_ce.fpcache ; <void (int)*> [#uses=2] %isNull = seteq void (int)* %fpcache, null ; <bool> [#uses=1] br bool %isNull, label %lookupfp, label %usecache usecache: ; preds = %lookupfp, %Entry %fp = phi void (int)* [ %resolverCast, %lookupfp ], [ %fpcache, %Entry ] ; <void (int)*> [#uses=1] call void %fp( int %0 ) ret void lookupfp: ; preds = %Entry %resolver = call sbyte* %getPointerToNamedFunction( sbyte* getelementptr ([20 x sbyte]* %l1_main_entry_2E_ce_name, int 0, int 0) ) ; <sbyte*> [#uses=1] %resolverCast = cast sbyte* %resolver to void (int)* ; <void (int)*> [#uses=2] store void (int)* %resolverCast, void (int)** %l1_main_entry_2E_ce.fpcache br label %usecache } This makes the JIT debugger *MUCH* faster on large programs, as getPointerToNamedFunction takes time linear with the size of the program, and before we would call it every time a function in the text module was called from the safe module (ouch!). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22387 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure we don't error out if an invalid path is used, just simplyReid Spencer2005-07-081-1/+12
| | | | | | | exit from isBytecodeLPath with "false". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22360 91177308-0d34-0410-b5e6-96231b3b80d8
* Final Changes For PR495:Reid Spencer2005-07-089-31/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | This chagne just renames some sys::Path methods to ensure they are not misused. The Path documentation now divides methods into two dimensions: Path/Disk and accessor/mutator. Path accessors and mutators only operate on the Path object itself without making any disk accesses. Disk accessors and mutators will also access or modify the file system. Because of the potentially destructive nature of disk mutators, it was decided that all such methods should end in the work "Disk" to ensure the user recognizes that the change will occur on the file system. This patch makes that change. The method name changes are: makeReadable -> makeReadableOnDisk makeWriteable -> makeWriteableOnDisk makeExecutable -> makeExecutableOnDisk setStatusInfo -> setStatusInfoOnDisk createDirectory -> createDirectoryOnDisk createFile -> createFileOnDisk createTemporaryFile -> createTemporaryFileOnDisk destroy -> eraseFromDisk rename -> renamePathOnDisk These changes pass the Linux Deja Gnu tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22354 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for assembling .s files on mac os x for intelNate Begeman2005-07-081-1/+1
| | | | | | | Add support for running bugpoint on mac os x for intel git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22351 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-0713-61/+58
| | | | | | | | | | | | | | | | | | | | | | Get rid of the difference between file paths and directory paths. The Path class now simply stores a path that can refer to either a file or a directory. This required various changes in the implementation and interface of the class with the corresponding impact to its users. Doxygen comments were also updated to reflect these changes. Interface changes are: appendDirectory -> appendComponent appendFile -> appendComponent elideDirectory -> eraseComponent elideFile -> eraseComponent elideSuffix -> eraseSuffix renameFile -> rename setDirectory -> set setFile -> set Changes pass Dejagnu and llvm-test/SingleSource tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-073-15/+15
| | | | | | | | | | | | Change interface to Path class: readable -> canRead writable -> canWrite executable -> canExecute More (incremental) changes coming to close 495. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22345 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new -filetype argument to llc.Chris Lattner2005-06-251-7/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22287 91177308-0d34-0410-b5e6-96231b3b80d8
* minor cleanups, use copy ctor instead of manually doing it.Chris Lattner2005-06-251-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22285 91177308-0d34-0410-b5e6-96231b3b80d8
* refactor this interfaceChris Lattner2005-06-251-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22284 91177308-0d34-0410-b5e6-96231b3b80d8
* make SparcV8 and V9 seperately configurableAndrew Lenharth2005-06-081-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22204 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that tool names don't have any leading or trailing spaces in them.Reid Spencer2005-05-191-1/+1
| | | | | | | If they do, it screws up the concatenation of the .exe suffix on cygwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22142 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that tool names don't have any leading or trailing spaces in them.Reid Spencer2005-05-191-1/+1
| | | | | | | If they do, it screws up the concatenation of the .exe suffix on cygwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22141 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR514:Reid Spencer2005-05-192-64/+1
| | | | | | | | | * Make sure the "etcdir" gets checked for configuration files so that the installed location for config files is checked. * Remove the st.in file (moved to projects/Stacker/tools/stkrc) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22135 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR514:Reid Spencer2005-05-199-67/+131
| | | | | | | | | | | * language specification files are no longer configured with "configure" * add substitutions for %bindir%, %libdir%, and various llvmgcc related variables needed in the c and cpp spec files. * Implement the stubstituions in the Compiler Driver. * Move st.in to projects/Stacker/tools/stkrc where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22128 91177308-0d34-0410-b5e6-96231b3b80d8
* If loopextract breaks the program provide output so that we can repro theChris Lattner2005-05-081-1/+9
| | | | | | | problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21790 91177308-0d34-0410-b5e6-96231b3b80d8
* Move licm after reassociate, add some cond-propagate passesChris Lattner2005-05-071-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21769 91177308-0d34-0410-b5e6-96231b3b80d8
* * Use consistent spacing for function argumentsMisha Brukman2005-05-051-18/+18
| | | | | | | * Output single-character strings as chars git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21705 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor clean-upsMisha Brukman2005-05-032-17/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21678 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up and correct llvmc configurations for C and C++Misha Brukman2005-05-033-32/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21667 91177308-0d34-0410-b5e6-96231b3b80d8
* std::string(NULL) does not a proper constructor makeMisha Brukman2005-05-031-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21666 91177308-0d34-0410-b5e6-96231b3b80d8
* Omit periods at the end of command-line switch explanations for consistencyMisha Brukman2005-05-031-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21664 91177308-0d34-0410-b5e6-96231b3b80d8
* Add the simplify-libcalls pass.Reid Spencer2005-04-271-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21585 91177308-0d34-0410-b5e6-96231b3b80d8
* extract has been renamed to llvm-extract to avoid conflicting with another toolMisha Brukman2005-04-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21501 91177308-0d34-0410-b5e6-96231b3b80d8
* There are still uses for spaces in Makefiles -- to make text line up together,Misha Brukman2005-04-244-8/+9
| | | | | | | regardless of the tab size/stop settings on the developer side git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21499 91177308-0d34-0410-b5e6-96231b3b80d8
* extract has been renamed to llvm-extract to avoid conflicting with another toolMisha Brukman2005-04-243-114/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21498 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the CBackend actually get included in llc by using USEDLIBS instead ofReid Spencer2005-04-231-2/+4
| | | | | | | | | | | USEDLIB as the variable to which "CBackend" is appended. The surrounding if clause is safe because currently the configure script ensures that the CBackend target is always added to TARGETS_TO_BUILD. By using a non-hard coded construct in the makefile, we gain uniformity and the ability to change the default set of targets by only changing the configure script. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21474 91177308-0d34-0410-b5e6-96231b3b80d8
* Always enable the C backend. This fixes a *vast* number of failures on theChris Lattner2005-04-231-3/+1
| | | | | | | testers last night, as llc was not getting the cbe linked in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21468 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't always build CBackend and Skeleton. Make use of the TARGETS_TO_BUILDReid Spencer2005-04-221-2/+12
| | | | | | | parameter instead which will correctly list the set of targets to be built. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21451 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the --enable-targets= feature of the configure script. The makeReid Spencer2005-04-221-11/+37
| | | | | | | | | | variable TARGETS_TO_BUILD is used to determine which targets in lib/Target are built and which libraries are linked into llc. This effectively implements the feature. One item remains: disabling targets in the dejagnu test suite. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21450 91177308-0d34-0410-b5e6-96231b3b80d8
* Two changes:Reid Spencer2005-04-223-6/+0
| | | | | | | | | | | | | 1. Get rid of TOOLLINKOPTS as it is a hold over from llvm-test and only used to communicate additional libraries to the linker. The *standard* way to do that is with the LIBS variable which this change supports. 2. Allow the TARGETS_TO_BUILD variable to be set from the configuration substitution. This is the result of the --enable-target= parameter to the configure script. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21449 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate tabs and trailing spacesJeff Cohen2005-04-223-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21441 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-2245-426/+426
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-211-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21422 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-212-8/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21416 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-211-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21411 91177308-0d34-0410-b5e6-96231b3b80d8
* #include system headers after all LLVM headersMisha Brukman2005-04-201-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21374 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate trailing spaces at end-of-lineMisha Brukman2005-04-202-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21372 91177308-0d34-0410-b5e6-96231b3b80d8