Commit Graph

744 Commits

Author SHA1 Message Date
Chris Lattner
3eaa9eec80 Revert the previous patch since it causes lots of miscompilations. :( :(
llvm-svn: 10172
2003-11-22 19:07:47 +00:00
Chris Lattner
a2120947bb Do not crash when dealing with invoke and unwind instructions!
llvm-svn: 10160
2003-11-22 02:10:38 +00:00
Chris Lattner
50d9290183 Use new interfaces
llvm-svn: 10159
2003-11-22 02:10:26 +00:00
Chris Lattner
1b7c6e072b Reorder passes a bit. In particular, it makes sense to run globaldce IMMEDIATELY after funcresolve. Also, run the mem2reg pass _early_ so that IPCP and DAE actually do stuff.
Run instcombine and simplify cfg after this to cleanup the intraprocedural messes we create.

llvm-svn: 10134
2003-11-21 21:44:35 +00:00
Misha Brukman
c147a00407 When writing out the runner script, add -load=<lib> lines to pull in all the
shared objects automagically, so it doesn't have to be done by hand.

llvm-svn: 10114
2003-11-20 19:08:42 +00:00
Misha Brukman
f045db38cd Add ability to search only for native shared object, and expose the
functionality to the rest of gccld.

llvm-svn: 10113
2003-11-20 19:08:06 +00:00
Misha Brukman
19a9eeb585 For consistency, removed space between function name and left paren in function
call, i.e. [ addPass (...) ]  =>  [ addPass(...) ]

llvm-svn: 10105
2003-11-20 06:26:15 +00:00
Misha Brukman
f516afa0c0 * Doxygenified comments, simplifying them and shortening in the process
* Eliminated extra space

llvm-svn: 10104
2003-11-20 06:21:54 +00:00
Brian Gaeke
f67fef08c2 Unbreak the "-" as filename hack.
llvm-svn: 10099
2003-11-19 22:15:00 +00:00
Brian Gaeke
6669b6c511 Also print an error msg. for files we cannot currently deal with.
llvm-svn: 10097
2003-11-19 21:57:30 +00:00
Brian Gaeke
1b0a946551 Fix PR134, by checking FileOpenable() on each input file before analyzing its
type.

llvm-svn: 10096
2003-11-19 21:52:09 +00:00
Brian Gaeke
570e50fc30 Include Support/FileUtilities.h.
Print module identifier in DumpSymbolNamesFromModule().
In DumpSymbolNamesFromFile(), check whether it is an archive or a bytecode
 file, and call the corresponding reader function (ParseBytecodeFile or
 ReadArchiveFile).
Unconditionally set MultipleFiles for archives.
Fixes PR117.

llvm-svn: 10044
2003-11-16 23:34:13 +00:00
Brian Gaeke
2016376753 Add a -verify option to verify the results of gccld passes.
Add a -disable-opt option to turn off gccld optimization passes.

llvm-svn: 10040
2003-11-16 23:07:28 +00:00
Brian Gaeke
c65d049581 When we find a module we want, in an archive, in verbose mode,
print out the module's identifier (which should now contain the name
 of both the archive and the module.)
Wrap some lines at 80 cols.

llvm-svn: 10039
2003-11-16 23:07:13 +00:00
Chris Lattner
b6b3b55e95 As the comments indicate, this is a temporary, repulsive, hack
llvm-svn: 9982
2003-11-13 19:26:54 +00:00
Chris Lattner
463dc76802 Restore the -llvm option
llvm-svn: 9915
2003-11-12 04:59:59 +00:00
Brian Gaeke
d25f86d683 Put all LLVM code into the llvm namespace, as per bug 109.
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Brian Gaeke
dad096c2e1 Move IsArchive, IsBytecode to FileUtilities. Fix up some method comments.
llvm-svn: 9902
2003-11-11 21:54:01 +00:00
Misha Brukman
fd7a4f1337 'Tis quite silly to check for a cached version of the entire executable. That
amounts to checking for a completely-native version. We'll cache on a
function-by-function basis instead (in the JIT's CodeEmitter).

llvm-svn: 9894
2003-11-11 18:38:56 +00:00
Brian Gaeke
aaa29b094d This version of Linker.cpp works a lot better, but it's a little messy. Sorry.
Use FileOpenable() instead of FileExists().
Create IsBytecode() predicate -- like IsArchive(), but for bytecode files.
Use IsBytecode() before trying to load any file as a bytecode file.

llvm-svn: 9893
2003-11-11 18:27:37 +00:00
Misha Brukman
00298d15e4 The caching will not live in LLEE's execve() handler; that's suboptimal.
llvm-svn: 9890
2003-11-11 18:23:09 +00:00
Chris Lattner
14ab34bf94 Give gccld more guts
llvm-svn: 9835
2003-11-09 19:55:09 +00:00
Chris Lattner
1dd7f6c133 Add new command line option
llvm-svn: 9754
2003-11-06 20:29:25 +00:00
Brian Gaeke
4388a20bc3 Give this header file an Emacs mode-line.
llvm-svn: 9749
2003-11-05 22:13:10 +00:00
Brian Gaeke
a38dea74cc Do not assume the first file is a bytecode file. Instead, construct a dummy
Module and link things into that.

Also, fix a typo in an error message.

llvm-svn: 9748
2003-11-05 22:13:00 +00:00
Brian Gaeke
4f8c392983 Shorten and correct some function-header comments.
Make "verbose" output MUCH nicer. Now it tells you when you are linking a
bytecode file, or an archive, and whether it's because you called it by name,
or because you gave it a -l option, and it says "Trying" before it takes
action and prints a message in the past tense afterwards.

Make LinkFiles not skip the first file in Files.

Make LinkFiles warn you if it can't find a file and LLVM_LIB_SEARCH_PATH is
unset.

llvm-svn: 9747
2003-11-05 22:12:52 +00:00
Chris Lattner
62b495bd5c I hate it when bugpoint is all ready to give me a bytecode file, then crashes
in final cleanups.  Then you had to run the whole mess again with
-disable-final-cleanups.

This makes bugpoint run the cleanups in a protected environment so that if
they crash, bugpoint itself doesn't crash.  This makes things much happier,
implements a FIXME, and gets rid of YABPO (yet another bugpoint option).

llvm-svn: 9743
2003-11-05 21:45:35 +00:00
Chris Lattner
c26574d777 Simplify the performFinalCleanups interface
llvm-svn: 9740
2003-11-05 21:15:19 +00:00
Chris Lattner
16a148787e Make -r work, fixing PR 91
llvm-svn: 9724
2003-11-05 06:05:21 +00:00
Chris Lattner
dc9da3878f If linking a library, do not link other libraries, like libc, into it!
This fixes lots of annoying warnings and error messages

llvm-svn: 9677
2003-11-03 17:27:17 +00:00
Chris Lattner
57ab49a333 never print zero executions blocks
llvm-svn: 9626
2003-10-31 00:34:05 +00:00
Chris Lattner
ad78f589c2 Simplify code
llvm-svn: 9625
2003-10-31 00:20:09 +00:00
Chris Lattner
070a7bbb3a Add percentage info
llvm-svn: 9624
2003-10-31 00:13:26 +00:00
Chris Lattner
9f8be3ae6c Hrm, some of my counters are wrapping around 32 bits
llvm-svn: 9623
2003-10-31 00:06:57 +00:00
Chris Lattner
101db596b9 If only have function profile, don't print out "not executed" for all of the blocks :)
llvm-svn: 9622
2003-10-30 23:44:28 +00:00
Chris Lattner
e1e31f80d6 Add the ability to print out llvm code when the -annotated-llvm option is given
llvm-svn: 9621
2003-10-30 23:42:09 +00:00
Chris Lattner
dc337f0f06 Add the ability to synthesize function counts from block count information
llvm-svn: 9595
2003-10-29 21:47:44 +00:00
Chris Lattner
db34628888 Print the top 20 most frequently executed blocks. Fix sort predicate problem
llvm-svn: 9594
2003-10-29 21:41:17 +00:00
Chris Lattner
1815e9fca1 Cleanup output a bit
llvm-svn: 9567
2003-10-28 22:53:49 +00:00
Chris Lattner
a146b08899 Add the ability for users to specify a specific argv[0] to pass into the
program

llvm-svn: 9565
2003-10-28 22:51:44 +00:00
Chris Lattner
dc67d609a2 Print out command lines used to run the programs
llvm-svn: 9562
2003-10-28 22:30:37 +00:00
Brian Gaeke
a6359018f4 Fix extract to use the right TargetData, like Bugpoint does.
llvm-svn: 9561
2003-10-28 22:22:16 +00:00
Chris Lattner
f279ebdc69 Add support for reading block frequencies. Fix bug in attribution of counts
to functions

llvm-svn: 9559
2003-10-28 21:25:23 +00:00
Chris Lattner
f6c2a91b0e Provide an accessor for getting function count information. Print a simple
report

llvm-svn: 9557
2003-10-28 21:08:18 +00:00
Chris Lattner
f3c4c4f96e Read in the bytecode and profile information, but don't do anything with
it yet.

llvm-svn: 9556
2003-10-28 20:13:07 +00:00
Chris Lattner
6522de3349 Build the llvm-prof directory
llvm-svn: 9552
2003-10-28 19:16:49 +00:00
Chris Lattner
8b5c356569 Initial checkin of llvmprof stub
llvm-svn: 9551
2003-10-28 19:16:35 +00:00
Chris Lattner
f7585e10cf Reorder #includes, drop unneeded one
llvm-svn: 9548
2003-10-28 19:08:15 +00:00
Chris Lattner
1844c58727 Do not print out lists with thousands of elements in them, that's kinda silly
llvm-svn: 9523
2003-10-27 04:44:59 +00:00
Brian Gaeke
a53265c402 TraceMode, as you may have heard, is history.
ExecutionEngine::create no longer takes a TraceMode argument.

llvm-svn: 9495
2003-10-24 20:00:17 +00:00