Misha Brukman
5b0111dddd
Linker.h moved to include/llvm/Support
...
llvm-svn: 14351
2004-06-23 17:33:09 +00:00
Chris Lattner
1789413bac
Make gccld copy the llvm-stub program to be the execution wrapper for
...
bytecode files on win32 systems. We keep the shell script on unix systems
because it is much more transparent for the users and supports -load
options.
This allows llvmgcc work correctly on win32 systems without the -native or
-native-cbe options.
llvm-svn: 13946
2004-06-02 00:53:57 +00:00
Chris Lattner
515dea0a05
Move some functions out of gccld.cpp to GenerateCode.cpp. This allows us
...
to reduce the inter-file interface in the gccld tool and gets some
uninteresting code out of gccld.cpp.
llvm-svn: 13942
2004-06-02 00:22:24 +00:00
Chris Lattner
28c70404df
Refactor a bit of code into a function, no functionality changes.
...
llvm-svn: 13941
2004-06-02 00:10:19 +00:00
Chris Lattner
6f0bab5b9d
Header file moved
...
llvm-svn: 13813
2004-05-27 05:41:36 +00:00
Brian Gaeke
e99247512f
Allow the user to set the LLVMINTERP environment variable as a workaround, for
...
when they have to run a gccld shell script without having lli in their path.
This is intended to address Bug 289.
Also, emit the traditional syntax ${1+"$@"} for passing all of a shell script's
args to a subprocess. If you have arguments that have spaces in them, $* will
not preserve the quoting (i.e., the quoted string "foo bar" as an argument will
end up as two arguments "foo" "bar" to lli.)
llvm-svn: 13414
2004-05-07 21:47:36 +00:00
Misha Brukman
ab36a84bda
Don't use invalid HTML in a doxygen comment.
...
llvm-svn: 12962
2004-04-15 15:23:45 +00:00
Chris Lattner
0bb60b108d
Add a couple more IPO's
...
llvm-svn: 12863
2004-04-12 05:38:15 +00:00
Chris Lattner
caefe03e39
Disable strict alias analysis in the backend c compiler, as the code we
...
generate is not TBAA safe.
llvm-svn: 12774
2004-04-08 15:18:59 +00:00
Chris Lattner
825c162788
Revert previous patch, I'm a moron :)
...
llvm-svn: 12773
2004-04-08 15:18:03 +00:00
Chris Lattner
5608c6da7e
Right, we break strict aliasing requirements. Make sure to disable strict
...
aliasing in the C compiler.
llvm-svn: 12772
2004-04-08 15:14:43 +00:00
Chris Lattner
1a40aaf3ba
Minor cleanups
...
llvm-svn: 12700
2004-04-06 16:54:04 +00:00
Chris Lattner
3259504cce
Add a new gccld -native-cbe option which causes gccld to generate native code
...
for the application with the C backend instead of the native LLVM code generator
llvm-svn: 12698
2004-04-06 16:43:13 +00:00
Chris Lattner
0179360703
Run the new pass in gccld now that it passes all tests
...
llvm-svn: 12196
2004-03-07 22:12:40 +00:00
Chris Lattner
dc004a7269
We have this snazzy link-time optimizer. How about we start using it? This
...
removes some cruft from 255.vortex, cleaning up after DAE and IPCP, which
do horrible, beautiful, things to vortex.
llvm-svn: 11861
2004-02-26 03:34:30 +00:00
Chris Lattner
24c4dd56b5
Add a new pass, run internalize first
...
llvm-svn: 11839
2004-02-25 21:35:13 +00:00
Alkis Evlogimenos
15ac9b976d
Include Config/config.h for SHLIBEXT.
...
llvm-svn: 11779
2004-02-23 22:42:51 +00:00
Chris Lattner
3c9511b0ac
Make sure to print a stack trace whenever an error signal is delivered to
...
the tool.
llvm-svn: 11633
2004-02-19 20:32:39 +00:00
John Criswell
a43fe7d309
Fixed PR#197. The libcrtend library is removed from the library linking list
...
when creating native executables.
llvm-svn: 10979
2004-01-26 23:51:10 +00:00
John Criswell
3a994220ad
Fixes for PR214. Use the SHLIBEXT variable instead of hardcoding .so into
...
every file.
llvm-svn: 10976
2004-01-26 20:59:41 +00:00
Chris Lattner
9ec6983d9e
Make sure to verify the result before writing out the bytecode file. Not doing
...
so can cause obscure errors downstream.
llvm-svn: 10840
2004-01-14 03:39:46 +00:00
John Criswell
207cf0a20d
Modified the logic so that library objects with main() are only linked in
...
if the program currently has main undefined.
llvm-svn: 10597
2003-12-23 20:27:14 +00:00
John Criswell
8f95f1d2ca
Modified the linker so that it always links in an object from an archive
...
that defines the symbol "main." This is a hack that ensures that programs
that place their main function in a library and then link it in
(i.e. Apache 2.x) get their main function linked in.
There is probably a more correct way to do this, but this works for now.
llvm-svn: 10594
2003-12-23 17:37:06 +00:00
John Criswell
90e72c9cba
Added the -h option for compatibility with other linkers.
...
llvm-svn: 10335
2003-12-09 15:39:11 +00:00
Chris Lattner
21551f0cd4
Fix compatibility with gcc 3.4
...
llvm-svn: 10262
2003-11-29 19:45:47 +00:00
Chris Lattner
d4174e7703
The function resolving pass must be run, even if -disable-opt is specified
...
llvm-svn: 10250
2003-11-28 09:44:03 +00:00
Chris Lattner
e7ad2f6b04
* The return value of LinkLibraries is ignored, so remove it.
...
* Finegrainify namespacification of Linker.cpp
* If linking a library in fails, do not STOP LINKING IN LIBRARIES AND
CONTINUE ANYWAY! Instead, just output the warning, and keep going. :)
llvm-svn: 10249
2003-11-28 07:44:09 +00:00
Misha Brukman
1af6ec9cbf
I'm gonna be picky and say we don't really need that trailing slash "lib/"
...
llvm-svn: 10196
2003-11-24 05:31:57 +00:00
Misha Brukman
407528ec44
Make sure we ONLY add a `-load' switch to the JIT command line if the file is
...
verified as having an ELF header. This fixes PR151.
llvm-svn: 10195
2003-11-24 05:29:42 +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
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
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
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
Chris Lattner
14ab34bf94
Give gccld more guts
...
llvm-svn: 9835
2003-11-09 19:55:09 +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
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
Brian Gaeke
93e3e06b90
lli -q is history. Rebuild your gccld shell scripts, folks!
...
llvm-svn: 9494
2003-10-24 20:00:06 +00:00
Chris Lattner
bc9bb8e370
Turn on the inliner by default at link-time
...
llvm-svn: 9477
2003-10-24 18:09:23 +00:00
Chris Lattner
97d6ee74bb
Turn on the IPCP pass by default. It has passed all of the tests
...
llvm-svn: 9435
2003-10-23 18:25:57 +00:00
Brian Gaeke
bbeaf0ce11
Fix off-by-one error in processing of libraries named on command line.
...
llvm-svn: 9351
2003-10-21 21:07:12 +00:00
John Criswell
a8dfda0513
Added LLVM copyright to Makefiles.
...
llvm-svn: 9314
2003-10-20 22:29:16 +00:00
Chris Lattner
34a5a4c718
fix file header
...
llvm-svn: 9294
2003-10-20 17:58:43 +00:00