- Oct 26, 2005
-
-
Chris Lattner authored
llvm-svn: 24019
-
Nate Begeman authored
FP_TO_SINT is preferred to a larger FP_TO_UINT. This seems to be begging for a TLI.isOperationCustom() helper function. llvm-svn: 23992
-
- Oct 25, 2005
-
-
Chris Lattner authored
llvm-svn: 23980
-
- Oct 24, 2005
-
-
Chris Lattner authored
in the future, remove it. llvm-svn: 23952
-
- Oct 23, 2005
-
-
Jeff Cohen authored
pointer marking the end of the list, the zero *must* be cast to the pointer type. An un-cast zero is a 32-bit int, and at least on x86_64, gcc will not extend the zero to 64 bits, thus allowing the upper 32 bits to be random junk. The new END_WITH_NULL macro may be used to annotate a such a function so that GCC (version 4 or newer) will detect the use of un-casted zero at compile time. llvm-svn: 23888
-
Andrew Lenharth authored
llvm-svn: 23886
-
- Oct 22, 2005
-
-
Chris Lattner authored
the input is that type, this caused a failure on gs on X86 last night. Move the hard checks into Build[US]Div since that is where decisions like this should be made. llvm-svn: 23881
-
- Oct 21, 2005
-
-
Chris Lattner authored
2005-10-21-longlonggtu.ll. llvm-svn: 23875
-
Chris Lattner authored
For example, we can now join things like [0-30:0)[31-40:1)[52-59:2) with [40:60:0) if the 52-59 range is defined by a copy from the 40-60 range. The resultant range ends up being [0-30:0)[31-60:1). This fires a lot through-out the test suite (e.g. shrinking bc from 19492 -> 18509 machineinstrs) though most gains are smaller (e.g. about 50 copies eliminated from crafty). llvm-svn: 23866
-
Chris Lattner authored
(an unused method). Fix the merger so that it can merge ranges like this [10:12)[16:40) with [12:38) into [10:40) instead of bogus ranges. This sort of input will be possible for the merger coming shortly llvm-svn: 23865
-
Nate Begeman authored
llvm-svn: 23856
-
Nate Begeman authored
Add a new flag to TargetLowering indicating if the target has really cheap signed division by powers of two, make ppc use it. This will probably go away in the future. Implement some more ISD::SDIV folds in the dag combiner Remove now dead code in the x86 backend. llvm-svn: 23853
-
Chris Lattner authored
Andrew for bringing this to my attn. llvm-svn: 23850
-
- Oct 20, 2005
-
-
Nate Begeman authored
for types that aren't legal, and fail a divisor is less than zero comparison, which would cause us to drop a subtract. llvm-svn: 23846
-
Chris Lattner authored
llvm-svn: 23845
-
Chris Lattner authored
llvm-svn: 23844
-
Chris Lattner authored
Fix a *bug* in the extendIntervalEndTo method. In particular, if adding [2:10) to an interval containing [0:2),[10:30), we produced [0:10),[10,30). Which is not the most smart thing to do. Now produce [0:30). llvm-svn: 23841
-
Chris Lattner authored
llvm-svn: 23839
-
Nate Begeman authored
that the nodes can be folded with other nodes, and we can not duplicate code in every backend. Alpha will probably want this too. llvm-svn: 23835
-
- Oct 19, 2005
-
-
Nate Begeman authored
the pair of elements is a legal type. llvm-svn: 23804
-
Nate Begeman authored
allows us to lower legal return types to something else, to meet ABI requirements (such as that i64 be returned in two i32 regs on Darwin/ppc). llvm-svn: 23802
-
Chris Lattner authored
sized stack object if either the array size or the type size is zero. llvm-svn: 23801
-
Chris Lattner authored
llvm-svn: 23797
-
- Oct 18, 2005
-
-
Chris Lattner authored
a lot throughout many programs. In particular, specfp triggers it a bunch for constant FP nodes when you have code like cond ? 1.0 : -1.0. If the PPC ISel exposed the loads implicit in pic references to external globals, we would be able to eliminate a load in cases like this as well: %X = external global int %Y = external global int int* %test4(bool %C) { %G = select bool %C, int* %X, int* %Y ret int* %G } Note that this breaks things that use SrcValue's (see the fixme), but since nothing uses them yet, this is ok. Also, simplify some code to use hasOneUse() on an SDOperand instead of hasNUsesOfValue directly. llvm-svn: 23781
-
Nate Begeman authored
llvm-svn: 23777
-
Nate Begeman authored
llvm-svn: 23776
-
- Oct 17, 2005
-
-
Nate Begeman authored
llvm-svn: 23774
-
Chris Lattner authored
llvm-svn: 23764
-
- Oct 16, 2005
-
-
Chris Lattner authored
llvm-svn: 23756
-
Chris Lattner authored
llvm-svn: 23755
-
- Oct 15, 2005
-
-
Chris Lattner authored
fixes a legalize failure on SPASS for itanium. llvm-svn: 23747
-
- Oct 14, 2005
-
-
Nate Begeman authored
popping up in Fourinarow. llvm-svn: 23722
-
Nate Begeman authored
you could be AND'ing with the result of a shift that shifts out all the bits you care about, in addition to a constant. Also, move over an add/sub_parts fold from legalize to the dag combiner, where it works for things other than constants. Woot! llvm-svn: 23720
-
Chris Lattner authored
llvm-svn: 23718
-
- Oct 13, 2005
-
-
Chris Lattner authored
llvm-svn: 23717
-
Chris Lattner authored
is also legal. Add support for ExpandOp'ing raw EXTLOADs too. llvm-svn: 23716
-
Chris Lattner authored
llvm-svn: 23715
-
Nate Begeman authored
the remainder of the failures introduced by my patch last night. llvm-svn: 23714
-
Chris Lattner authored
tests. llvm-svn: 23713
-
Nate Begeman authored
parts. This should fix the crafty and signed long long unit test failure on x86 last night. llvm-svn: 23711
-