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
Misha Brukman
324e9e06d8
Add a space before result for readability on the command line.
...
llvm-svn: 13109
2004-04-22 20:02:09 +00:00
Misha Brukman
0784a601c2
Add doxygenified comments to functions.
...
llvm-svn: 13097
2004-04-21 18:36:43 +00:00
Alkis Evlogimenos
f68f40ea42
Include cerrno (gcc-3.4 fix)
...
llvm-svn: 13091
2004-04-21 16:11:40 +00:00
Misha Brukman
ce89b392c6
As per Chris, greatly simplify handling of external functions by using the
...
wrapper idea uniformly: we can use Value::replaceAllUsesWith() instead of
special-casing by class of user.
llvm-svn: 13063
2004-04-19 03:36:47 +00:00
Misha Brukman
8a32c6d91b
* Reorder #includes
...
* Wrap a long line
llvm-svn: 13061
2004-04-19 03:12:35 +00:00
Misha Brukman
8301864215
Finally implement rewriting global initializers which use external functions
...
by creating an internal wrapper function with same signature as the external
function, and use it instead of the "real" function.
The wrapper then calls the external function using the same JIT function
resolution API that has been used before for rewriting instructions, since the
wrapper has an explicit call instruction which we can rewrite.
llvm-svn: 13054
2004-04-19 01:12:01 +00:00
Chris Lattner
bf9ba24155
Move loop optimization passes up, add loop unroller
...
llvm-svn: 13030
2004-04-18 05:21:01 +00:00
Misha Brukman
d061d81571
Don't use invalid HTML in a doxygen comment.
...
llvm-svn: 12962
2004-04-15 15:23:45 +00:00
Chris Lattner
a2b279e89c
Add a couple more IPO's
...
llvm-svn: 12863
2004-04-12 05:38:15 +00:00
Chris Lattner
0a7526470b
finegrainify namespacification
...
llvm-svn: 12862
2004-04-12 05:38:01 +00:00
Chris Lattner
dfbb1d1cfe
Disambiguate symbols after loop extraction so that we can diagnose a code
...
generator bug if multiple loops are extracted from a function.
llvm-svn: 12847
2004-04-11 23:52:35 +00:00
Chris Lattner
5bcb4eb13c
Fix an obvious bug in the refactoring I did a few days ago
...
llvm-svn: 12797
2004-04-09 22:28:33 +00:00
Chris Lattner
d61b13c6e2
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
a182f5bf48
Revert previous patch, I'm a moron :)
...
llvm-svn: 12773
2004-04-08 15:18:03 +00:00
Chris Lattner
177fe8d82f
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
Misha Brukman
827c985aae
Wrap at 80 cols.
...
llvm-svn: 12701
2004-04-06 17:04:30 +00:00
Chris Lattner
e216fc01b7
Minor cleanups
...
llvm-svn: 12700
2004-04-06 16:54:04 +00:00
Chris Lattner
ad733e733e
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
bf791614ed
Merge the code generator miscompilation code into the optimizer miscompilation
...
code. This "instantly" gives us loop-extractor power to assist with the
debugment of our nasty codegen issues. :)
llvm-svn: 12678
2004-04-05 22:58:16 +00:00
Chris Lattner
95053a9f28
Make a method public
...
llvm-svn: 12677
2004-04-05 22:01:48 +00:00
Chris Lattner
9af52d12d9
Minor cleanups, remove some old debug code
...
llvm-svn: 12676
2004-04-05 21:37:55 +00:00
Chris Lattner
0434ba3ed0
Refactor and genericize code
...
llvm-svn: 12675
2004-04-05 21:37:38 +00:00
Chris Lattner
0f1df36bdd
Make full use of the Mangler interface to simplify code
...
llvm-svn: 12671
2004-04-05 19:31:02 +00:00
Chris Lattner
6087034f3a
Minor change
...
llvm-svn: 12655
2004-04-05 01:31:50 +00:00
Chris Lattner
9dcd639e5c
Remove obsolete analyses
...
llvm-svn: 12634
2004-04-02 20:56:33 +00:00
Chris Lattner
64cdd1ef55
Tweak libraries for scev changes
...
llvm-svn: 12625
2004-04-02 20:32:46 +00:00
Chris Lattner
3838243d04
Minor speedup
...
llvm-svn: 12612
2004-04-02 16:28:32 +00:00
Chris Lattner
bcf2623cab
minor formatting change
...
llvm-svn: 12606
2004-04-02 06:32:45 +00:00
Chris Lattner
a413b08580
Fix two pretty serious bugs:
...
1. Each time the loop extractor extracted a loop, we would leak a module.
2. When we extracted a loop, we didn't add the new function to the list of
miscompiled functions. Thus if the bug was in a loop nest and we
extracted it, we could actually *LOSE THE BUG*, which is very bad.
With these patches, bugpoint has successfully found a bug for me in a function
with several nested loops, and cut it down to just one of them. :) :)
llvm-svn: 12605
2004-04-02 06:32:17 +00:00
Chris Lattner
af67dac7f4
Fix a fairly nasty bug that prevented bugpoint from working quite right when
...
hacking on programs with two functions that have the same name.
llvm-svn: 12604
2004-04-02 06:30:33 +00:00
Chris Lattner
73c141ac71
If the program returns a non-zero exit value, don't leave files laying
...
around
llvm-svn: 12603
2004-04-02 05:33:06 +00:00
Chris Lattner
46e18c7f87
Fix wonky header
...
Address PR305: LLVM tools will happily spew bytecode onto your terminal
llvm-svn: 12602
2004-04-02 05:06:57 +00:00
Chris Lattner
b38cc9c026
When loop extraction succeeds, make sure to map the function pointers over
...
to avoid dangling references.
llvm-svn: 12470
2004-03-17 17:42:09 +00:00
Chris Lattner
7e51a502bc
Fix an inverted condition that causes us to think that loop extraction
...
accomplished something when it really did not. This does not fix the bigger problem tho.
llvm-svn: 12469
2004-03-17 17:37:18 +00:00
Chris Lattner
425726d9c2
Fix an iterator invalidation problem in a "buggy" pass
...
llvm-svn: 12468
2004-03-17 17:29:08 +00:00
Brian Gaeke
33e83b64b4
Add a better head-of-file comment.
...
llvm-svn: 12447
2004-03-16 21:47:20 +00:00
Chris Lattner
8726ebd326
Fix thinko, and PR292
...
llvm-svn: 12426
2004-03-16 01:51:54 +00:00
Chris Lattner
bcec7875fb
After reducing a miscompiled program down to the functions which are being
...
miscompiled, try to use the loop extractor to reduce the program down to a
loop nest that is being miscompiled. In practice, the loop extractor appears
to have too many bugs for this to be useful, but hopefully they will be fixed
soon...
llvm-svn: 12398
2004-03-14 22:08:00 +00:00
Chris Lattner
0e6549b8c7
Fix a minor bug in runPassesOn
...
llvm-svn: 12397
2004-03-14 21:37:41 +00:00
Chris Lattner
37117a0f6a
Add a new "AutoDebugCrashes" option
...
llvm-svn: 12396
2004-03-14 21:21:57 +00:00
Chris Lattner
6ce2d03352
Refactor to use a new method
...
llvm-svn: 12395
2004-03-14 21:17:22 +00:00
Chris Lattner
1a5c540c27
Add new method
...
llvm-svn: 12394
2004-03-14 21:17:03 +00:00
Chris Lattner
fd72bed301
Refactor and clean up a bunch more code. No major functionality changes.
...
* Make several methods of bugdriver global functions (ParseInputFile, PrintFunctionList)
* Make PrintFunctionList truncate the output after 10 entries, like the crash debugger
did. This allows code sharing.
* Add a couple of methods to BugDriver that allows us to eliminate some friends
* Improve comments in ExtractFunction.cpp
* Make classes that used to be friends up bugdriver now live in anon namespaces
* Rip a bunch of functionality in the miscompilation tester into a new
TestMergedProgram function for future code sharing.
* Fix a bug in the miscompilation tester induced in my last checkin
llvm-svn: 12393
2004-03-14 20:50:42 +00:00
Chris Lattner
3fe96bc9fd
Add a method to extract a loop
...
llvm-svn: 12391
2004-03-14 20:02:07 +00:00
Chris Lattner
5a5e414bc0
add a fixme
...
llvm-svn: 12388
2004-03-14 19:31:00 +00:00
Chris Lattner
567543f09e
Refactor all of the "splitting a module into two pieces" code to avoid
...
code duplication. Also, don't use ReduceMiscompilingFunctions::TestFuncs
to print out the final message.
llvm-svn: 12387
2004-03-14 19:27:19 +00:00
Chris Lattner
024385ba5f
Turn on argument promotion in gccas. This can give us substantially better
...
code in cases where the file has lots of static functions or anon namespaces.
llvm-svn: 12361
2004-03-13 21:38:35 +00:00
Chris Lattner
0ee372cfe3
Fix the "infinite looping unless you disable adce" bug
...
Also remove an option to disable adce :)
llvm-svn: 12359
2004-03-13 19:35:54 +00:00
Brian Gaeke
afb74be0ce
Revise comment and error message for the Bug 38 situation. Also, make it
...
print out the name of the function being used.
llvm-svn: 12347
2004-03-12 21:37:46 +00:00
Misha Brukman
aed39f9d1e
SparcV8 removed until it grows up becomes a mature backend.
...
llvm-svn: 12288
2004-03-11 18:16:33 +00:00
Chris Lattner
c71ea6e3d4
Annotate functions with edge counts as well, if they are available.
...
llvm-svn: 12233
2004-03-08 20:04:32 +00:00