Commit Graph

31724 Commits

Author SHA1 Message Date
Reid Spencer
1da3a4fca3 Test case for PR1093 for llvm.va_* intrinsics upgrade.
llvm-svn: 33162
2007-01-13 00:00:43 +00:00
Jim Laskey
3dd792294f virtual not needed.
llvm-svn: 33161
2007-01-12 23:39:50 +00:00
Reid Spencer
73497b26cd Remove this file. It was inadvertently added because I could not find
TargetLowering.cpp in CodeGen/SelectionDAG (location makes no sense to me)

llvm-svn: 33160
2007-01-12 23:32:11 +00:00
Reid Spencer
a8a0f2cf68 Compensate for loss of DerivedTypes.h in TargetLowering.h
llvm-svn: 33159
2007-01-12 23:31:12 +00:00
Reid Spencer
ddf1421b8e Move a function out of line.
llvm-svn: 33158
2007-01-12 23:30:31 +00:00
Chris Lattner
5699b8e3d0 remove over-general code.
llvm-svn: 33157
2007-01-12 23:28:32 +00:00
Chris Lattner
90c6e6835d remove unneeded special case for bool
llvm-svn: 33156
2007-01-12 23:26:17 +00:00
Chris Lattner
65258e9ef3 Eliminate a log(n) lookup
llvm-svn: 33155
2007-01-12 23:23:08 +00:00
Reid Spencer
015b432b54 Adjust #includes to compensate for lost of DerivedTypes.h in
TargetLowering.h

llvm-svn: 33154
2007-01-12 23:22:14 +00:00
Reid Spencer
6434db7897 Don't #include DerivedTypes.h in this header. Make adjustments to
compensate. Move a function out of line to TargetLowering.cpp

llvm-svn: 33153
2007-01-12 23:21:42 +00:00
Reid Spencer
44e3d4ec40 Add a new home for TargetLowering member functions.
llvm-svn: 33152
2007-01-12 23:18:18 +00:00
Chris Lattner
afdee2062c remove obsolete fixme
llvm-svn: 33151
2007-01-12 22:52:50 +00:00
Chris Lattner
f5e5236b57 simplify some code
llvm-svn: 33150
2007-01-12 22:51:20 +00:00
Evan Cheng
61a4be88b4 Minor fix.
llvm-svn: 33149
2007-01-12 22:51:10 +00:00
Evan Cheng
12c063c405 - Move RTLIB::Libcall enum to a separate file.
- Code clean up.

llvm-svn: 33148
2007-01-12 22:49:32 +00:00
Chris Lattner
3b6058c278 Remove over-general comparisons
llvm-svn: 33147
2007-01-12 22:49:11 +00:00
Jim Laskey
f047882b15 Allow isAllOnesValue testing on packed constants
llvm-svn: 33146
2007-01-12 22:39:14 +00:00
Evan Cheng
01503121c1 Silence a bogus compiler warning.
llvm-svn: 33145
2007-01-12 22:30:07 +00:00
Chris Lattner
7c41c19c02 inline isIntegral to make this method look like classof for all other
derived types

llvm-svn: 33144
2007-01-12 22:11:53 +00:00
Chris Lattner
234fa71793 update this to work with recent asmprinter change
llvm-svn: 33143
2007-01-12 21:16:56 +00:00
Lauro Ramos Venancio
901d9e65f6 Don't add or sub zero to sp.
llvm-svn: 33142
2007-01-12 20:52:27 +00:00
Lauro Ramos Venancio
c4235e5521 Build constants using instructions mov/orr or mvn/eor.
llvm-svn: 33141
2007-01-12 20:35:49 +00:00
Reid Spencer
4d06a85487 Regenerate.
llvm-svn: 33140
2007-01-12 20:10:51 +00:00
Reid Spencer
2dd0c0b27f Remove support for upgrading NOT. The llvm-upgrade lexer didn't recognize
it either. NOT is just plain illegal now.

llvm-svn: 33139
2007-01-12 20:09:48 +00:00
Devang Patel
f85793d171 s/addPassToManager/add/g
llvm-svn: 33138
2007-01-12 20:07:16 +00:00
Anton Korobeynikov
8ea9d3a687 Regenerate
llvm-svn: 33137
2007-01-12 19:22:51 +00:00
Anton Korobeynikov
a0554d90e8 * PIC codegen for X86/Linux has been implemented
* PIC-aware internal structures in X86 Codegen have been refactored
* Visibility (default/weak) has been added
* Docs fixes (external weak linkage, visibility, formatting)

llvm-svn: 33136
2007-01-12 19:20:47 +00:00
Devang Patel
e759955c66 Move PMTopLevelManager, PMDataManager and FPPassManger classes into
new PassManagers.h header.

