Ted Kremenek
d0843e54f5
Removed spurious forward declaration to a structure that will no longer be used.
...
llvm-svn: 42839
2007-10-10 20:45:34 +00:00
Ted Kremenek
e5e9880bfc
Added some doxygen comments to a few methods of ImutAVLTree.
...
llvm-svn: 42837
2007-10-10 20:44:21 +00:00
Ted Kremenek
9b6872e3d5
Added preliminary support for iterators in ImutAVLTree.
...
Implemented ImutAVLTree::isEqual.
llvm-svn: 42833
2007-10-10 18:11:16 +00:00
Ted Kremenek
7a878948f9
Renamed internal method "Create" of ImutAVLTree to "CreateNode".
...
llvm-svn: 42825
2007-10-10 16:27:33 +00:00
Bill Wendling
19a314f8ac
Fix 80-column violations
...
llvm-svn: 42823
2007-10-10 05:45:59 +00:00
Dale Johannesen
76458ddf1e
Next PPC long double bits: ppcf128->i32 conversion.
...
Surprisingly complicated.
Adds getTargetNode for 2 outputs, no inputs (missing).
llvm-svn: 42822
2007-10-10 01:01:31 +00:00
Chris Lattner
a65ec649fd
Add new MemoryBuffer::getMemBufferCopy method.
...
llvm-svn: 42815
2007-10-09 21:46:38 +00:00
Devang Patel
779882dd87
Fix indentation.
...
llvm-svn: 42814
2007-10-09 21:41:00 +00:00
Ted Kremenek
a8e090bd1c
Added implementation of immutable (functional) maps and sets, as
...
implemented on top of a functional AVL tree. The AVL balancing code
is inspired by the OCaml implementation of Map, which also uses a functional
AVL tree.
Documentation is currently limited and cleanups are planned, but this code
compiles and has been tested.
llvm-svn: 42813
2007-10-09 21:38:09 +00:00
Devang Patel
6020d2e01d
Add LLVMFoldingBuilder
...
llvm-svn: 42806
2007-10-09 19:49:19 +00:00
Dan Gohman
d174f83e57
Remove an unnecessary friend declaration.
...
llvm-svn: 42805
2007-10-09 18:39:48 +00:00
Chris Lattner
03d9efc98a
update prototype, fixing build error
...
llvm-svn: 42789
2007-10-09 16:27:44 +00:00
Dan Gohman
2fb0a249d7
Pass argc by value, not by reference, since it isn't modified.
...
llvm-svn: 42788
2007-10-09 16:04:57 +00:00
Chris Lattner
8ee06ab2ab
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
19cb9fa4cc
Change a #include into a forward declaration
...
llvm-svn: 42781
2007-10-09 03:40:30 +00:00
Dan Gohman
a2ec0a3c2c
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
Dan Gohman
9ee1c4eee7
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
8c31acb71e
Fix grammar in a comment.
...
llvm-svn: 42748
2007-10-08 15:10:04 +00:00
Dan Gohman
7fa473514d
Add explicit keywords.
...
llvm-svn: 42747
2007-10-08 15:08:41 +00:00
Neil Booth
f003f9bf1a
Add a new function tcExtract for extracting a bignum from an
...
arbitrary range of bits embedded in the middle of another bignum.
This kind of operation is desirable in many cases of software
floating point, e.g. converting bignum integers to floating point
numbers of fixed precision (you want to extract the precision most
significant bits).
Elsewhere, add an assertion, and exit the shift functions early if
the shift count is zero.
llvm-svn: 42745
2007-10-08 13:47:12 +00:00
Owen Anderson
ffcd82d1ed
Begin the process of allowing DomTree on MBB's. Step One: template DomTreeNode by making it a typedef of a templated DomTreeNodeBase.
...
llvm-svn: 42743
2007-10-08 07:44:39 +00:00
Chris Lattner
48e389b33a
Allow passes to just pass up "FunctionPass(&ID)" instead of "FunctionPass((intptr_t)&ID)"
...
llvm-svn: 42741
2007-10-08 03:45:44 +00:00
Chris Lattner
ddd980044f
Finish off PR1723, by working around some strange compiler bug.
...
llvm-svn: 42737
2007-10-07 17:57:10 +00:00
Neil Booth
6f9602ac12
Add back convertFromSignExtendedInteger.
...
llvm-svn: 42735
2007-10-07 12:15:41 +00:00
Neil Booth
db4dbedfea
Reimplement convertFromUnsignedInteger so it is passed a const bignum.
...
It used to modify its argument in-place.
This interface is saner and the implementation more efficient. It will
be needed for decimal->binary conversion.
llvm-svn: 42733
2007-10-07 12:07:53 +00:00
Neil Booth
6e01c5df37
convertFromInteger, as originally written, expected sign-extended
...
input. APInt unfortunately zero-extends signed integers, so Dale
modified the function to expect zero-extended input. Make this
assumption explicit in the function name.
llvm-svn: 42732
2007-10-07 11:45:55 +00:00
Neil Booth
726126f4d6
combineLostFractions does not need to be a member function
...
llvm-svn: 42729
2007-10-07 08:51:21 +00:00
Daniel Berlin
afb1610cf3
Some more problems noticed by Curtis
...
llvm-svn: 42717
2007-10-07 04:47:57 +00:00
Gordon Henriksen
65ce7c3085
Adding C and Ocaml bindings for ConstantExpr.
...
llvm-svn: 42696
2007-10-06 14:29:36 +00:00
Anton Korobeynikov
1f11738913
Include DataTypes.h to provide intptr_t type. This fixes OpenBSD compilation of this file.
...
Inspired by Laurence Tratt's patch
llvm-svn: 42695
2007-10-06 13:07:11 +00:00
Evan Cheng
c6b349980a
Oops. Forgot this.
...
llvm-svn: 42691
2007-10-06 08:09:29 +00:00
Neil Booth
2c4419d71b
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
543f859a00
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
Dale Johannesen
c7b51b678d
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
Chris Lattner
c604dd270a
Mark count method const.
...
llvm-svn: 42639
2007-10-05 17:40:38 +00:00
Dan Gohman
bc0aadce14
SMUL_LOHI and UMUL_LOHI are commutative.
...
llvm-svn: 42633
2007-10-05 14:09:33 +00:00
Dan Gohman
148f07390d
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
922a92a9e2
Fix typo in comment.
...
llvm-svn: 42631
2007-10-05 10:37:00 +00:00
Daniel Berlin
7cb8b28613
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
de07843bf3
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
f536e2f41e
- 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
5ae84c0fa6
Add a variant of getTargetNode() that takes a vector of MVT::ValueType.
...
llvm-svn: 42620
2007-10-05 01:10:49 +00:00
Daniel Berlin
cf42f07a47
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
bbe5e56458
Fix off by one error in iterator
...
llvm-svn: 42612
2007-10-04 21:18:20 +00:00
Daniel Berlin
cd14e3d42a
It helps a lot when you check for the end of your list before randomly
...
dereferencing things.
llvm-svn: 42605
2007-10-04 05:29:36 +00:00
Daniel Berlin
a4df074d31
Make SparseBitVector::set actually work properly when sets are not in ascending or descending order.
...
llvm-svn: 42604
2007-10-04 05:25:51 +00:00
Neil Booth
2dc065755d
Add APFloat -> hexadecimal string conversion, as per %a and %A in C99.
...
Useful for diagnostics and debugging.
llvm-svn: 42598
2007-10-03 22:26:02 +00:00
Owen Anderson
cb51170957
Completely merge the implementation details of DomTree and PostDomTree.
...
Also, add a FIXME for a bug in PostDomTree calculation I noticed while writing this,
llvm-svn: 42593
2007-10-03 21:25:45 +00:00
Owen Anderson
7d39d6d4cb
Add a GraphTraits partial specialization to make the inverse of an inverse be the same as the underlying graph.
...
llvm-svn: 42592
2007-10-03 21:24:38 +00:00
Chris Lattner
de233151af
Add initial iterator support for folding set.
...
llvm-svn: 42589
2007-10-03 21:12:09 +00:00