Commit Graph

1325 Commits

Author SHA1 Message Date
Chris Lattner
334513448f Fix a really annoying bug in bugpoint that made reducing C++ testcases
almost impossible with the new CFE.  It now guarantees that the static
ctor/dtor list is correctly split between the modules.

llvm-svn: 26624
2006-03-08 23:55:38 +00:00
Chris Lattner
010b65bfa0 Fit to 80 columns.
Add support for running static ctor/dtors that aren't handled by __main.
This fixes programs with the JIT and the new CFE, such as HBD.

llvm-svn: 26620
2006-03-08 18:43:36 +00:00
Reid Spencer
9720d6fc61 Make sure command line options are parsed before we try to add the LibPath
(-L options) to TheLinker. Problem noticed by Wink Saville.

llvm-svn: 26571
2006-03-06 06:38:19 +00:00
Andrew Lenharth
89ca36285c For transforms the behave differently if main goes away, add an option to prevent bugpoint from removing main
llvm-svn: 26557
2006-03-05 22:21:36 +00:00
Robert Bocchino
5a5c750102 Implemented -quiet feature for analyze
llvm-svn: 26494
2006-03-03 02:12:04 +00:00
Chris Lattner
2bd9a8623c Turn on loop unswitching tonight
llvm-svn: 26312
2006-02-22 07:33:49 +00:00
Chris Lattner
eb069a779c reorder some libraries
llvm-svn: 26309
2006-02-22 00:59:06 +00:00
Chris Lattner
a13bad3d53 remove support for the skeleton target
llvm-svn: 26236
2006-02-16 21:10:57 +00:00
Chris Lattner
78250fee02 Adjust to new style "generated files in CVS" mechanism for lex output
llvm-svn: 26163
2006-02-14 05:16:35 +00:00
Chris Lattner
5a9a874f44 SparcV8 -> Sparc
llvm-svn: 26008
2006-02-05 08:30:45 +00:00
Andrew Lenharth
1c7b272409 Pass plugins on to children when optimizing.
llvm-svn: 25650
2006-01-26 18:37:21 +00:00
Chris Lattner
28415cda31 Remove dead #include
llvm-svn: 25520
2006-01-23 00:38:14 +00:00
Chris Lattner
685b2eb976 It doesn't make sense to give llc a list of passes on the command line,
LLVM doesn't use it and it can't work anyway.

llvm-svn: 25519
2006-01-23 00:36:05 +00:00
Chris Lattner
c82e99be7e this doesn't work, remove it
llvm-svn: 25518
2006-01-23 00:32:33 +00:00
Chris Lattner
4093868c98 add explicit #includes of iostream
llvm-svn: 25510
2006-01-22 22:53:40 +00:00
Reid Spencer
783084211a For PR521:
With these patches we implement the ability for the Linker library to
keep track of which libraries were actually bytecode files (not archives)
and cause their users to remove such files from the list of libraries to
pass to the native linker.

llvm-svn: 25169
2006-01-10 03:14:40 +00:00
Reid Spencer
ae8ad0d55a Fix line length of a comment.
llvm-svn: 25149
2006-01-08 22:40:10 +00:00
Chris Lattner
0d03087d6d remove unused header
llvm-svn: 25101
2006-01-05 00:21:37 +00:00
Jim Laskey
61138e28ff Applied some recommend changes from sabre. The dominate one beginning "let the
pass manager do it's thing."  Fixes crash when compiling -g files and suppresses
dwarf statements if no debug info is present.

llvm-svn: 25100
2006-01-04 22:28:25 +00:00
Jim Laskey
c8681a0c43 Adding MachineDebugInfo as a immutable pass.
llvm-svn: 25088
2006-01-04 13:42:02 +00:00
Reid Spencer
51f85aa27b Revert removal of std:: prefixes and addtion of "using namespace std;".
This violates the LLVM coding standards.

llvm-svn: 25050
2005-12-30 09:07:29 +00:00
Duraid Madina
5bcf91632a don't need this anymore
llvm-svn: 25049
2005-12-30 02:50:44 +00:00
Duraid Madina
c2dd544342 delete file portably
llvm-svn: 25048
2005-12-30 02:47:21 +00:00
Reid Spencer
18c09dcf35 General cleanup:
1. Don't mix C++ and C standard I/O, convert to C++ iostreams
2. Wrap long lines
3. use the std namespace to simplify/shorten the code

llvm-svn: 25042
2005-12-29 21:13:45 +00:00
Duraid Madina
474f75e205 ditto
llvm-svn: 25038
2005-12-28 06:58:12 +00:00
Duraid Madina
92f1927bff more compliance stufff
llvm-svn: 25037
2005-12-28 06:56:09 +00:00
Duraid Madina
362af3db08 behold my standards-compliant humps!
llvm-svn: 25033
2005-12-28 05:56:36 +00:00
Duraid Madina
446f8cd8d0 WAKEY WAKEY
llvm-svn: 25032
2005-12-28 05:48:55 +00:00
Jeff Cohen
fcce4dc8b6 Get bugpoint building with VC++ again.
llvm-svn: 24977
2005-12-23 05:00:38 +00:00
Reid Spencer
36b05575fe For PR351:
Generally, remove use of fork/exec from bugpoint in favor of the portable
sys::Program::ExecuteAndWait method. This change requires two new options
to bugpoint to tell it that it is running in "child" mode. In this mode,
it reads its input and runs the passes. The result code signals to the
parent instance of bugpoint what happened (success, fail, crash).

