Neil Booth
c8b650ab14
Fix and clarify some comments.
...
llvm-svn: 42670
2007-10-06 00:43:45 +00:00
Neil Booth
0ea72a9a91
Generalize tcFullMultiply so that the operands can be of differing
...
part widths. Also, return the number of parts actually required to
hold the result's value.
Remove an over-cautious condition from rounding of float->hex conversion.
llvm-svn: 42669
2007-10-06 00:24:48 +00:00
Gordon Henriksen
1d0d24c4fd
Wrapping Value::dump.
...
llvm-svn: 42668
2007-10-06 00:08:49 +00:00
Gordon Henriksen
7330acdec7
Removing the silly CHelpers header by rolling wrap and unwrap into the C
...
bindings headers themselves, hidden behind #ifdef __cplusplus.
llvm-svn: 42666
2007-10-05 23:59:36 +00:00
Evan Cheng
5ee9cf6bca
Test case for 3-address conversion.
...
llvm-svn: 42664
2007-10-05 23:33:09 +00:00
Ted Kremenek
8a7bf82206
Modifications to XCode project:
...
- Added include/Analysis/ExprDeclBitVector.h
- Added include/Analysis/ProgramEdge.h
- Removed include/Analysis/Visitors/DataflowStmtVisitor.h
llvm-svn: 42663
2007-10-05 23:32:54 +00:00
Ted Kremenek
fd8d8ca214
Removed DataflowStmtVisitor. It is no longer used, and is obsoleted
...
by newer visitor interfaces.
llvm-svn: 42662
2007-10-05 23:27:24 +00:00
Evan Cheng
1151ffde70
Commute x86 cmove instructions by swapping the operands and change the condition
...
to its inverse.
Testing this as llcbeta
llvm-svn: 42661
2007-10-05 23:13:21 +00:00
Evan Cheng
42a13757de
This is done.
...
llvm-svn: 42656
2007-10-05 22:34:59 +00:00
Evan Cheng
484cab7a2f
Enable convertToThreeAddress for X86 by default.
...
llvm-svn: 42655
2007-10-05 22:31:10 +00:00
Devang Patel
a69f987b66
Fix bug in updating dominance frontier after loop
...
unswitch when frontier includes basic blocks that
are not inside loop.
llvm-svn: 42654
2007-10-05 22:29:34 +00:00
Evan Cheng
d3ccf00870
INC64_32r -> LEA64_32r is better than INC64_32r -> LEA32r, but it still can
...
cause performance degradation.
llvm-svn: 42653
2007-10-05 21:55:32 +00:00
Kevin
9f413446de
A message on the main page about bulding clang.
...
llvm-svn: 42652
2007-10-05 21:44:03 +00:00
Kevin
aa4692883a
new site -- the rest of it
...
llvm-svn: 42651
2007-10-05 21:18:52 +00:00
Kevin
32a4c17af9
new site
...
llvm-svn: 42650
2007-10-05 21:17:52 +00:00
Fariborz Jahanian
ea7a98d8d6
This is the first patch toward supporting protocol conforming
...
objective-c types. It also removes use of Scope* parameter in
getObjCProtocolDecl.
llvm-svn: 42649
2007-10-05 21:01:53 +00:00
Devang Patel
64a9ca7c58
Support case statement ranges.
...
llvm-svn: 42648
2007-10-05 20:54:07 +00:00
Evan Cheng
fa2c828687
In 64-bit mode, avoid using leal with 32-bit 32-bit address size, e.g.
...
leal 1(%ecx), %edi, which requires 67H prefix.
llvm-svn: 42647
2007-10-05 20:34:26 +00:00
Kevin
e5be925a22
Per request... about to make changes to the website.
...
llvm-svn: 42646
2007-10-05 20:31:57 +00:00
Chris Lattner
dadc762ac5
Implement DenseMapInfo for Selector, allowing use of DenseMap/DenseSet of
...
Selector's instead of requiring void* to be used. I converted one use of
DenseSet<void*> over to use DenseSet<Selector> but the others should change
as well.
llvm-svn: 42645
2007-10-05 20:15:24 +00:00
Dale Johannesen
c0154c06d6
First round of ppc long double. call/return and
...
basic arithmetic works.
Rename RTLIB long double functions to distinguish
different flavors of long double; the lib functions
have different names, alas.
llvm-svn: 42644
2007-10-05 20:04:43 +00:00
Steve Naroff
e61bfa8bb4
Layering refinements for selectors (suggested by Chris). Specifics...
...
- Add SelectorTable, which enables us to remove MultiKeywordSelector from the public header.
- Remove FoldingSet from IdentifierInfo.h and Preprocessor.h.
- Remove Parser::ObjcGetUnarySelector and Parser::ObjcGetKeywordSelector, they are subsumed by SelectorTable.
- Add MultiKeywordSelector to IdentifierInfo.cpp.
- Move a bunch of selector related methods from ParseObjC.cpp to IdentifierInfo.cpp.
- Added some comments.
llvm-svn: 42643
2007-10-05 18:42:47 +00:00
Evan Cheng
aac0f8e351
Add support to convert more 64-bit instructions to 3-address instructions.
...
llvm-svn: 42642
2007-10-05 18:20:36 +00:00
Fariborz Jahanian
458f7114db
Patch for 1) Checking for duplicate methods decls in intterface and category.
...
2) Use of the new DenseSet<t> abstractions instead of DenseMap<t,char>.
llvm-svn: 42641
2007-10-05 18:00:57 +00:00
Evan Cheng
97eba74a52
ADC and SBB uses EFLAGS.
...
llvm-svn: 42640
2007-10-05 17:59:57 +00:00
Chris Lattner
f85527e131
Mark count method const.
...
llvm-svn: 42639
2007-10-05 17:40:38 +00:00
Dan Gohman
43c29dce18
Change a few more spaces to tabs in assembly output.
...
llvm-svn: 42638
2007-10-05 15:58:41 +00:00
Dan Gohman
b074f23dff
Change a space to a tab in the assembly output of a .globl directive
...
for consistency.
llvm-svn: 42637
2007-10-05 15:54:58 +00:00
Dan Gohman
12334acbfb
Legalize support for MUL_LOHI and DIVREM.
...
llvm-svn: 42636
2007-10-05 14:17:22 +00:00
Dan Gohman
2682bb6df2
Fix a typo in a comment.
...
llvm-svn: 42635
2007-10-05 14:11:58 +00:00
Dan Gohman
1a77dfba15
Provide names for MUL_LOHI and DIVREM operators.
...
llvm-svn: 42634
2007-10-05 14:11:04 +00:00
Dan Gohman
3c2c1c3cce
SMUL_LOHI and UMUL_LOHI are commutative.
...
llvm-svn: 42633
2007-10-05 14:09:33 +00:00
Dan Gohman
5b89b1ef8f
Define target-indepenent SDNode types for multiply and divide that
...
produce two results.
llvm-svn: 42632
2007-10-05 14:07:56 +00:00
Duncan Sands
99452793ac
Fix typo in comment.
...
llvm-svn: 42631
2007-10-05 10:37:00 +00:00
Evan Cheng
a8a9c15e30
Testing convertToThreeeAddress as X86 llcbeta.
...
llvm-svn: 42630
2007-10-05 08:04:01 +00:00
Daniel Berlin
f86366ec2d
Fix intersectWithComplement bug noticed by Curtis Dunham
...
Optimize |= case for empty RHS
llvm-svn: 42629
2007-10-05 05:10:53 +00:00
Evan Cheng
90a4185b5f
New test case.
...
llvm-svn: 42628
2007-10-05 01:44:22 +00:00
Evan Cheng
84d0ebc10a
Chain producing nodes cannot be moved, not chain reading nodes.
...
llvm-svn: 42627
2007-10-05 01:42:35 +00:00
Evan Cheng
991cf47221
Oops. Didn't mean to leave this in.
...
llvm-svn: 42626
2007-10-05 01:39:40 +00:00
Evan Cheng
79e9713b11
If a node that defines a physical register that is expensive to copy. The
...
scheduler will try a number of tricks in order to avoid generating the
copies. This may not be possible in case the node produces a chain value
that prevent movement. Try unfolding the load from the node before to allow
it to be moved / cloned.
llvm-svn: 42625
2007-10-05 01:39:18 +00:00
Evan Cheng
a851e2b92e
Added storeRegToAddr, loadRegFromAddr, and unfoldMemoryOperand's.
...
llvm-svn: 42624
2007-10-05 01:34:55 +00:00
Evan Cheng
6912b50958
Not needed any more.
...
llvm-svn: 42623
2007-10-05 01:34:14 +00:00
Evan Cheng
1ef9edce5f
Forgot these.
...
llvm-svn: 42622
2007-10-05 01:33:45 +00:00
Evan Cheng
f4cf5dcdd2
- Added a few target hooks to generate load / store instructions from / to any
...
address (not just from / to frameindexes).
- Added target hooks to unfold load / store instructions / SDNodes into separate
load, data processing, store instructions / SDNodes.
llvm-svn: 42621
2007-10-05 01:32:41 +00:00
Evan Cheng
4852303bdb
Add a variant of getTargetNode() that takes a vector of MVT::ValueType.
...
llvm-svn: 42620
2007-10-05 01:10:49 +00:00
Evan Cheng
fd11ef4665
Silence a warning.
...
llvm-svn: 42619
2007-10-05 01:09:32 +00:00
Devang Patel
da5d6bbc40
switch statement code gen.
...
llvm-svn: 42616
2007-10-04 23:45:31 +00:00
Daniel Berlin
f5009110bf
Fix the previous bug a slightly different way (by modifying how find_next works)
...
llvm-svn: 42613
2007-10-04 21:27:17 +00:00
Daniel Berlin
c1973961c9
Fix off by one error in iterator
...
llvm-svn: 42612
2007-10-04 21:18:20 +00:00
Fariborz Jahanian
9081457cbf
this patch accomodates clattner's comments on expression processing in @try-statement.
...
llvm-svn: 42611
2007-10-04 20:19:06 +00:00