This opens door for implementing CGPassManager in IPA library.

llvm-svn: 33135
2007-01-12 18:52:44 +00:00
Chris Lattner
344da52c4c Remove a bunch of duplicated code. Among other things, this fixes
constant folding of signed comparisons of bool.

llvm-svn: 33134
2007-01-12 18:42:52 +00:00
Chris Lattner
d99bff4ef6 unbreak i1 constants with the cpp writer, eliminate special case.
llvm-svn: 33133
2007-01-12 18:37:29 +00:00
Chris Lattner
e3721e3002 eliminate redundant check
llvm-svn: 33132
2007-01-12 18:35:11 +00:00
Chris Lattner
67598a8ccc regenerate
llvm-svn: 33131
2007-01-12 18:33:30 +00:00
Chris Lattner
f2a4af8da3 This production is dead, the lexer can never return 'NOT'
llvm-svn: 33130
2007-01-12 18:32:39 +00:00
Chris Lattner
15649084e9 Branch conditions must be i1
llvm-svn: 33129
2007-01-12 18:30:11 +00:00
Chris Lattner
19cfb04d04 don't discriminate against bool
llvm-svn: 33128
2007-01-12 18:28:58 +00:00
Chris Lattner
3b641bfba5 remove unneeded special cases
llvm-svn: 33127
2007-01-12 18:23:49 +00:00
Jeff Cohen
c5e5b27573 '==' is not a legal test operator on BSD. Use '='.
llvm-svn: 33126
2007-01-12 18:22:38 +00:00
Chris Lattner
0fd2b9f5c0 GEP operands can't be bools
llvm-svn: 33125
2007-01-12 18:20:48 +00:00
Chris Lattner
7f6fac4bb5 Simplify code
llvm-svn: 33123
2007-01-12 18:15:09 +00:00
Reid Spencer
2759b18e5d Make a couple organizational changes. Type no longer derives from Value
(hasn't for ages) so move it up one level in the table of contents.
Type needs to be understood before Value so move it before Value. Make
the descriptions of types stand out a little more.  Add references to the
doxygen for the Type class.

llvm-svn: 33122
2007-01-12 17:26:25 +00:00
Devang Patel
0f08004ac0 Remove dead code.
llvm-svn: 33121
2007-01-12 17:23:48 +00:00
Reid Spencer
b9e5d10cf7 Update documentation for arbitrary precision integers:
1. int -> i32
2. Describe the IntegerType class.
3. Correct the description of Type and its primitive type subclasses.
4. Document OpaqueType and PackedType a little better.

llvm-svn: 33120
2007-01-12 17:11:23 +00:00
Reid Spencer
07c9c68825 Fix a typo.
llvm-svn: 33118
2007-01-12 15:46:11 +00:00
Reid Spencer
b20ef92e42 Regenerate.
llvm-svn: 33117
2007-01-12 07:28:27 +00:00
Reid Spencer
0879a87a0d Integer type names need 1 or more digits, not zero or more.
llvm-svn: 33116
2007-01-12 07:27:59 +00:00
Reid Spencer
c87215900d Always write 1 bit integers as i1 not "bool".
llvm-svn: 33115
2007-01-12 07:25:20 +00:00
Evan Cheng
a557a0028d Comment.
llvm-svn: 33114
2007-01-12 07:25:16 +00:00
Reid Spencer
7a9c62baa6 For PR1064:
Implement the arbitrary bit-width integer feature. The feature allows
integers of any bitwidth (up to 64) to be defined instead of just 1, 8,
16, 32, and 64 bit integers.

This change does several things:
1. Introduces a new Derived Type, IntegerType, to represent the number of
   bits in an integer. The Type classes SubclassData field is used to
   store the number of bits. This allows 2^23 bits in an integer type.
2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and
   64-bit integers. These are replaced with just IntegerType which is not
   a primitive any more.
3. Adjust the rest of LLVM to account for this change.

Note that while this incremental change lays the foundation for arbitrary
bit-width integers, LLVM has not yet been converted to actually deal with
them in any significant way. Most optimization passes, for example, will
still only deal with the byte-width integer types.  Future increments
will rectify this situation.

llvm-svn: 33113
2007-01-12 07:05:14 +00:00
Chris Lattner
899a89b11b Fix persistent conflict madness by removing these from cvs.
llvm-svn: 33111
2007-01-12 05:35:13 +00:00
Reid Spencer
cddc9dfe97 Implement review feedback for the ConstantBool->ConstantInt merge. Chris
recommended that getBoolValue be replaced with getZExtValue and that
get(bool) be replaced by get(const Type*, uint64_t). This implements
those changes.

llvm-svn: 33110
2007-01-12 04:24:46 +00:00