Reid Spencer
2da81ceb3d
Get rid of warning from flex.
...
llvm-svn: 18779
2004-12-10 21:59:47 +00:00
Chris Lattner
4a03a2d433
Turn on ipsccp by default instead of simple IPCP
...
llvm-svn: 18753
2004-12-10 08:03:43 +00:00
Brian Gaeke
af10b76b6c
Link V8 backend into llc.
...
llvm-svn: 18739
2004-12-10 05:04:13 +00:00
Reid Spencer
359df30f3d
When -link-as-library, add -l options to Module's deplibs
...
llvm-svn: 18617
2004-12-08 05:17:40 +00:00
Reid Spencer
ef96665753
Fix PR139:\
...
When not linking as a library, use LinkItems to retain command line order of \
linking, otherwise use LinkFiles
llvm-svn: 18549
2004-12-05 19:15:29 +00:00
Chris Lattner
0558e23872
Add -strip-debug option
...
remove the temporary -disable-dse option
llvm-svn: 18451
2004-12-03 05:45:58 +00:00
Chris Lattner
99a7c3d26f
Adjust to change in pass name
...
llvm-svn: 18442
2004-12-02 21:27:35 +00:00
Chris Lattner
4913b65616
Recognize --strip-all as a synonym for -s.
...
Add -S and --strip-debug option support.
llvm-svn: 18441
2004-12-02 21:26:10 +00:00
Reid Spencer
295a3bbb18
Implement file replacement correctly even with the f (TruncateNames) flag
...
set. The member name comparison was failing for truncated names. This patch
fixes that. Truncated names are now properly replaced.
llvm-svn: 18423
2004-12-02 09:21:55 +00:00
Reid Spencer
5686dc714d
No longer necessary, moved Makefile.rules
...
llvm-svn: 18337
2004-11-29 07:17:31 +00:00
Reid Spencer
bb9932c96a
Use LLVMLIBS=JIT to get JIT libraries
...
llvm-svn: 18333
2004-11-29 07:17:18 +00:00
Reid Spencer
3ec3fc9870
Make sure the program's symbols can be dlsym'd as well.
...
llvm-svn: 18331
2004-11-29 06:23:19 +00:00
Reid Spencer
da2a9e6b0c
Make the check a little quieter.
...
llvm-svn: 18325
2004-11-29 04:51:58 +00:00
Reid Spencer
d3f2e95e6c
Add LLVMbzip2 library, now required.
...
llvm-svn: 18255
2004-11-25 20:22:06 +00:00
Reid Spencer
cf5ca279ec
Always pass -D_GNU_SOURCE to cc1plus
...
llvm-svn: 18253
2004-11-25 19:38:51 +00:00
Reid Spencer
d7390bbd27
Always pass -D_GNU_SOURCE to cc1
...
llvm-svn: 18252
2004-11-25 19:38:39 +00:00
Reid Spencer
953e80db76
Correct the configuration variable used to find the bin directory.
...
llvm-svn: 18244
2004-11-25 09:36:28 +00:00
Reid Spencer
67386ceacc
Make sure additional C++ suffixes are recognized by llvmc.
...
llvm-svn: 18191
2004-11-24 00:01:57 +00:00
Reid Spencer
cfa51ff82b
* Adjust the options to make them either accept multiple occurrences or be
...
optional so that compatibility with GCC is accomplished.
* Implement the -print-file-name option in an attempt to provide the same
functionality as GCC. Unfortunately, without loading the cpp or c config
files, this option won't help much.
llvm-svn: 18189
2004-11-23 23:47:58 +00:00
Reid Spencer
cd893a9c50
* Don't pass empty arguments to ExecuteAndWait because it can cause the
...
sub-tool to start reading its standard input instead of the specified
input.
* Clean up ouput of path names on error.
* Extend GetPathForLinkageItem to always search the LibraryPaths and thus
make it suitable for an interface function (required by llvmc.cpp).
* Implement support for language-specific default library paths.
llvm-svn: 18188
2004-11-23 23:45:49 +00:00
Reid Spencer
5e1e6b9f82
Configuration data now supports a vector of library paths.
...
Add the GetPathForLinkageItem method to the interface so full paths can
be generated for a given linkage item.
llvm-svn: 18187
2004-11-23 23:40:06 +00:00
Reid Spencer
fe6dd9da55
Add the c and cpp configuration files.
...
llvm-svn: 18186
2004-11-23 23:38:46 +00:00
Reid Spencer
e1ae9d7c00
Removed in favor of configurable (*.in) versions.
...
llvm-svn: 18185
2004-11-23 23:38:07 +00:00
Reid Spencer
d51dfe3946
Make various adjustments to parsing so that the separator character doesn't
...
terminate options or paths, so that SPACE tokens legally separate options
on a command line, and so that the lang.libs paths are parsed properly.
llvm-svn: 18184
2004-11-23 23:37:26 +00:00
Reid Spencer
513587fbe6
SPACE is a legitimate token now, to separate option words.
...
llvm-svn: 18183
2004-11-23 23:35:50 +00:00
Reid Spencer
6a0d9b99df
Handle space, separators, bad substitutions, and library search path better
...
than before.
llvm-svn: 18182
2004-11-23 23:35:16 +00:00
Reid Spencer
c14e53efb8
Configurable language configuration files.
...
llvm-svn: 18181
2004-11-23 23:33:08 +00:00
Reid Spencer
66c2d807a3
Get the -o option right
...
llvm-svn: 18052
2004-11-20 20:45:33 +00:00
Reid Spencer
835060938c
Get the -o option right
...
llvm-svn: 18051
2004-11-20 20:39:33 +00:00
Reid Spencer
27962c7997
Not needed any more.
...
llvm-svn: 18050
2004-11-20 20:27:20 +00:00
Reid Spencer
72f75bc3b7
Content moved to llvm-ld.cpp
...
llvm-svn: 18049
2004-11-20 20:15:08 +00:00
Reid Spencer
0c66f97ae6
Incorporate GenerateCode.cpp. Make static things static.
...
llvm-svn: 18048
2004-11-20 20:02:56 +00:00
Reid Spencer
dac73aa00a
First cut at implementing generic link-time Optimization
...
llvm-svn: 18047
2004-11-20 19:43:28 +00:00
Reid Spencer
0e8c76ed90
The Archive class now has differentiation for BSD4.4 and SVR4 style archive
...
symbol tables. Adjust our usage to compensate.
llvm-svn: 18046
2004-11-20 18:01:22 +00:00
Chris Lattner
e404d724ea
Fix a bug that caused stuff like this:
...
main at ./eh.cpp:1414 -> printf("a\n");
to be printed, instead of this:
main at ./eh.cpp:14
14 -> printf("a\n");
llvm-svn: 18005
2004-11-19 19:45:44 +00:00
Chris Lattner
dad1823703
Fix a bug in the checkin where I adjusted this code to work when
...
LinkModules nukes the second module argument.
llvm-svn: 17986
2004-11-19 07:09:40 +00:00
Chris Lattner
7fd27e2c35
Remove debugging code, unneuter this functionality
...
llvm-svn: 17963
2004-11-18 19:42:50 +00:00
Chris Lattner
8cb483b335
remove debugging code
...
llvm-svn: 17962
2004-11-18 19:40:13 +00:00
Tanya Lattner
21590db8fd
Adding option to llc for ModuloScheduling. By default it is turned off.
...
llvm-svn: 17959
2004-11-18 18:38:01 +00:00
Chris Lattner
7a3767521d
-disable-opt is not -O0, it's okay for it to disable internalize.
...
llvm-svn: 17911
2004-11-17 16:41:19 +00:00
Chris Lattner
05fe0244e1
Even with -disable-opt we should still internalize and strip if requested.
...
llvm-svn: 17903
2004-11-16 18:59:20 +00:00
Reid Spencer
66dc515ed6
Per code review: \
...
* Make static things static \
* Get rid of unused TmpArchive variable \
* Implement symbol table printing \
* Adjust to changes in llvm::Archive interface \
* Make sure we destruct objects even if exceptions occur. \
* Fix a typo in an output string.
llvm-svn: 17878
2004-11-16 06:41:20 +00:00
Reid Spencer
9fc38b1712
Per code review: \
...
* hide the compatibility option \
* Make static things static \
* Use cl::extrahelp instead of cl::MoreHelp (defunct) \
* Use cl::PrintHelpMessage instead of our own printUse function \
* Use a std::set<sys::Path> for the path list because its now required by \
the sys::Path class and also ensues directories are traversed in sorted \
order.\
* Implement symbol table printing locally instead of in libLLVMArchive \
* Adjust to changes in llvm::Archive interface \
* Make sure we destruct objects even if exceptions occur. \
* Fix a typo in an output string.
llvm-svn: 17877
2004-11-16 06:41:09 +00:00
Chris Lattner
d308797cae
Make this code not depend on LinkModules leaving the second argument unmolested.
...
llvm-svn: 17874
2004-11-16 06:31:38 +00:00
Tanya Lattner
8213dae317
This file was originally developed by the LLVM research group so this comment should stay. I also do NOT want my name explicity listed on src files. I am already mentioned in the credits.
...
llvm-svn: 17833
2004-11-15 19:21:49 +00:00
Reid Spencer
4cee8e3365
Linker.h moved to include/llvm.
...
llvm-svn: 17805
2004-11-14 23:25:32 +00:00
Reid Spencer
aede779b1c
bugpoint needs LLVMLinker.a now.
...
llvm-svn: 17804
2004-11-14 23:23:18 +00:00
Reid Spencer
b3eaba688d
Correct call of methods whose names have changed.
...
llvm-svn: 17803
2004-11-14 23:17:41 +00:00
Reid Spencer
36c3a58557
This program needs libLLVMLinker.a now
...
llvm-svn: 17802
2004-11-14 23:12:22 +00:00
Reid Spencer
16c3bb3198
Linker.h has a new home.
...
llvm-svn: 17801
2004-11-14 23:00:08 +00:00
Reid Spencer
b2d0fa0823
Fix usage of changed function prototype
...
llvm-svn: 17798
2004-11-14 22:30:54 +00:00
Reid Spencer
34fae46c87
A tool for adding a symbol table to LLVM Archives
...
llvm-svn: 17797
2004-11-14 22:29:21 +00:00
Reid Spencer
30227fde87
Makefile for llvm-ranlib tool
...
llvm-svn: 17796
2004-11-14 22:28:33 +00:00
Reid Spencer
54a20f2009
*Fix usage of changed function prototype*Use Archive interface to symbol table for archives
...
llvm-svn: 17795
2004-11-14 22:27:46 +00:00
Reid Spencer
c762abe046
This tool needs libLLVMArchive now
...
llvm-svn: 17794
2004-11-14 22:27:00 +00:00
Reid Spencer
0cb8c8c2af
Remove linking declarations (in Linker.h now)
...
llvm-svn: 17793
2004-11-14 22:25:26 +00:00
Reid Spencer
e7814f62b9
We need the libLLVMArchive library now
...
llvm-svn: 17792
2004-11-14 22:23:31 +00:00
Reid Spencer
8d3f9038c1
Moved to lib/Linker (common with gccld)
...
llvm-svn: 17791
2004-11-14 22:22:45 +00:00
Reid Spencer
84a12bfbd0
Total rewrite using Archive library & new functionality
...
llvm-svn: 17790
2004-11-14 22:20:07 +00:00
Reid Spencer
23dcddf47f
This tool needs the libLLVMArchive library now.
...
llvm-svn: 17789
2004-11-14 22:19:21 +00:00
Reid Spencer
5f7d9675d4
Remove linking declarations (in Linker.h now)
...
llvm-svn: 17788
2004-11-14 22:17:49 +00:00
Reid Spencer
5ccfd9aea1
Provide exception handling
...
llvm-svn: 17787
2004-11-14 22:17:03 +00:00
Reid Spencer
3afabd441b
Moved to lib/Linker
...
llvm-svn: 17786
2004-11-14 22:15:31 +00:00
Reid Spencer
22f42243cc
Add the llvm-ranlib tool
...
llvm-svn: 17785
2004-11-14 22:13:59 +00:00
Reid Spencer
abbefecf8e
Make sure llee can deal with compressed bytecode too.
...
llvm-svn: 17652
2004-11-09 20:21:25 +00:00
Misha Brukman
8d5c13c3e3
Output the program name (in this case, gccld) with warning about invalid files
...
llvm-svn: 17638
2004-11-09 04:24:59 +00:00
Misha Brukman
465e7fb8ef
Don't silently ignore invalid files: tell the user!
...
llvm-svn: 17633
2004-11-08 22:03:10 +00:00
Reid Spencer
05d033159d
Add a --disable-compression option to gccas so the default compression of
...
bytecode can be defeated.
llvm-svn: 17626
2004-11-08 17:37:04 +00:00
Misha Brukman
fb279f652e
Use LLVMToolDir instead of ToolDir because the latter is no longer set (?)
...
llvm-svn: 17594
2004-11-07 22:26:43 +00:00
Reid Spencer
505b225e82
Rename the option for defeating compression to be a little more specific.
...
llvm-svn: 17567
2004-11-07 05:50:16 +00:00
Reid Spencer
f0adf68dfa
Enable compression by default.
...
llvm-svn: 17566
2004-11-07 05:43:51 +00:00
Reid Spencer
7b05ef63f1
* Enable bytecode compression by default
...
* Provide a -no-compress option to defeat compression.
llvm-svn: 17565
2004-11-07 05:41:32 +00:00
Reid Spencer
feb3d5097f
Turn on compression by default.
...
Change --compress to --no-compress so compression can be turned off.
llvm-svn: 17564
2004-11-07 05:37:27 +00:00
Reid Spencer
2e49204e0f
Add support for compressed bytecode
...
llvm-svn: 17535
2004-11-06 23:17:23 +00:00
Reid Spencer
0c6a283b2a
Stop propagating method names that violate the coding standard
...
llvm-svn: 17498
2004-11-05 22:15:36 +00:00
Misha Brukman
619a24c4d9
No, really, the library name is `LLVMexecve'
...
llvm-svn: 17366
2004-10-31 17:30:52 +00:00
Reid Spencer
f88808ae43
Internalize variable names to prevent recursive assignment. Cleanup docs.
...
llvm-svn: 17359
2004-10-30 09:19:36 +00:00
Misha Brukman
b56287dfd2
Fix file header comment
...
llvm-svn: 17350
2004-10-29 23:26:09 +00:00
Misha Brukman
8600a7ac84
LLEE execve() wrapper library has changed its name and location
...
llvm-svn: 17339
2004-10-29 18:36:51 +00:00
Brian Gaeke
56dbc4ca15
Fix library names for sparc
...
llvm-svn: 17311
2004-10-28 06:39:10 +00:00
Reid Spencer
f828c812bd
Remove the FORCE token, rename VERSION to VERSION_TOK so it doesn't
...
conflict with configuration variables and #defines.
llvm-svn: 17298
2004-10-28 04:06:15 +00:00
Reid Spencer
aec50b98e0
Implement linking.
...
llvm-svn: 17297
2004-10-28 04:05:06 +00:00
Reid Spencer
04b92192ec
Eliminate the force flag, configuration item, and related support
...
llvm-svn: 17296
2004-10-28 04:04:38 +00:00
Reid Spencer
ffe5f97f17
Pass -f to stkrc to ensure the output file is always written.
...
llvm-svn: 17295
2004-10-28 03:57:49 +00:00
Reid Spencer
1002e454cb
Eliminate the -F option (for forcing output) .. not needed
...
Create GCC compatible -Wx, aliases for the existing -T options.
llvm-svn: 17294
2004-10-28 03:56:16 +00:00
Reid Spencer
e8ee9b2432
Add llvm-ld to the subdirs to be built
...
llvm-svn: 17293
2004-10-28 03:53:02 +00:00
Reid Spencer
548e1c2a03
Convert to new library names.
...
llvm-svn: 17292
2004-10-28 03:50:43 +00:00
Reid Spencer
34bb03c61b
Update for library name change.
...
llvm-svn: 17287
2004-10-28 00:11:43 +00:00
Reid Spencer
57cbe39d1e
Change Library Names Not To Conflict With Others When Installed
...
llvm-svn: 17286
2004-10-27 23:18:45 +00:00
Chris Lattner
3939800123
Improve help output from llvm-db 'info' command. Patch contributed by
...
Michael McCracken!
llvm-svn: 17241
2004-10-26 05:46:17 +00:00
Reid Spencer
aa4887b482
Add EXTRA_DIST for additional files to be distributed.
...
llvm-svn: 17233
2004-10-26 03:12:11 +00:00
Chris Lattner
3fe79addf7
Remove template args that are the same as the default
...
llvm-svn: 17223
2004-10-25 19:09:41 +00:00
Reid Spencer
eebdfe5896
Make clean quieter.
...
llvm-svn: 17191
2004-10-23 19:49:20 +00:00
Reid Spencer
5fd95ce095
We're not doing automake any more
...
llvm-svn: 17168
2004-10-22 21:02:23 +00:00
Reid Spencer
c1c320c335
We won't use automake
...
llvm-svn: 17155
2004-10-22 03:35:04 +00:00
Reid Spencer
6a11a75f31
Initial automake generated Makefile template
...
llvm-svn: 17136
2004-10-18 23:55:41 +00:00
Reid Spencer
1be07bb526
Actually link all the analysis passes and their dependencies.
...
llvm-svn: 17114
2004-10-18 03:32:12 +00:00
Reid Spencer
e5068ed336
Remove extra comma.
...
llvm-svn: 17113
2004-10-18 03:26:21 +00:00
Reid Spencer
2097b94c8b
Actually link in all the analysis passes.
...
llvm-svn: 17112
2004-10-18 03:22:48 +00:00
Chris Lattner
0e4818c99a
Reid added --version to the CommandLine lib. Don't conflict with it.
...
llvm-svn: 17076
2004-10-17 02:49:08 +00:00
Misha Brukman
b889b2ad97
Fix hyphenation and quoting style for great justice
...
llvm-svn: 17024
2004-10-15 23:22:48 +00:00
Misha Brukman
692979c1e2
* We don't use the ENABLE_*_JIT flags in the source base anymore
...
* Convert references to Sparc to SparcV9 to clearly identify CPU type
llvm-svn: 16998
2004-10-14 20:06:36 +00:00
Misha Brukman
7c169be339
Use the shared Makefile.JIT for JIT-enablement
...
llvm-svn: 16992
2004-10-14 19:01:25 +00:00
Misha Brukman
68baa6a7a9
Since several tools and examples want JIT support, factor out the process of
...
adding the right libs for any given architecture's JIT into a single place
llvm-svn: 16989
2004-10-14 18:58:19 +00:00
Misha Brukman
789587f128
Enable the PowerPC JIT by compiling powerpc.o library into lli
...
llvm-svn: 16982
2004-10-14 06:35:11 +00:00
Reid Spencer
ace94df71f
Update to reflect changes in Makefile rules.
...
llvm-svn: 16950
2004-10-13 11:46:52 +00:00
Misha Brukman
dfd7ada4a2
No space allowed between \ and end-of-line
...
llvm-svn: 16940
2004-10-12 19:17:11 +00:00
Misha Brukman
25754a7703
Wrap lines at 80 cols
...
llvm-svn: 16939
2004-10-12 18:35:57 +00:00
Chris Lattner
155cfd237b
Don't miss global optimizations because we run before the inliner
...
llvm-svn: 16913
2004-10-11 04:47:18 +00:00
Reid Spencer
823f302ff9
Initial version of automake Makefile.am file.
...
llvm-svn: 16898
2004-10-10 22:52:14 +00:00
Reid Spencer
681a192eb3
Fix named of a library.
...
llvm-svn: 16896
2004-10-10 22:50:31 +00:00
Reid Spencer
f6d9ceebc6
Initial version of automake Makefile.am file.
...
llvm-svn: 16894
2004-10-10 22:36:40 +00:00
Misha Brukman
70da50f095
Use the SparcV9-marked instr scheduling library
...
llvm-svn: 16851
2004-10-08 18:14:56 +00:00
Chris Lattner
fa3cfd3955
Rename pass
...
llvm-svn: 16801
2004-10-07 04:12:02 +00:00
Chris Lattner
dbf0a56597
Hrm, if there is an error loading a file, try printing a message so the
...
user knows that...
llvm-svn: 16524
2004-09-27 16:41:01 +00:00
Reid Spencer
58ab77db8e
Add some missing #includes
...
llvm-svn: 16517
2004-09-25 16:00:07 +00:00
Reid Spencer
6c0c9424f6
Qualify Path with sys:: namespace so this file compiles.
...
llvm-svn: 16516
2004-09-25 15:59:41 +00:00
Chris Lattner
4f2cf030e8
'Pass' should now not be derived from by clients. Instead, they should derive
...
from ModulePass. Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.
llvm-svn: 16436
2004-09-20 04:48:05 +00:00
Reid Spencer
4bc165e9c1
Fix compilation warning.
...
llvm-svn: 16336
2004-09-14 15:46:13 +00:00
Reid Spencer
b8dcf1cb7c
Update to reflect stkrc's new optimization capabilities.
...
llvm-svn: 16327
2004-09-14 02:00:24 +00:00
Reid Spencer
86343e43dc
Support substitution options for the W, M, and f options.
...
llvm-svn: 16326
2004-09-14 01:59:31 +00:00
Reid Spencer
4de872f623
Support the -WX, -f -M options as pass throughs
...
Change force option from -f to -F
Support the -strip option
Make changes to reflect different interface in sys::Program
llvm-svn: 16325
2004-09-14 01:58:45 +00:00
Reid Spencer
cdbb9d246c
Change banner name to reflect actual program this Makefile is for.
...
llvm-svn: 16311
2004-09-13 21:15:19 +00:00
Reid Spencer
eafdda000c
Get rid of compile warning by having llvmExecve return the result of its
...
call to executeProgram.
llvm-svn: 16306
2004-09-13 15:37:33 +00:00
Reid Spencer
56d4b17288
Initial implementation of llvm-ld: stolen from gccld.
...
llvm-svn: 16305
2004-09-13 01:27:53 +00:00
Misha Brukman
01592c2a53
Add LLEE into compilation, but not for Sparc
...
llvm-svn: 16304
2004-09-13 01:18:30 +00:00
Reid Spencer
b956fc1138
Excise the -L option since llvm-link should not do library searches. It
...
just links bytecode files together.
llvm-svn: 16303
2004-09-12 23:39:42 +00:00
Reid Spencer
1a8e15e356
Excise dependent library linking at Chris' request. llvm-link is intended
...
to provide only the simplest linking of LLVM modules without trying to be
complete. Dependent library linking will be added to gccld or its successor
llvm-svn: 16302
2004-09-12 23:08:29 +00:00
Misha Brukman
c3ba6e2f4b
Squelch compilation warnings on Sparc
...
llvm-svn: 16301
2004-09-12 23:01:24 +00:00
Reid Spencer
fe020a38bc
Implement dependent library processing and search paths for them.
...
llvm-svn: 16287
2004-09-11 04:32:42 +00:00
Misha Brukman
6ea13f679b
Make file comment span the entire line
...
llvm-svn: 16249
2004-09-08 19:48:15 +00:00
Reid Spencer
f68090d67f
Don't re-instantiate the std::string in catch block.
...
llvm-svn: 16159
2004-09-03 22:59:32 +00:00
Reid Spencer
7c16caa336
Changes For Bug 352
...
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Reid Spencer
a50cb6c8b9
Make sure <cassert> is included for platforms that don't include it via
...
other header files.
llvm-svn: 16134
2004-09-01 20:36:15 +00:00
Reid Spencer
47fc279160
Initial commit of a configuration file for compiling C++ programs with
...
the file name pattern *.cpp
llvm-svn: 16117
2004-08-30 06:32:24 +00:00
Reid Spencer
a681845e69
Implement the "setIncludePaths" and "setSymbolDefines" interface methods.
...
Revise token substitution to be a little faster.
Clean up exception throwing, make sure its always a std::string.
llvm-svn: 16116
2004-08-30 06:29:06 +00:00
Reid Spencer
1b389f09b4
Pass lists of -I and -D options through to the Compiler Driver.
...
Handle -g and -Wxxx for GCC compatibility
llvm-svn: 16115
2004-08-30 06:27:32 +00:00
Reid Spencer
9f64b91e27
Need to throw std::string not const char* if we want error messages to be
...
caught.
llvm-svn: 16109
2004-08-30 00:06:52 +00:00
Reid Spencer
a62e5a837f
Add a missing header file
...
llvm-svn: 16099
2004-08-29 20:02:28 +00:00
Reid Spencer
74c3dc6927
Add the LLVMsystem.a library as it is now used for operating system
...
independence of the tool.
llvm-svn: 16092
2004-08-29 19:29:38 +00:00
Reid Spencer
e3263ecaf0
The functions in Signal.h are now in the llvm::sys namespace - adjust
...
llvm-svn: 16091
2004-08-29 19:28:55 +00:00
Reid Spencer
5b43fc9b53
add llvmc
...
llvm-svn: 16090
2004-08-29 19:27:34 +00:00
Reid Spencer
1b5b24f9fb
Convert llvmc to use the lib/System interface instead of directly
...
using Unix operating system calls.
llvm-svn: 16089
2004-08-29 19:26:56 +00:00
Reid Spencer
6275eee949
License file for llvmc.
...
llvm-svn: 16045
2004-08-25 00:41:06 +00:00
Reid Spencer
44bc15064c
Insert declarations for two new functions that support the dependent
...
libraries feature.
llvm-svn: 16043
2004-08-24 22:55:34 +00:00
Reid Spencer
7a0348b163
Run the compilation actions before we attempt linking work.
...
Correctly implement the dependent libraries feature so that linked bytecode
files automatically include any dependent libraries they specify.
llvm-svn: 16042
2004-08-24 22:54:32 +00:00
Reid Spencer
3aac4f7d88
Add the directory specified by LLVM_LIB_SEARCH_PATH to the list of
...
directories to be searched during linking.
llvm-svn: 16041
2004-08-24 22:53:13 +00:00
Reid Spencer
8d86dd6453
Get rid of error messages from CommandLine because -time-passes was
...
defined twice. We make use of the new TimePassesIsEnabled global boolean
value from Pass.h to access the value.
llvm-svn: 16033
2004-08-24 17:54:26 +00:00
Reid Spencer
b26202f10c
Adjustments for changes in the configuration language.
...
llvm-svn: 16026
2004-08-24 14:24:14 +00:00
Reid Spencer
a86672b929
- Unify format of output messages
...
- All errors throw std::string
- Default output file name to a.out (if we're linking)
llvm-svn: 16025
2004-08-24 14:05:30 +00:00
Reid Spencer
5b902eba71
Link with bcreader and vmcore.
...
llvm-svn: 16024
2004-08-24 14:04:07 +00:00
Reid Spencer
a1049043d7
- Implement the %args% substitution
...
- Implement parsing of the .output={bytecode|assembly} item.
- Drop parsing support for translator.optimizes, translator.groks_dash_O,
optimizer.groks_dash_O, translator.output_is_asm, optimizer.output_is_asm
- Add parsing support for translator.output and optimizer.output
- Add optimizer.required parsing support
- Add linker.libs and linker.libpaths parsing support
- Fix error messages to list correct set of tokens expected.
- Rename FileReadable -> FileIsReadable (changed in CompilerDriver.cpp)
llvm-svn: 16023
2004-08-24 14:03:23 +00:00
Reid Spencer
ed9b3c4c20
- Alphabetize the list of token enumerators.
...
- Drop old tokens, insert new tokens
llvm-svn: 16022
2004-08-24 13:59:35 +00:00
Reid Spencer
20db3234bc
- Rename and rearrange for clarity
...
- Drop name tokens not used any more (GROKS_DASH_O)
- Rename OUTPUT_IS_ASM as OUTPUT and allow "bytecode" and "assembly" as
values of it.
- Simplify handleContext (now handleNameContext) arguments and ensure that
it returns OPTION tokens exactly as scanned.
llvm-svn: 16021
2004-08-24 13:58:37 +00:00
Reid Spencer
f62f89b3eb
- Remove unused GetSuffix function
...
- Renamed FileReadable -> FileIsReadable
- Remove support for GROKS_DASH_O; deferr it to %opts% substitution
- Require a -o option except in case of linking where it defaults to a.out
- Fix problem processing *.o and *.bc files.
- Ignore optimization phase if -emit-raw-code
- Correct the assembly generation phase to support -emit-native-code
- Implement dependent library lookup
llvm-svn: 16020
2004-08-24 13:55:17 +00:00
Reid Spencer
6ad2030f7a
Remove unneeded flags.
...
llvm-svn: 16019
2004-08-24 13:49:57 +00:00
Reid Spencer
f222ee6546
Provide support for retaining the version number found in a config file.
...
llvm-svn: 15995
2004-08-22 18:03:25 +00:00
Reid Spencer
3820372162
Add the VERSION token.
...
llvm-svn: 15994
2004-08-22 18:02:41 +00:00
Reid Spencer
a318822db2
Add support for version numbers.
...
Allow CRLF as a line terminator (as well as plain LF)
llvm-svn: 15993
2004-08-22 18:02:13 +00:00
Reid Spencer
ed09afc536
Shorten lines so this file can be used as the documentation example
...
directly. Remove -pre (experimental pass).
llvm-svn: 15992
2004-08-22 18:01:19 +00:00
Reid Spencer
d6dd465326
Correct to change interface of the analyzer.
...
llvm-svn: 15986
2004-08-21 21:00:24 +00:00
Reid Spencer
7f9971f349
Change @ -> % in config files. @name@ might be needed for config files to
...
themselves be configured via autoconf so its not a good substitition syntax
for llvmc. Furthermore % is more llvmish :)
llvm-svn: 15957
2004-08-20 22:53:11 +00:00
Reid Spencer
a17a413cc1
Implement the correct search for configuration files. llvmc will now try
...
the following in this order:
1. -config-dir=/path/to/configs
2. LLVM_CONFIG_DIR=/path/to/configs
3. ~/.llvm/etc
4. $prefix/etc
5. /etc/llvm
llvm-svn: 15950
2004-08-20 09:24:07 +00:00
Reid Spencer
6ad57b2491
Add CONFIG_FILES so the language specific config files can be installed.
...
llvm-svn: 15949
2004-08-20 09:21:51 +00:00
Reid Spencer
fab530daf2
Implement Assembly support.
...
Consolidate platform-specific code into "sys" namespace.
llvm-svn: 15947
2004-08-20 09:14:05 +00:00
Reid Spencer
9251cb2ecd
Actually let it compile after file name changes.
...
llvm-svn: 15931
2004-08-19 21:52:49 +00:00
Reid Spencer
b32e350931
Moved ConfigData -> Configuration
...
llvm-svn: 15927
2004-08-19 21:17:53 +00:00
Reid Spencer
dc20389b5c
Implement many new features for llvmc. This is the first version that will
...
actually execute actions and it is been shown to optimize a Stacker program
llvm-svn: 15912
2004-08-19 04:49:47 +00:00
Reid Spencer
263bbbd2df
Back out dependencies on lib/System/Path.h
...
llvm-svn: 15815
2004-08-16 07:06:38 +00:00
Reid Spencer
efd6e266fa
Fix definitions to match tool's actual capabilities.
...
llvm-svn: 15814
2004-08-16 07:06:13 +00:00
Chris Lattner
26516544a1
Documentation like this doesn't belong here, and now we have the commandguide
...
llvm-svn: 15785
2004-08-15 22:53:20 +00:00
Reid Spencer
f58e8d3d0c
More Functionality:
...
- cleaned up lexical scanner
- added support for "lang.optN" configuration items
- added temporary file support (ala lib/System)
- corrected logic for deciding which phases to run
- consolidated the Action and ActionPattern classes
llvm-svn: 15765
2004-08-15 08:19:46 +00:00
Reid Spencer
82737a1e8b
Initial configuration files (to be installed) for ll (LLVM Assembly) and
...
st (Stacker) source files. These versions for testing/review only.
llvm-svn: 15764
2004-08-15 08:16:12 +00:00
Reid Spencer
9d68ff6ef0
Converted to use flex for tokenizing input so we can use an easier to
...
understand recursive descent parser, we can easily handle more syntax
variety, and we can more easily change the configuration items accepted.
llvm-svn: 15732
2004-08-14 09:37:15 +00:00
Reid Spencer
e37345e78f
Fix header commentary.
...
llvm-svn: 15729
2004-08-13 20:25:54 +00:00
Reid Spencer
cf7c2fe153
Additional functionality. This version handles option parsing and parameter
...
subsitution correctly for at least .ll and .st files. There's still a long
way to go (i.e. this isn't worth of review yet).
llvm-svn: 15728
2004-08-13 20:22:43 +00:00
Reid Spencer
fdda7ace31
First version of a utility internal to llvmc that handles the parsing and
...
construction of configuration data for compiler front ends.
llvm-svn: 15727
2004-08-13 20:21:22 +00:00
Chris Lattner
af32dfa0f4
If the block extractor fails, actually emit the bc file that failed to extract
...
llvm-svn: 15675
2004-08-12 02:36:50 +00:00
Reid Spencer
5532159340
Move CompilerDriver.h here.
...
llvm-svn: 15609
2004-08-10 16:29:18 +00:00
Reid Spencer
e70c43de89
Initial makefile for the LLVM Compiler Driver.
...
llvm-svn: 15608
2004-08-10 16:27:08 +00:00
Reid Spencer
89ff1de384
First "do nothing" version of the LLVM Compiler Driver. This version just
...
processes command line arguments and allows --help to be used.
llvm-svn: 15607
2004-08-10 16:26:01 +00:00
Chris Lattner
c76471842a
while we're at it, make the libraries be on separate lines
...
llvm-svn: 15526
2004-08-05 18:32:57 +00:00
Misha Brukman
eabe770156
Lines need to end with \ to make sure they're actually continued
...
llvm-svn: 15525
2004-08-05 18:31:33 +00:00
Misha Brukman
f7667b1845
* Add PowerPC library to LLC
...
* Fit used libraries on a few lines
llvm-svn: 15524
2004-08-05 18:24:11 +00:00
Brian Gaeke
4c8a2120aa
sparcv9select is history.
...
llvm-svn: 15516
2004-08-05 05:17:19 +00:00
Misha Brukman
eecee636c1
* Convert C++ comments to C
...
* Add UIUC copyright notice headers
llvm-svn: 15503
2004-08-04 21:19:49 +00:00
Misha Brukman
24c7715e93
Shared libraries are usually prepended with `lib'
...
llvm-svn: 15502
2004-08-04 21:19:27 +00:00
Brian Gaeke
6e5427c2b0
sparcv9select is history
...
llvm-svn: 15479
2004-08-04 07:39:21 +00:00
Brian Gaeke
ab93e34da0
libsparcv9select is history
...
llvm-svn: 15478
2004-08-04 07:38:52 +00:00
Chris Lattner
ac44389c83
This pass has proven its metal, remove -disable option.
...
llvm-svn: 15411
2004-08-02 10:10:08 +00:00
Misha Brukman
63b38bd2ed
Fix #includes of i*.h => Instructions.h as per PR403.
...
llvm-svn: 15334
2004-07-29 17:30:56 +00:00
Chris Lattner
aa5b25eae6
Run DSE at link-time, and turn on an IP alias analysis by default in gccld!
...
The -disable-globalsmodref is temporary and will be removed eventually.
llvm-svn: 15268
2004-07-27 08:13:15 +00:00
Chris Lattner
4e0969b500
Finally give bugpoint -timeout support!
...
llvm-svn: 15163
2004-07-24 07:53:26 +00:00
Misha Brukman
6aa3c83f8d
* Convert "\n" -> '\n'
...
* Print out another '\n' after printing out program execution status
* Make sure code wraps at 80 cols
llvm-svn: 15123
2004-07-23 01:30:49 +00:00
Chris Lattner
7ba1be09b3
Remove redundant SCCP pass
...
Add new DSE pass. Add a temporary option to disable it in case we need it
This is going in after the July 22 nightly tester run, so we'll wait until the 23rd to see it
:)
llvm-svn: 15104
2004-07-22 08:34:33 +00:00
Brian Gaeke
902dcf0729
These files don't need to include <iostream> since they include "Support/Debug.h".
...
llvm-svn: 15089
2004-07-21 20:50:33 +00:00
Chris Lattner
421cd083d6
Remove this printer
...
llvm-svn: 14980
2004-07-18 23:43:34 +00:00
Reid Spencer
cb3fb5d4f5
bug 122:
...
- Replace ConstantPointerRef usage with GlobalValue usage
llvm-svn: 14953
2004-07-18 00:44:37 +00:00
Reid Spencer
e5914d8555
bug 122:
...
- Minimize redundant isa<GlobalValue> usage
llvm-svn: 14952
2004-07-18 00:44:14 +00:00
Chris Lattner
f1b8afb3b4
Build skeleton target
...
llvm-svn: 14876
2004-07-16 07:12:46 +00:00
Chris Lattner
9716100a5d
IA64 compat
...
llvm-svn: 14867
2004-07-16 00:08:28 +00:00
Chris Lattner
ab1aedab13
Actually, use an exception to stop verification. This gives us much better
...
error messages because verification stops at the first error.
llvm-svn: 14794
2004-07-13 08:48:04 +00:00
Chris Lattner
2c1bc9e7e2
There is no reason to abort and print a stack trace if there is a verification
...
error. Just print the message like a good little tool.
llvm-svn: 14793
2004-07-13 08:45:41 +00:00
Misha Brukman
b6ee60667b
* Tabs to spaces
...
* Delete extra blank lines
llvm-svn: 14779
2004-07-12 22:58:07 +00:00
Reid Spencer
a9e83604f1
Correct an output typo.
...
llvm-svn: 14766
2004-07-11 23:20:54 +00:00
Chris Lattner
a29ca1b7df
Prune unused #include
...
llvm-svn: 14753
2004-07-11 04:05:32 +00:00
Chris Lattner
6142ca8f4f
Goodbye macro hell, hello nice clean and simple code. This also gives llc
...
the ability to dynamically load and use targets that are not linked into it
statically. e.g.:
llc -load libparisc.so -march=parisc foo.bc -o foo.s
llvm-svn: 14751
2004-07-11 04:03:24 +00:00
Chris Lattner
ec2a1566cc
Add -load option
...
llvm-svn: 14740
2004-07-11 01:08:19 +00:00
Chris Lattner
4b6cdab582
Add a -load option
...
llvm-svn: 14739
2004-07-11 01:06:59 +00:00
Reid Spencer
f0ebb25d2b
Add #include <iostream> since Value.h does not include it any more.
...
llvm-svn: 14623
2004-07-04 12:20:55 +00:00
Brian Gaeke
dcecac198e
Build llvm-bcanalyzer
...
llvm-svn: 14568
2004-07-02 05:59:20 +00:00
Reid Spencer
5780de6219
Name Change: llvm-abcd -> llvm-bcanalyzer
...
llvm-svn: 14555
2004-07-02 03:22:53 +00:00
Reid Spencer
938be23e90
Implement verification feature.
...
Ensure output occurs even in the face of an error.
llvm-svn: 14499
2004-06-29 23:34:27 +00:00
Reid Spencer
002dd98ce0
The analyzer code now lives in the bcreader library. The bcanalyzer lib
...
is no more.
llvm-svn: 14498
2004-06-29 23:33:31 +00:00
Chris Lattner
10247b13c0
Write .bc files to binary ostreams. This shouldn't change anything on unix,
...
but allows us to generate valid code on hosts (like windows) that do newline
translation for text files.
llvm-svn: 14418
2004-06-25 20:54:43 +00:00
Chris Lattner
e67d8400f6
Make sure to link all IPA's into opt, so that it has access to stuff like
...
anders-aa
llvm-svn: 14395
2004-06-25 05:19:17 +00:00
Misha Brukman
8604fde39d
TransformUtils library is no longer needed since Linker.cpp is in VMCore
...
llvm-svn: 14352
2004-06-23 17:36:17 +00:00
Misha Brukman
28ee8f0f30
Linker.h moved to include/llvm/Support
...
llvm-svn: 14351
2004-06-23 17:33:09 +00:00
Reid Spencer
b3a4e0b9bd
Clean up documentation and naming of variables.
...
llvm-svn: 14119
2004-06-10 18:38:44 +00:00
Reid Spencer
1080b373a2
Made detailed output the default and changed -details option to -nodetails.
...
llvm-svn: 14114
2004-06-10 08:24:42 +00:00
Reid Spencer
ddc6fb125e
Clean up the documentation.
...
Simplify the file handling. It now only writes to std::cout.
llvm-svn: 14059
2004-06-08 05:56:58 +00:00
Chris Lattner
bbc373bf8b
Eliminate more traces of the -c option
...
llvm-svn: 14049
2004-06-07 18:10:01 +00:00
Reid Spencer
db5c86d0b1
Commit For New Tool: llvm-abcd (Analysis of ByteCode Dumper). This tool
...
will (eventually) provide statistical analysis of bytecode files as well
as the ability to dump them in a low level format (slot numbers not
resolved). The purpose of this is to aid in the Type!=Value change of
bug 122. With this initial release, llvm-abcd merely dumps out the
bytecode. However, the infrastructure for separating bytecode parsing from
handling the parsing events is in place. The style chosen is similar to
SAX XML parsing where a handler object is called to handlign the parsing
events. This probably isn't useful to anyone but me right now as there is
no analysis yet, and the dumper doesn't work on every bytecode file. It
will probably be useful by the end of this week. Note that there is some
duplication of code from the bytecode reader. This was done to eliminate
errors from being introduced in the reader and to minimize the impact to
other LLVM developers. At some point, the Analyzer and the Reader will be
integrated to use the same infrastructure. Also, sorry for the minor change
to Instruction.h but I just couldn't bring myself to write code that
depends on Instruction internals.
llvm-svn: 14048
2004-06-07 17:53:43 +00:00
Chris Lattner
6662d33f8a
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
Misha Brukman
e5a7239cae
Fix a double negation (in grammar).
...
llvm-svn: 13943
2004-06-02 00:29:52 +00:00
Chris Lattner
85b943dd06
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
fdcb868fef
Refactor a bit of code into a function, no functionality changes.
...
llvm-svn: 13941
2004-06-02 00:10:19 +00:00
Chris Lattner
7f6a0343fc
No really cygwin, we LIKE .exe'ness.
...
llvm-svn: 13939
2004-06-02 00:04:54 +00:00
Chris Lattner
cb043e4ab6
Build the llvm-stub directory
...
llvm-svn: 13938
2004-06-01 23:49:55 +00:00
Chris Lattner
10d7d569db
Initial checkin of a stub executable that can be used by gccld to forward to
...
bytecode files on systems that don't support #!/bin/sh natively (ie, win32).
llvm-svn: 13937
2004-06-01 23:48:45 +00:00
Chris Lattner
1553edc2da
Neuter the -q option. Stop printing the "program modified" message, ever
...
llvm-svn: 13844
2004-05-27 20:32:10 +00:00
Reid Spencer
c8878edc5a
Re-introduce the -q option and make opt always return 0, even if the
...
optimization pasess fail. This is necessary to avoid breaking feature
tests in the tests suite that depend on this behavior. *sigh*
llvm-svn: 13832
2004-05-27 16:28:54 +00:00
Reid Spencer
7873671463
Removed the -q option and the default message written to stderr. The
...
output produces confusing results in TestRunner.sh
llvm-svn: 13828
2004-05-27 08:26:22 +00:00
Chris Lattner
5f1a5bb735
Right, globals aren't values yet..
...
llvm-svn: 13822
2004-05-27 06:43:37 +00:00
Chris Lattner
8082c74e0a
Add a simple pass.
...
llvm-svn: 13820
2004-05-27 06:13:36 +00:00
Chris Lattner
5a4d17bb57
Uhh, that doesn't exist.
...
llvm-svn: 13815
2004-05-27 05:44:22 +00:00
Chris Lattner
278f5152d3
Header file moved
...
llvm-svn: 13813
2004-05-27 05:41:36 +00:00
Reid Spencer
e7e9671cad
Convert to SymbolTable's new iteration interface.
...
llvm-svn: 13754
2004-05-25 08:53:40 +00:00
Chris Lattner
5f49573cf6
Turn the block extractor on by default now that it basically works, eliminating the option.
...
llvm-svn: 13502
2004-05-12 19:02:44 +00:00
Chris Lattner
6c0c313daf
Check to see if all blocks are extractible first.
...
llvm-svn: 13491
2004-05-12 16:08:01 +00:00
Chris Lattner
af24e90c51
Don't leave dead bytecode.output files around if the optimizer/block extractor crashes.
...
llvm-svn: 13477
2004-05-12 02:55:45 +00:00
Chris Lattner
49e4a33c98
Implement the final missing bits for block extractor support. Now bugpoint
...
can extract basic blocks up to the limit of the block extractor implementation.
llvm-svn: 13475
2004-05-12 02:43:24 +00:00
Chris Lattner
a060b10ee5
Implement basic block extraction for the miscompilation debugger. This still needs
...
two things: the FIXME in ExtractBlocks needs to be implemented, and the basic block
extractor itself needs to have enough bugs fixed for this to be more or less
useful.
Until the time that this is generally useful, it is hidden behind the new bugpoint
-enable-block-extraction option. I hope to get the FIXME done tonight.
Also of note, this patch adds a -extract-bbs option to bugpoint which can be used
to debug the block extractor. (hint hint Misha :)
llvm-svn: 13471
2004-05-11 21:54:13 +00:00
Chris Lattner
d7d574db01
A class that is meant to be a base class should have a virtual destructor
...
llvm-svn: 13470
2004-05-11 20:41:07 +00:00
Brian Gaeke
9a7b9d07f0
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
Chris Lattner
6aee736d1b
Use the new commandline flag to allow us to call bugpoint like this:
...
bugpoint ... --tool-args -enable-correct-eh-support -regalloc=linearscan --args -- -foo
So that tool-args option gets the -enable-correct-eh-support -regalloc=linearscan flags instead of bugpoint.
llvm-svn: 13389
2004-05-06 22:05:35 +00:00
Chris Lattner
8737169a6a
Remove a really old comment
...
llvm-svn: 13385
2004-05-06 19:29:58 +00:00
Brian Gaeke
4a278f0b1b
Add --tool-args flag which lets you pass arguments to llc or lli.
...
This is intended to address Bug 40.
llvm-svn: 13358
2004-05-04 21:09:16 +00:00
Chris Lattner
02cea4afd3
Teach bugpoint to be a little bit smarter and avoid repeating work
...
llvm-svn: 13132
2004-04-23 20:36:51 +00:00
Misha Brukman
2ccac826e4
Add command-line option to select whether to isolate or delete function from
...
module. Default is `isolate' as before.
llvm-svn: 13113
2004-04-22 23:07:39 +00:00