Anton Korobeynikov
78695035c4
First step of implementing PR1538: move llvm2cpp logic to new 'target'
...
llvm-svn: 50189
2008-04-23 22:29:24 +00:00
Dan Gohman
bd2613d382
Fix a memory leak in llc.
...
llvm-svn: 49793
2008-04-16 15:56:26 +00:00
Chris Lattner
345353d6b4
remove attributions from tools.
...
llvm-svn: 45421
2007-12-29 20:44:31 +00:00
Chris Lattner
8fa21acd25
remove attributions from tools/utils makefiles.
...
llvm-svn: 45414
2007-12-29 20:07:17 +00:00
Gordon Henriksen
ef5d08f4ea
Switching TargetMachineRegistry to use the new generic Registry.
...
llvm-svn: 43094
2007-10-17 21:28:48 +00:00
Dan Gohman
2c6a821fd7
Move the space in overview output for commands out of each of the
...
commands and into the common code.
llvm-svn: 42752
2007-10-08 15:45:12 +00:00
Gabor Greif
e16561cd5d
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
9e9a34c6bf
use the new MemoryBuffer interfaces to simplify error reporting in clients.
...
llvm-svn: 36900
2007-05-06 23:45:49 +00:00
Chris Lattner
f5599efb00
switch tools to bitcode from bytecode
...
llvm-svn: 36872
2007-05-06 09:32:02 +00:00
Chris Lattner
957d090ed1
use an auto_ptr to avoid an explicit delete
...
llvm-svn: 36850
2007-05-06 05:47:36 +00:00
Chris Lattner
6dd290ad3d
add bitcode reading support. Remove EH cruft.
...
llvm-svn: 36839
2007-05-06 04:55:19 +00:00
Reid Spencer
f3200ef9ac
For PR1277:
...
Implement error handling for bytecode parsing.
Patch by Scott Michel.
llvm-svn: 35364
2007-03-26 22:38:01 +00:00
Bill Wendling
fe5ee14bdf
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
Chris Lattner
a0e49f2ead
push bytecode decompressor out through APIs. Now the bytecode reader
...
api's look like this:
ModuleProvider *getBytecodeModuleProvider(
const std::string &Filename, ///< Name of file to be read
BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer,
std::string* ErrMsg = 0, ///< Optional error message holder
BytecodeHandler* H = 0 ///< Optional handler for reader events
);
This is ugly, but allows a client to say:
getBytecodeModuleProvider("foo", 0);
If they do this, there is no dependency on the compression libraries, saving
codesize.
llvm-svn: 34012
2007-02-07 21:41:02 +00:00
Reid Spencer
5301e7c605
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
76d4632d92
make all llvm tools call llvm_shutdown when they exit, static'ify some stuff.
...
With this change, I can now move -stats to print when llvm_shutdown is called.
llvm-svn: 32250
2006-12-06 01:18:01 +00:00
Chris Lattner
28689ff2d0
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
Chris Lattner
12e97307a1
Completely rearchitect the interface between targets and the pass manager.
...
This pass:
1. Splits TargetMachine into TargetMachine (generic targets, can be implemented
any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by
things using libcodegen and other support).
2. Instead of having each target fully populate the passmgr for file or JIT
output, move all this to common code, and give targets hooks they can
implement.
3. Commonalize the target population stuff between file emission and JIT
emission.
4. All (native code) codegen stuff now happens in a FunctionPassManager, which
paves the way for "fast -O0" stuff in the CFE later, and now LLC could
lazily stream .bc files from disk to use less memory.
5. There are now many fewer #includes and the targets don't depend on the
scalar xforms or libanalysis anymore (but codegen does).
6. Changing common code generator pass ordering stuff no longer requires
touching all targets.
7. The JIT now has the option of "-fast" codegen or normal optimized codegen,
which is now orthogonal to the fact that JIT'ing is being done.
llvm-svn: 30081
2006-09-04 04:14:57 +00:00
Chris Lattner
d140393a49
rearrange targets to satisfy dependencies. Too bad we aren't using llvm-config.
...
llvm-svn: 30077
2006-09-04 04:04:41 +00:00
Chris Lattner
2ecd34e869
Remove use of target::getName()
...
llvm-svn: 30069
2006-09-03 18:38:30 +00:00
Nate Begeman
a147cbfa21
Make sure that both non-asm file types are marked as experimental
...
llvm-svn: 29851
2006-08-23 21:29:52 +00:00
Nate Begeman
3cb3921a60
Initial checkin of the Mach-O emitter. There's plenty of fixmes, but it
...
does emit linkable .o files in very simple cases.
llvm-svn: 29850
2006-08-23 21:08:52 +00:00
Chris Lattner
baf6ef94c1
Now that SparcV9 is gone, this logical can be simplified significantly.
...
llvm-svn: 29498
2006-08-03 16:59:17 +00:00
Chris Lattner
5af6a3ffdb
Fix the build on case-sensitive filesystems :(
...
llvm-svn: 29457
2006-08-01 22:34:35 +00:00
Jim Laskey
95eda5b1f3
Introducing plugable register allocators and instruction schedulers.
...
llvm-svn: 29434
2006-08-01 14:21:23 +00:00
Devang Patel
2c15c01c19
Fix MacOSX build failures. (pr841)
...
llvm-svn: 29246
2006-07-21 19:44:55 +00:00
Chris Lattner
55782c6c41
Build more debugger/selectiondag libraries as archives instead of .o files.
...
This works around bugs in some versions of the cygwin linker.
Patch contributed by Anton Korobeynikov.
llvm-svn: 29239
2006-07-21 00:10:47 +00:00
Andrew Lenharth
2b0baddc33
Fix linking on Alpha
...
llvm-svn: 29219
2006-07-20 17:27:58 +00:00
Chris Lattner
05a8970245
Tools require EH for their top-level try blocks.
...
llvm-svn: 29035
2006-07-07 00:46:19 +00:00
Reid Spencer
5113dc5cfe
For PR780:
...
1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o
2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage
3. Make each of the tools with --load options include LinkAllVMCore.h
This should be the last set of changes for this bug and 800.
llvm-svn: 28719
2006-06-07 23:03:13 +00:00
Reid Spencer
7fa8f334bf
Oops, llc needs libTarget.a not Target.o
...
llvm-svn: 28611
2006-06-01 01:42:33 +00:00
Reid Spencer
a647c7ff42
Use archive libraries instead of object files for VMCore, BCReader,
...
BCWriter, and bzip2 libraries. Adjust the various makefiles to accommodate
these changes. This was done to speed up link times.
llvm-svn: 28610
2006-06-01 01:30:27 +00:00
Rafael Espindola
ffdc24b847
added a skeleton of the ARM backend
...
llvm-svn: 28301
2006-05-14 22:18:28 +00:00
Owen Anderson
8c2c1e90c4
Refactor a bunch of includes so that TargetMachine.h doesn't have to include
...
TargetData.h. This should make recompiles a bit faster with my current
TargetData tinkering.
llvm-svn: 28238
2006-05-12 06:33:49 +00:00
Chris Lattner
b6277c510c
Adjust to use proper TargetData copy ctor
...
llvm-svn: 28112
2006-05-04 21:18:40 +00:00
Owen Anderson
20a631fde7
Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.
...
This fixes PR 759.
llvm-svn: 28074
2006-05-03 01:29:57 +00:00
Chris Lattner
53f4499b22
Never link in sparcv9
...
llvm-svn: 27884
2006-04-20 17:07:46 +00:00
Chris Lattner
9232c8c1c5
Add a warning.
...
llvm-svn: 27795
2006-04-18 05:31:20 +00:00
Chris Lattner
811dd8d009
remove always-null IntrinsicLowering argument.
...
llvm-svn: 26971
2006-03-23 05:28:02 +00:00
Chris Lattner
e5002f3e09
remove support for the skeleton target
...
llvm-svn: 26236
2006-02-16 21:10:57 +00:00
Chris Lattner
806024f7a3
SparcV8 -> Sparc
...
llvm-svn: 26008
2006-02-05 08:30:45 +00:00
Chris Lattner
3090f923bd
Remove dead #include
...
llvm-svn: 25520
2006-01-23 00:38:14 +00:00
Chris Lattner
af044cc84b
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
95d46c17c0
remove unused header
...
llvm-svn: 25101
2006-01-05 00:21:37 +00:00
Jim Laskey
219d559824
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
9744c6292b
Adding MachineDebugInfo as a immutable pass.
...
llvm-svn: 25088
2006-01-04 13:42:02 +00:00
Duraid Madina
b8d1012487
don't need this anymore
...
llvm-svn: 25049
2005-12-30 02:50:44 +00:00
Duraid Madina
ce551baee6
delete file portably
...
llvm-svn: 25048
2005-12-30 02:47:21 +00:00
Duraid Madina
f703b207cf
behold my standards-compliant humps!
...
llvm-svn: 25033
2005-12-28 05:56:36 +00:00
Duraid Madina
bcc57c0c16
WAKEY WAKEY
...
llvm-svn: 25032
2005-12-28 05:48:55 +00:00