1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
Commit Graph

112 Commits

Author SHA1 Message Date
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