This change should make bugpoint usable on Win32 systems.

llvm-svn: 24961
2005-12-22 20:02:55 +00:00
Chris Lattner
06a349fb05 Fix test/Regression/Other/2002-01-31-CallGraph.ll after the recent callgraph
rework.

llvm-svn: 24959
2005-12-22 19:26:06 +00:00
Reid Spencer
bca47d81ca Implement PR679:
* Changed the -rpath option from cl::opt to cl::list
* Changed the interface to GenerateNative to take a std::vector<std::string>
  instead of just a std::string
* Changed GenerateNative to generate multiple -Wl,-rpath, options to be
  passed to gcc.

llvm-svn: 24930
2005-12-22 01:50:56 +00:00
Reid Spencer
338df5077c Implement PR512:
This patch adds a -post-link-opts option to llvm-ld which allows an arbitrary
program to optimize bytecode after linking. The program is passed two file
names. The first is the input (linked bytecode) the second is where it must
place its output (presumably after optimizing). If the output file is bytecode,
it is used as a substitute for the input. This will allow things like poolalloc
to be written as a separate program instead of a loadable module or built into
LLVM.

llvm-svn: 24893
2005-12-21 05:03:23 +00:00
Chris Lattner
9823998a84 rename option for consistency with -mcpu -mattr etc
llvm-svn: 24734
2005-12-16 05:19:55 +00:00
Chris Lattner
06de420b3c rename option
llvm-svn: 24732
2005-12-16 05:19:18 +00:00
Chris Lattner
ad407557f7 provide an option to override the target triple in a module from the commandline.
llvm-svn: 24730
2005-12-16 05:00:21 +00:00
Chris Lattner
073c670431 provide an option to override the target triple in a module from the command
line.

llvm-svn: 24729
2005-12-16 04:59:57 +00:00
Chris Lattner
2c346c9a4b Fix printing of the instructions.
llvm-svn: 24714
2005-12-14 22:01:07 +00:00
Reid Spencer
5b1da8f9d0 Remove -start-group and -end-group no-op options, accidentally committed
in last patch.

llvm-svn: 24710
2005-12-14 19:08:51 +00:00
Reid Spencer
2b33292a67 Adjust the constructor to the Linker class to take an argument that names
the module being constructed. This is used to correctly name the module.
Previously the name of the linker tool was used which produces confusing
output when the module identifier is used in an error message.

llvm-svn: 24699
2005-12-13 20:00:37 +00:00
Andrew Lenharth
ce9b9b83a8 This solves the problem of the CBE renaming symbols that start with . but the assembly side still trying to reference them by their old names. Should be safe untill we hit a language front end that lets you specify such a name.
llvm-svn: 24626
2005-12-06 20:51:30 +00:00
Chris Lattner
460650a331 Revert my previous patch which broke due to lazy streaming of functions
from .bc files.

llvm-svn: 24575
2005-12-02 19:00:22 +00:00
Chris Lattner
40ca7be091 If a module has a main, but it is defined externally, refuse to run it.
Attempting to run it will find lli's main, which isn't the desired effect.

llvm-svn: 24569
2005-12-01 22:48:23 +00:00
Chris Lattner
789cdc4b29 Allow users to specify -Wl,-native* multiple times if they please
llvm-svn: 24392
2005-11-17 16:08:04 +00:00
Chris Lattner
6d1e384d01 Add a new -fast option, which generates code quickly.
llvm-svn: 24234
2005-11-08 02:12:17 +00:00
Chris Lattner
e18362e079 add a hack that fixes:
llvm-gcc main.c -Wl,-native -o a.out -g

This is important because it used by many configure scripts.

John, please pull this onto the 1.6 branch.

llvm-svn: 24163
2005-11-03 07:17:51 +00:00
John Criswell
d6538108e8 Move some constant folding code shared by Analysis and Transform passes
into the LLVMAnalysis library.
This allows LLVMTranform and LLVMTransformUtils to be archives and linked
with LLVMAnalysis.a, which provides any missing definitions.

llvm-svn: 24036
2005-10-27 15:54:34 +00:00
John Criswell
b0f5adf975 1. Remove libraries no longer created from the list of libraries linked into the
SparcV9 JIT.
2. Make LLVMTransformUtils a relinked object file and always link it before
   LLVMAnalysis.a.  These two libraries have circular dependencies on each
   other which creates problem when building the SparcV9 JIT.  This change
   fixes the dependency on all platforms problems with a minimum of fuss.

llvm-svn: 24023
2005-10-26 20:35:13 +00:00
Chris Lattner
4067c1daf1 transforms before analyses
llvm-svn: 23976
2005-10-25 17:10:30 +00:00
Chris Lattner
fc3715f21a Remove a now-unneeded library
llvm-svn: 23942
2005-10-24 02:31:05 +00:00