Chris Lattner
cc42c6a00d
Fix a limitation of SmallPtrSet. Before it would assert if the smallsize
...
was not a power of two. Now it rounds up to the next power of two internally.
llvm-svn: 33580
2007-01-27 07:52:27 +00:00
Chris Lattner
6e11e4fb50
add some comments on the algorithm
...
llvm-svn: 33579
2007-01-27 07:24:51 +00:00
Chris Lattner
22513a4828
Add a new SmallSet ADT specialized for pointers.
...
llvm-svn: 33577
2007-01-27 07:10:46 +00:00
Reid Spencer
a31a19d76c
Add some comments, fix an 80 cols violation.
...
llvm-svn: 33576
2007-01-27 04:42:50 +00:00
Bill Wendling
671eb167eb
Accessor for the TargetELFWriterInfo class object.
...
llvm-svn: 33572
2007-01-27 02:55:04 +00:00
Bill Wendling
94f0477a62
The TargetELFWriterInfo class holds target-specific information for the ELF writer.
...
llvm-svn: 33570
2007-01-27 02:53:50 +00:00
Chris Lattner
a0210a8d2b
simplify insert interface
...
llvm-svn: 33567
2007-01-27 02:13:58 +00:00
Chris Lattner
8e8ec41bea
clean up comment
...
llvm-svn: 33566
2007-01-27 01:14:20 +00:00
Nate Begeman
481b84a66b
Handle multiple functions, properly mangle symbols, and fix support for
...
scattered relocations.
llvm-svn: 33555
2007-01-26 22:39:48 +00:00
Chris Lattner
c7e278045f
fit in 80 cols
...
llvm-svn: 33553
2007-01-26 21:48:40 +00:00
Jim Laskey
fdc04d1ea7
rename files
...
llvm-svn: 33552
2007-01-26 21:38:26 +00:00
Jim Laskey
64f4242072
Change the MachineDebugInfo to MachineModuleInfo to better reflect usage
...
for debugging and exception handling.
llvm-svn: 33550
2007-01-26 21:22:28 +00:00
Jim Laskey
23ed7d2625
Make LABEL a builtin opcode.
...
llvm-svn: 33537
2007-01-26 14:34:52 +00:00
Reid Spencer
ff43a6d80c
For PR761:
...
BCReader no longer has a header that contains the endinanness and
pointer size. It's been replaced by datalayout field.
llvm-svn: 33528
2007-01-26 08:09:01 +00:00
Reid Spencer
bf7f018011
For PR761:
...
Remove the setEndiannes and setPointerSize methods. These are now set
through the setDataLayout method.
llvm-svn: 33526
2007-01-26 08:07:01 +00:00
Reid Spencer
cca21cf060
For PR645:
...
Remove the Function::renameLocalSymbols function as it is no longer
needed.
llvm-svn: 33522
2007-01-26 08:01:30 +00:00
Devang Patel
f1ef346a53
Remove dead code.
...
CallGraphSCCPass does not need to implement runOnModule().
It supports runOnSCC().
llvm-svn: 33516
2007-01-26 01:08:18 +00:00
Devang Patel
bf44036fbf
Inherit CallGraphSCCPass directly from Pass.
...
llvm-svn: 33514
2007-01-26 00:47:38 +00:00
Devang Patel
83f1fff08c
Inherit FunctionPass directly from Pass.
...
llvm-svn: 33513
2007-01-26 00:23:00 +00:00
Devang Patel
a9eae6951d
Inherit BasicBlockPass directly from Pass.
...
llvm-svn: 33511
2007-01-25 23:23:25 +00:00
Devang Patel
274fb2402d
Remove dead code.
...
llvm-svn: 33506
2007-01-25 22:27:00 +00:00
Evan Cheng
b64363a085
Added a MRegisterInfo hook that tells PEI the target is responsible for
...
rounding the stack frame to a multiple of stack alignment.
llvm-svn: 33504
2007-01-25 22:12:41 +00:00
Jim Laskey
0e387f9cf0
Migrate print routines to asm to be shared by exception handling.
...
llvm-svn: 33498
2007-01-25 15:12:02 +00:00
Jim Laskey
a67f14502d
Repair debug frames as a prelude to eh_frames. Switched to using MachineMoves
...
by value so that clean up is less confusing (these vectors tend to be small.)
llvm-svn: 33488
2007-01-24 18:45:13 +00:00
Jim Laskey
dabb50be28
Use asm printer to emit alignment
...
llvm-svn: 33485
2007-01-24 13:12:32 +00:00
Bill Wendling
c0ecd3ff91
Make ivars private and use getters. Have the MachOWriter return "Mach-O
...
Writer" for the pass name.
llvm-svn: 33483
2007-01-24 07:13:56 +00:00
Evan Cheng
bfd7e70770
Renamed getTypeAlignmentShift() to getPreferredTypeAlignmentShift().
...
llvm-svn: 33482
2007-01-24 07:03:39 +00:00
Bill Wendling
5e72af1267
A virtual method to return the TargetMachOWriterInfo object. This returns
...
a real value in derived classes, of course.
llvm-svn: 33477
2007-01-24 03:38:14 +00:00
Bill Wendling
fb0e46a715
Moved target-specific information to the TargetMachOWriterInfo obj.
...
llvm-svn: 33476
2007-01-24 03:37:18 +00:00
Bill Wendling
24e03bd501
New "TargetMachOWriterInfo" class. It holds target-specific information
...
that the MachOWriter needs in order to do its writing stuff 'n things.
llvm-svn: 33475
2007-01-24 03:36:05 +00:00
Devang Patel
cfd7cfeccd
Add CallGraphSCCPass::assignPassManager().
...
This enables CalLGraphPassManager.
llvm-svn: 33466
2007-01-23 21:52:35 +00:00
Anton Korobeynikov
2079992c16
Moved disassembler to libSystem
...
llvm-svn: 33461
2007-01-23 10:26:08 +00:00
Chris Lattner
14958b0a08
fix typo
...
llvm-svn: 33459
2007-01-23 04:59:58 +00:00
Chris Lattner
213c43eaed
make the SmallSet interface more std::set-like
...
llvm-svn: 33458
2007-01-23 01:16:19 +00:00
Chris Lattner
e24cf7736b
add a trivial SmallSet class, which operates on a similar principle to
...
SmallVector.
llvm-svn: 33456
2007-01-23 00:59:15 +00:00
Evan Cheng
d9d93832b0
hasFP() is now a virtual method of MRegisterInfo.
...
llvm-svn: 33455
2007-01-23 00:57:47 +00:00
Evan Cheng
be74967ace
Update comment.
...
llvm-svn: 33450
2007-01-22 23:14:52 +00:00
Chris Lattner
aa96731a27
default to emiting an uncompressed .bc file
...
llvm-svn: 33420
2007-01-21 06:34:18 +00:00
Reid Spencer
e33c18f4d2
For PR970:
...
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!
llvm-svn: 33415
2007-01-21 00:29:26 +00:00
Reid Spencer
c5140714bc
Implement a getTypeSizeInBits method. This helps in transforms that want
...
to ensure the bit size of a type is identical before proceeding.
llvm-svn: 33413
2007-01-20 23:32:04 +00:00
Owen Anderson
4de8fa6334
TargetData assumes (and some regression tests depend on it) that the size of
...
an unspecified datatype in the datalayout is capped by the size of a pointer.
llvm-svn: 33411
2007-01-20 23:07:13 +00:00
Chris Lattner
9df9e3e57b
Teach TargetData to handle 'preferred' alignment for each target, and use
...
these alignment amounts to align scalars when we can. Patch by Scott Michel!
llvm-svn: 33409
2007-01-20 22:35:55 +00:00
Reid Spencer
14b42c0040
For PR1043:
...
This is the final patch for this PR. It implements some minor cleanup
in the use of IntegerType, to wit:
1. Type::getIntegerTypeMask -> IntegerType::getBitMask
2. Type::Int*Ty changed to IntegerType* from Type*
3. ConstantInt::getType() returns IntegerType* now, not Type*
This also fixes PR1120.
Patch by Sheng Zhou.
llvm-svn: 33370
2007-01-19 21:13:56 +00:00
Anton Korobeynikov
944088f221
Adding disassembler interface and external hook to udis86 library.
...
llvm-svn: 33358
2007-01-19 17:25:17 +00:00
Reid Spencer
80bf052680
Provide an isPowerOf2ByteWidth method for the IntegerType class. This will
...
mostly be used by back ends that wish to distinguish between integer types
that fit evenly within a natural integer type and those that don't.
llvm-svn: 33328
2007-01-18 02:59:54 +00:00
Bill Wendling
af4f1b8791
Have the OutputBuffer take the is64Bit and isLittleEndian booleans.
...
llvm-svn: 33316
2007-01-18 01:23:11 +00:00
Chris Lattner
e0c1ba6269
add new JumpTableSpecialLabelPrefix hook to asmprinter for jumptable emission.
...
llvm-svn: 33314
2007-01-18 01:12:56 +00:00
Reid Spencer
1f1443b916
For PR1028:
...
Add the llvm.stacksave and llvm.stackrestore intrinsics that correspond
to the GCC builtins __builtin_stack_save and __builtin_stack_restore. This
allows the CBE to execute these builtins, and fixes:
test/CodeGen/CBackend/2007-01-17-StackSaveNRestore.ll
External/SPEC/CINT2000/176.gcc (CBE)
Patch by Gordon Henriksen.
llvm-svn: 33313
2007-01-17 23:33:20 +00:00
Bill Wendling
9306626c66
Changed to use the OutputBuffer instead of the methods in MachO and ELF
...
writers.
llvm-svn: 33311
2007-01-17 22:22:31 +00:00
Bill Wendling
19aee9b178
Refactored output buffer methods from MachO and ELF writers.
...
llvm-svn: 33310
2007-01-17 22:17:24 +00:00