Chris Lattner
76c7228ef9
switch some more of the parser over to using Token::is and isNot
...
llvm-svn: 42796
2007-10-09 17:33:22 +00:00
Chris Lattner
0ab032aa8f
Add two new Token helper functions, "is" and "isNot". This allows us to write
...
stuff like this:
// If we don't have a comma, it is either the end of the list (a ';') or
// an error, bail out.
if (Tok.isNot(tok::comma))
break;
instead of:
// If we don't have a comma, it is either the end of the list (a ';') or
// an error, bail out.
if (Tok.getKind() != tok::comma)
break;
There is obviously no functionality change, but the code reads a bit better and is
more terse.
llvm-svn: 42795
2007-10-09 17:23:58 +00:00
Fariborz Jahanian
f483847233
Added better comment about protocol list for class ObjcQualifiedInterfaceType.
...
llvm-svn: 42794
2007-10-09 17:14:13 +00:00
Chris Lattner
a55a2cc25c
rename some "Parse" actions to "ActOn". Move code around in
...
ParseFunctionDefinition so that ActOnFunctionDefBody is always
called if ActOnStartOfFunctionDef is called. This fixes a crash
reported by Nuno Lopes.
llvm-svn: 42793
2007-10-09 17:14:05 +00:00
Devang Patel
eac5948348
Use const& for RHS.
...
Use copy for LHS, because it is incremented using ++ operator.
llvm-svn: 42792
2007-10-09 17:10:59 +00:00
Devang Patel
49a44f3b52
Fix comment. Describe what it is, instead of how it is used.
...
llvm-svn: 42791
2007-10-09 17:08:50 +00:00
Fariborz Jahanian
cb995d8981
Prevent memory leak by not creating a category object when there is a
...
fatal error of category's undefined interface.
llvm-svn: 42790
2007-10-09 17:05:22 +00:00
Chris Lattner
fc16c0a026
update prototype, fixing build error
...
llvm-svn: 42789
2007-10-09 16:27:44 +00:00
Dan Gohman
66966403ce
Pass argc by value, not by reference, since it isn't modified.
...
llvm-svn: 42788
2007-10-09 16:04:57 +00:00
Dan Gohman
e8c8ef5234
LowerIntegerDivOrRem no longer exists.
...
llvm-svn: 42787
2007-10-09 15:45:13 +00:00
Dan Gohman
51554bf30e
Fix grammar in a comment.
...
llvm-svn: 42786
2007-10-09 15:44:37 +00:00
Dan Gohman
6d28778bfd
This is done.
...
llvm-svn: 42785
2007-10-09 15:42:21 +00:00
Dan Gohman
678387a299
These two tests now require only two multiply instructions,
...
instead of four.
llvm-svn: 42784
2007-10-09 15:39:37 +00:00
Evan Cheng
82bc90ac60
Under 64-bit mode use LEA64_32r instead of LEA64r to save a byte.
...
llvm-svn: 42783
2007-10-09 07:14:53 +00:00
Chris Lattner
38d49f5d90
Fix problems where DenseMap used operator!= instead of correctly
...
calling the traits implementation of isEqual.
llvm-svn: 42782
2007-10-09 05:42:12 +00:00
Chris Lattner
5c50f59690
Change a #include into a forward declaration
...
llvm-svn: 42781
2007-10-09 03:40:30 +00:00
Bruno Cardoso Lopes
66d9572ced
Position Independent Code (PIC) support [3]
...
llvm-svn: 42780
2007-10-09 03:15:11 +00:00
Bruno Cardoso Lopes
35d86e60b6
Position Independent Code (PIC) support [2]
...
- Added a function to hold the stack location
where GP must be stored during LowerCALL
- AsmPrinter now emits directives based on
relocation type
- PIC_ set to default relocation type (same as GCC)
llvm-svn: 42779
2007-10-09 03:01:19 +00:00
Bruno Cardoso Lopes
5cef9cfd09
Position Independent Code (PIC) support [1]
...
- Modified instruction format to handle pseudo instructions
- Added LoadAddr SDNode to load symbols.
llvm-svn: 42778
2007-10-09 02:55:31 +00:00
Steve Naroff
8e748cb4e9
Remove 2 protocol related actions from MinimalActions (protocols shouldn't be recognized as types).
...
llvm-svn: 42777
2007-10-08 23:10:47 +00:00
Fariborz Jahanian
da6c012ee7
Added a new class for Interfaces qualified by protocol list.
...
Protocols are now sorted and made unique in the list.
Enhanced pretty printer for @interface (So, I can see the protocol list).
llvm-svn: 42776
2007-10-08 23:06:41 +00:00
Evan Cheng
3b3e6097a3
Update test.
...
llvm-svn: 42775
2007-10-08 22:20:32 +00:00
Evan Cheng
f5ec10b64c
Bug fix. X86 was emitting redundant setcc and test instructions before a conditional move.
...
llvm-svn: 42774
2007-10-08 22:16:29 +00:00
Steve Naroff
b163154c2d
Removed unused instance variable from FieldDecl.
...
llvm-svn: 42773
2007-10-08 21:56:47 +00:00
Chris Lattner
ba9dddb01e
Rename FileVariable -> FileVar for consistency with its class name,
...
likewise block and param. Reorder the layout of the Decl kind enum
so that the inheritance tree is reflected in the ordering. This allows
trivial range comparisons to determine whether something is an instance
of some abstract class, making classof faster.
llvm-svn: 42772
2007-10-08 21:37:32 +00:00
Chris Lattner
15b7278931
add a comment.
...
llvm-svn: 42771
2007-10-08 21:36:22 +00:00
Chris Lattner
6776a8d359
Move identifierTable.h to the right folder.
...
llvm-svn: 42770
2007-10-08 21:35:59 +00:00
Dan Gohman
5942e5a5fb
Call getFunctionNumber() instead of referencing FunctionNumber directly,
...
for consistency.
llvm-svn: 42769
2007-10-08 21:27:12 +00:00
Dan Gohman
ac546cc28f
Mark the prefetch intrinsic as IntrWriteArgMem, instead of the
...
default of IntrWriteMem, to at least indicate that it doesn't
"capture" the argument pointer.
llvm-svn: 42768
2007-10-08 21:15:07 +00:00
Steve Naroff
71c3c1c715
Convert Selector Maps/Sets to use stronger typing (now that we have DenseMapInfo in IdentifierTable.h).
...
llvm-svn: 42767
2007-10-08 21:05:34 +00:00
Devang Patel
1166312e8b
Code gen case statement ranges.
...
llvm-svn: 42766
2007-10-08 20:57:48 +00:00
Dan Gohman
a24b431b27
These two tests now require only three multiply instructions,
...
instead of four.
llvm-svn: 42765
2007-10-08 20:48:12 +00:00
Fariborz Jahanian
e90597f593
Several small patches to do pretty printing for objective-c top-level decls
...
(minimal printing), Derive ObjcClassDecl from Decl. Ted may want to
take note of the change I made to CFGRecStmtDeclVisitor.h
llvm-svn: 42764
2007-10-08 18:53:38 +00:00
Chris Lattner
104c48ab8f
Various improvements to the documentation, contributed by
...
Joshua Haberman!
llvm-svn: 42763
2007-10-08 18:42:45 +00:00
Dan Gohman
a160361c85
Migrate X86 and ARM from using X86ISD::{,I}DIV and ARMISD::MULHILO{U,S} to
...
use ISD::{S,U}DIVREM and ISD::{S,U}MUL_HIO. Move the lowering code
associated with these operators into target-independent in LegalizeDAG.cpp
and TargetLowering.cpp.
llvm-svn: 42762
2007-10-08 18:33:35 +00:00
Evan Cheng
18109c88c3
Allow x86 compare to be commutable by default.
...
llvm-svn: 42761
2007-10-08 18:27:46 +00:00
Gordon Henriksen
44dd8fbd26
C and Objective Caml bindings for PHINode::addIncoming etc.
...
llvm-svn: 42760
2007-10-08 18:14:39 +00:00
Dan Gohman
5c6d0c3b99
DAGCombiner support for UDIVREM/SDIVREM and UMUL_LOHI/SMUL_LOHI.
...
Check if one of the two results unneeded so see if a simpler operator
could bs used. Also check to see if each of the two computations could be
simplified if they were split into separate operators. Factor out the code
that calls visit() so that it can be used for this purpose.
llvm-svn: 42759
2007-10-08 17:57:15 +00:00
Evan Cheng
4c73befe28
LLVM does not use the old style simple isel any more.
...
llvm-svn: 42758
2007-10-08 17:54:24 +00:00
Evan Cheng
acc8b68e5f
Remove debugging printf to get build going on x86-64.
...
llvm-svn: 42757
2007-10-08 17:49:43 +00:00
Fariborz Jahanian
092e34d15b
Removed unnecessary base class from some of objective-c classes:
...
ObjcProtocolDecl is now derived from ScopedDecl. ObjcForwardProtocolDecl from Decl.
ObjcImplementationDecl fom NamedDecl.
llvm-svn: 42756
2007-10-08 17:35:11 +00:00
Dan Gohman
71f0d7d76e
When we start enabling SMUL_LOHI/UMUL_LOHI or SDIVREM/UDIVREM in
...
target-indepenent lowering, don't use them on PowerPC.
llvm-svn: 42755
2007-10-08 17:28:24 +00:00
Fariborz Jahanian
4b2113c281
Return NULL on invalid protocol.
...
llvm-svn: 42754
2007-10-08 16:07:03 +00:00
Dan Gohman
b08c8bfe41
Add convenience overloads of SelectionDAG::getNode that take a SDVTList
...
and individual SDOperand operands.
llvm-svn: 42753
2007-10-08 15:49:58 +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
Dan Gohman
afedc063ab
Simplify getIntPtrType, allowing it to work for arbitrary pointer sizes.
...
llvm-svn: 42751
2007-10-08 15:16:25 +00:00
Dan Gohman
5e79a6108f
Use correct parentheses with the '&& "..."' idiom in an assert.
...
llvm-svn: 42750
2007-10-08 15:13:30 +00:00
Dan Gohman
fadf40a655
In -debug mode, dump SelectionDAGs both before and after the
...
optimization passes.
llvm-svn: 42749
2007-10-08 15:12:17 +00:00
Dan Gohman
ea3c73629f
Fix grammar in a comment.
...
llvm-svn: 42748
2007-10-08 15:10:04 +00:00
Dan Gohman
13ab93efde
Add explicit keywords.
...
llvm-svn: 42747
2007-10-08 15:08:41 +00:00