Nick Lewycky
37642a4967
Try this. Darwin -> LTO, PIC -> LTO + possibly gold too.
...
llvm-svn: 64299
2009-02-11 08:44:13 +00:00
Devang Patel
d363b52c07
62987 disables LTO build on darwin.
...
Revert 62987 for now. Nicolas please investigate.
llvm-svn: 64285
2009-02-11 02:34:33 +00:00
Nick Lewycky
c54f8330b0
Correct strange whitespace.
...
llvm-svn: 63927
2009-02-06 07:01:00 +00:00
Nick Lewycky
a41f9610fe
Build libLTO on any platform so long as PIC is enabled.
...
llvm-svn: 62987
2009-01-26 03:04:57 +00:00
Bill Wendling
58dc5669b7
Setting BUILD_ARCHIVE to 0 has the same effect as defining it to 1.
...
llvm-svn: 61599
2009-01-03 01:48:26 +00:00
Nick Lewycky
d0b10fefba
Remove warning about declaration does not declare anything. This class was
...
already declared in the other headers.
llvm-svn: 60261
2008-11-30 00:36:34 +00:00
Nick Lewycky
39e055d2a3
Add protected visibility to libLTO.
...
llvm-svn: 60257
2008-11-29 22:49:59 +00:00
Daniel Dunbar
a830cb14f3
Add Binary flag to raw_fd_ostream constructor.
...
Document raw_fd_ostream's treatment of "-".
llvm-svn: 59219
2008-11-13 05:01:07 +00:00
Devang Patel
bc0cbd20b0
On darwin, 32-bit x86 target is i386-apple-darwin...
...
llvm-svn: 58731
2008-11-04 23:13:50 +00:00
Dan Gohman
e5a492f261
Don't silently ignore errors when opening output streams.
...
llvm-svn: 55120
2008-08-21 15:33:45 +00:00
Owen Anderson
2c1d54952b
Use raw_ostream throughout the AsmPrinter.
...
llvm-svn: 55092
2008-08-21 00:14:44 +00:00
Owen Anderson
13498aa150
Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been deprecated for almost a year; it's finally time for them to go away.
...
llvm-svn: 54822
2008-08-15 21:31:02 +00:00
Nick Kledzik
627baa1eea
tentative definitions are default visibility
...
llvm-svn: 53780
2008-07-19 00:58:07 +00:00
Devang Patel
e40c53a846
typo.
...
llvm-svn: 53778
2008-07-18 23:47:27 +00:00
Devang Patel
8927d00a25
Name string length is end position marker - begin position marker.
...
llvm-svn: 53697
2008-07-16 19:49:09 +00:00
Devang Patel
e1c10d31ec
Do not forget global definitions from inline asm code block.
...
llvm-svn: 53693
2008-07-16 18:06:52 +00:00
Devang Patel
da53eaaea8
LinkOnce definitions have default scope, like weak definitions. Otherwise, the linker may not be able to match LinkOnce definition from one module with an exteranl reference from other module.
...
llvm-svn: 53580
2008-07-15 00:00:11 +00:00
Nick Kledzik
59b22302bb
fix dangling pointer and argv off by one errors. Add support for --disable-inlining
...
llvm-svn: 53249
2008-07-08 21:14:10 +00:00
Nick Kledzik
fb163aa055
add _lto_codegen_debug_options so that linker can use it
...
llvm-svn: 53213
2008-07-07 23:24:06 +00:00
Devang Patel
af72f3b02e
Provide a hook to set the code generation debug options to investigate lto failures.
...
llvm-svn: 53119
2008-07-03 22:53:14 +00:00
Devang Patel
41de5d3b17
Rename new lto2 tool as lto.
...
lto2->lto
llvm-svn: 52912
2008-06-30 18:15:01 +00:00
Devang Patel
e4fccc657e
Remove old LTO interface.
...
llvm-svn: 52909
2008-06-30 18:04:55 +00:00
Dale Johannesen
5da4b3ee8b
Add CommonLinkage to lto (treated same as weak AFAICT)
...
and llvm-nm (prints as C).
llvm-svn: 51209
2008-05-16 22:44:18 +00:00
Owen Anderson
7b318804cc
Move MemCpyOpt after GVN.
...
llvm-svn: 50097
2008-04-22 07:12:26 +00:00
Owen Anderson
1b5d08ac04
Add MemCpyOpt to LTO.
...
llvm-svn: 50081
2008-04-22 03:57:36 +00:00
Owen Anderson
1d83396504
Use GVN in LTO instead of GCSE+LoadVN.
...
llvm-svn: 50036
2008-04-21 07:51:07 +00:00
Dale Johannesen
8b316fb8bc
Make EH work with unnamed functions. Reenable running
...
StripSymbols when EH is on.
llvm-svn: 49110
2008-04-02 20:10:52 +00:00
Devang Patel
1e5c60dee9
Begin setting features for target based on target triple string.
...
llvm-svn: 46863
2008-02-07 22:32:50 +00:00
Devang Patel
1e7348f797
Do not set time out, lets assume assembler will do its job in reasonable amount of time.
...
llvm-svn: 46718
2008-02-04 21:16:10 +00:00
Devang Patel
7410c70845
Do not strip symbols when EH is ON.
...
llvm-svn: 46657
2008-02-02 01:32:38 +00:00
Devang Patel
3467628b95
Supply appropriate arch info to darwin assembler.
...
llvm-svn: 46567
2008-01-30 19:19:31 +00:00
Devang Patel
1d270b0e12
Enable exception handling if it is supported.
...
llvm-svn: 46560
2008-01-30 17:43:03 +00:00
Devang Patel
2dda5ca0a4
- Introduces versioning macro LLVM_LTO_VERSION
...
- Communicate symbol visibility
- Communicate code generation model
llvm-svn: 46033
2008-01-15 23:52:34 +00:00
Chris Lattner
309aeb140b
remove attributions from tools.
...
llvm-svn: 45421
2007-12-29 20:44:31 +00:00
Chris Lattner
11718ad357
remove attributions from tools/utils makefiles.
...
llvm-svn: 45414
2007-12-29 20:07:17 +00:00
Devang Patel
38b0dc8695
Revert my previous check-in.
...
llvm-svn: 45249
2007-12-20 01:46:01 +00:00
Devang Patel
61ad7ec0f7
Add lto version check mechanism.
...
llvm-svn: 45238
2007-12-20 00:24:01 +00:00
Gordon Henriksen
a6050b38d2
Switching TargetMachineRegistry to use the new generic Registry.
...
llvm-svn: 43094
2007-10-17 21:28:48 +00:00
Reid Spencer
5918628eba
Fix a sys::Path API error caught by a gcc 4.2 warning.
...
llvm-svn: 39995
2007-07-18 05:27:33 +00:00
Gabor Greif
5f705671e4
Here is the bulk of the sanitizing.
...
Almost all occurrences of "bytecode" in the sources have been eliminated.
llvm-svn: 37913
2007-07-05 17:07:56 +00:00
Chris Lattner
ad70a3024f
switch tools to bitcode from bytecode
...
llvm-svn: 36872
2007-05-06 09:32:02 +00:00
Chris Lattner
d29a084c58
bitcodify
...
llvm-svn: 36838
2007-05-06 04:49:55 +00:00
Devang Patel
16107bb71b
Now LICM is a LoopPass.
...
llvm-svn: 35001
2007-03-07 04:41:30 +00:00
Anton Korobeynikov
87e945c62d
Add possibility to set memory limit for binaries run via libSystem. This
...
is especially needed for bugpoint. This partly implements PR688
llvm-svn: 34349
2007-02-16 19:11:07 +00:00
Bill Wendling
eba47cf231
Avoid assert() in lto. Let linker handle all failures. Use LTO_WRITE_FAILURE
...
instead of LTO_UNKNOWN.
llvm-svn: 34036
2007-02-08 01:48:28 +00:00
Bill Wendling
9345a73364
The new version of how to add passes to emit files. We explicitly call a
...
function to add the file writers between calls to add the passes.
llvm-svn: 34035
2007-02-08 01:41:07 +00:00
Reid Spencer
6af21b3029
For PR411:
...
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.
llvm-svn: 33918
2007-02-05 20:47:22 +00:00
Devang Patel
c6531e1867
Add printVersion(). Linker can use it to print LLVM version number.
...
llvm-svn: 33738
2007-02-01 01:46:06 +00:00
Devang Patel
ed232690d6
Include Makefile.config before testing OS.
...
llvm-svn: 33735
2007-02-01 01:18:57 +00:00
Reid Spencer
19af04a142
For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid
...
confusion with external linkage types.
llvm-svn: 33663
2007-01-30 20:08:39 +00:00
Chris Lattner
aa96731a27
default to emiting an uncompressed .bc file
...
llvm-svn: 33420
2007-01-21 06:34:18 +00:00
Devang Patel
05a840dae2
Modules are consumed when they are merged together by Linker.
...
Clear modules vector so that destructure does not try to
delete these modules again. Patch by Chandler Carruth.
llvm-svn: 33017
2007-01-08 18:42:27 +00:00
Chandler Carruth
c98caae603
Build libLLVMlto on non-Darwin architectures. Resolves PR1055: http://llvm.org/PR1055
...
llvm-svn: 33006
2007-01-08 06:25:29 +00:00
Chris Lattner
9460b57b97
Add C wrappers for the LTO library (PR1081). Patch by Chandler Carruth!
...
llvm-svn: 32966
2007-01-06 23:53:43 +00:00
Chris Lattner
a24004487c
fix typo
...
llvm-svn: 32965
2007-01-06 23:51:31 +00:00
Bill Wendling
a3246c4272
Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are
...
now cerr, cout, and NullStream resp.
llvm-svn: 32298
2006-12-07 01:30:32 +00:00
Bill Wendling
4effa38086
Replacing std::iostreams with llvm iostreams. Some of these changes involve
...
adding a temporary wrapper around the ostream to make it friendly to
functions expecting an LLVM stream. This should be fixed in the future.
llvm-svn: 31990
2006-11-29 00:19:40 +00:00
Devang Patel
ac5109eec8
Save temp. bc files when saveTemps flag is true. Use final output file
...
name supplied by linker to construct temp bc file names.
Remove tabs.
llvm-svn: 31205
2006-10-26 20:46:22 +00:00
Devang Patel
3c1afad503
Supply alignment info to linker through LLVMSymbol.
...
llvm-svn: 31181
2006-10-25 18:10:07 +00:00
Devang Patel
c114a200c5
Instead of hard coding global prefix, use TargetAsmInfo.
...
Add LTO destructor.
llvm-svn: 31168
2006-10-24 18:41:02 +00:00
Devang Patel
b7f1981edd
Fix typo. Add more comment. Avoid extra hash_map search.
...
llvm-svn: 31144
2006-10-23 23:57:53 +00:00
Devang Patel
5ff2903a58
Add removeModule().
...
llvm-svn: 31142
2006-10-23 23:12:26 +00:00
Devang Patel
850e8d4fef
Use FindProgramByName instead of FindExecutable.
...
llvm-svn: 30846
2006-10-09 21:16:05 +00:00
Devang Patel
94499cd79f
Do error checking.
...
llvm-svn: 30842
2006-10-09 20:20:13 +00:00
Devang Patel
51ec4965d5
Use GetTemporaryDirectory. Fix http://llvm.org/bugs/show_bug.cgi?id=894
...
llvm-svn: 30838
2006-10-09 19:04:51 +00:00
Devang Patel
5bc8dcf913
Use abstract class to facilitate dlopen() interface.
...
llvm-svn: 30569
2006-09-21 17:22:55 +00:00
Devang Patel
2d7d441483
Add comment.
...
llvm-svn: 30315
2006-09-14 05:49:10 +00:00
Devang Patel
d2db52f4ee
GlobalValue with InternalLinkage may have operands with ExternalLinkage
...
type. Do not ignore these operands while finding external references.
llvm-svn: 30310
2006-09-14 01:35:13 +00:00
Devang Patel
18046380ee
Using addPassesToEmitWholeFile is not a good idea here.
...
Use FunctionPassManager to do the job.
llvm-svn: 30160
2006-09-07 21:41:11 +00:00
Devang Patel
f8e6dcc443
Add linker into list of LINK_COMPONENTS.
...
llvm-svn: 30159
2006-09-07 21:36:55 +00:00
Devang Patel
46b6b1195a
Use addPassesToEmitWholeFile() instead of addPassesToEmitFile()
...
llvm-svn: 30153
2006-09-07 20:20:56 +00:00
Devang Patel
2e6c5085f8
Add getTargetTriple() that linker can use to query target architecture.
...
llvm-svn: 30132
2006-09-06 20:16:28 +00:00
Devang Patel
bb3ca8e494
Keep track of all modules crated using a name to module map.
...
Add private member function getMoudle().
llvm-svn: 30130
2006-09-06 18:50:26 +00:00
Devang Patel
2d6a17a0fa
Instead of demangling symbol name by hand, use original name, which was
...
used to mangle symbol name, directly.
llvm-svn: 30124
2006-09-06 00:45:52 +00:00
Devang Patel
208eaf86a6
Extract target triplet from optimized module.
...
Untabify.
llvm-svn: 30123
2006-09-06 00:28:22 +00:00
Chris Lattner
2da81d7d76
Use LINK_COMPONENTS to specify *components* to link against instead of
...
using USED_LIBS to specify *libraries* to link against.
llvm-svn: 30090
2006-09-04 05:59:09 +00:00
Devang Patel
16c2934123
If unable to create tmp. file on disk then return LTO_WRITE_FAILURE status.
...
llvm-svn: 29844
2006-08-23 16:59:25 +00:00
Reid Spencer
baf54399e7
For PR797:
...
Remove exceptions from the Path::create*OnDisk methods. Update their users
to handle error messages via arguments and result codes.
llvm-svn: 29840
2006-08-23 00:39:35 +00:00
Reid Spencer
5ed787710d
For PR797:
...
Make sys::Program::ExecuteAndWait not throw exceptions and update any
affected code. It now return -9999 to signal that the program couldn't be
executed. Only one case (in bugpoint) actually examines the result code.
llvm-svn: 29785
2006-08-21 02:04:43 +00:00
Devang Patel
d930310498
untabify
...
llvm-svn: 29686
2006-08-14 23:37:18 +00:00
Devang Patel
c97ee74e6a
Use mangler, instead of addUnderscore(), to get mangled name.
...
Now, LLVMSymbol keeps symbol original name and mangled name.
llvm-svn: 29679
2006-08-14 22:36:16 +00:00
Devang Patel
bb13b66737
Collect references from globals.
...
llvm-svn: 29530
2006-08-04 19:10:26 +00:00
Devang Patel
594ca4ed21
Make it fit into 80-columns.
...
llvm-svn: 29503
2006-08-03 17:26:30 +00:00
Devang Patel
1beac3b680
Fix typo.
...
llvm-svn: 29502
2006-08-03 17:25:36 +00:00
Devang Patel
d7f488e277
Simplify. Use addprefix.
...
llvm-svn: 29501
2006-08-03 17:18:45 +00:00
Devang Patel
5cac3e0195
Remove ARM for the moment since it is a work in progress.
...
llvm-svn: 29495
2006-08-03 16:14:09 +00:00
Devang Patel
9cc4c00c10
Add new tool, lto, to do link time optimization. This tool installs
...
dynamic library that linker can use to optimize llvm byte codes at
link time.
llvm-svn: 29494
2006-08-03 15:44:57 +00:00