Re: [llvm-commits] [patch] call libc memcpy/memset for big arrays

2007-08-24 Thread Dale Johannesen
On Aug 24, 2007, at 6:15 PM, Chris Lattner wrote: > > On Aug 24, 2007, at 4:44 AM, Rafael Espindola wrote: > >> Currently we expand a memcpy/memset node to a call to the libc >> implementation if >> >> if ((Align & 3) != 0 || >> (I && I->getValue() < Subtarget->getMinRepStrSizeThreshold

[llvm-commits] [llvm] r41394 - /llvm/trunk/lib/Transforms/Scalar/LoopIndexSplit.cpp

2007-08-24 Thread Devang Patel
Author: dpatel Date: Fri Aug 24 21:39:24 2007 New Revision: 41394 URL: http://llvm.org/viewvc/llvm-project?rev=41394&view=rev Log: Move exit condition and exit branch from exiting block into loop header and dominator info. This avoid execution of dead iteration. Loop is already filter in the beg

Re: [llvm-commits] [patch] call libc memcpy/memset for big arrays

2007-08-24 Thread Chris Lattner
On Aug 24, 2007, at 4:44 AM, Rafael Espindola wrote: > Currently we expand a memcpy/memset node to a call to the libc > implementation if > > if ((Align & 3) != 0 || > (I && I->getValue() < Subtarget->getMinRepStrSizeThreshold())) { > > Shouldn't this be a ">". The libc memcpy/memset ar

[llvm-commits] [llvm] r41389 - in /llvm/trunk: lib/Transforms/Scalar/LoopIndexSplit.cpp test/Transforms/LoopIndexSplit/UpperBound-2007-08-24.ll

2007-08-24 Thread Devang Patel
Author: dpatel Date: Fri Aug 24 20:09:14 2007 New Revision: 41389 URL: http://llvm.org/viewvc/llvm-project?rev=41389&view=rev Log: Constant split values needs upper bound and lower bound check, just like any other split value. Added: llvm/trunk/test/Transforms/LoopIndexSplit/UpperBound-2007-

[llvm-commits] [llvm] r41388 - in /llvm/trunk: lib/CodeGen/SelectionDAG/LegalizeDAG.cpp test/CodeGen/Generic/asm-large-immediate.ll

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 20:00:22 2007 New Revision: 41388 URL: http://llvm.org/viewvc/llvm-project?rev=41388&view=rev Log: Allow target constants to be illegal types. The target should know how to handle them. This fixes test/CodeGen/Generic/asm-large-immediate.ll Added: llvm/trun

[llvm-commits] [llvm] r41387 - in /llvm/trunk: lib/Transforms/Scalar/LoopIndexSplit.cpp test/Transforms/LoopIndexSplit/SplitValue-2007-08-24.ll

2007-08-24 Thread Devang Patel
Author: dpatel Date: Fri Aug 24 19:56:38 2007 New Revision: 41387 URL: http://llvm.org/viewvc/llvm-project?rev=41387&view=rev Log: While calculating upper loop bound for first loop and lower loop bound for second loop, take care of edge cases. Added: llvm/trunk/test/Transforms/LoopIndexSplit

[llvm-commits] [llvm] r41386 - /llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 19:53:07 2007 New Revision: 41386 URL: http://llvm.org/viewvc/llvm-project?rev=41386&view=rev Log: Teach the dag scheduler to handle inline asm nodes with multi-value immediate operands. Modified: llvm/trunk/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp Modified:

[llvm-commits] [llvm] r41385 - /llvm/trunk/lib/CodeGen/DwarfWriter.cpp

2007-08-24 Thread Bill Wendling
Author: void Date: Fri Aug 24 19:51:55 2007 New Revision: 41385 URL: http://llvm.org/viewvc/llvm-project?rev=41385&view=rev Log: The personality function might need to be declared as: .set Lset0,___gxx_personality_v0-. .long Lset0 on some targets. Make it so! Modified: llvm/trunk/l

[llvm-commits] [llvm] r41384 - in /llvm/trunk: include/llvm/Target/TargetLowering.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp lib/CodeGen/SelectionDAG/TargetLowering.cpp lib/Target/PowerPC/PPCISel

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 19:47:38 2007 New Revision: 41384 URL: http://llvm.org/viewvc/llvm-project?rev=41384&view=rev Log: rename isOperandValidForConstraint to LowerAsmOperandForConstraint, changing the interface to allow for future changes. Modified: llvm/trunk/include/llvm/Targe

[llvm-commits] [llvm] r41383 - /llvm/trunk/include/llvm/ADT/APFloat.h

2007-08-24 Thread Dale Johannesen
Author: johannes Date: Fri Aug 24 19:40:41 2007 New Revision: 41383 URL: http://llvm.org/viewvc/llvm-project?rev=41383&view=rev Log: Comment out declaration of operator== (undefined). Modified: llvm/trunk/include/llvm/ADT/APFloat.h Modified: llvm/trunk/include/llvm/ADT/APFloat.h URL: http:

[llvm-commits] [llvm] r41382 - /llvm/trunk/CREDITS.TXT

2007-08-24 Thread Neil Booth
Author: neil Date: Fri Aug 24 19:36:22 2007 New Revision: 41382 URL: http://llvm.org/viewvc/llvm-project?rev=41382&view=rev Log: Test Modified: llvm/trunk/CREDITS.TXT Modified: llvm/trunk/CREDITS.TXT URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CREDITS.TXT?rev=41382&r1=41381&r2=41382

[llvm-commits] [llvm] r41381 - /llvm/trunk/CREDITS.TXT

2007-08-24 Thread Neil Booth
Author: neil Date: Fri Aug 24 19:31:24 2007 New Revision: 41381 URL: http://llvm.org/viewvc/llvm-project?rev=41381&view=rev Log: Add self Modified: llvm/trunk/CREDITS.TXT Modified: llvm/trunk/CREDITS.TXT URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CREDITS.TXT?rev=41381&r1=41380&r2=4

Re: [llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Chris Lattner
>> The difference here is that C++ compilers automatically synthesis >> copy ctors and default ctors and operator=, but they don't do the >> same for operator==. To disable these automatically generated >> members, you have to "define" them, and put them in the private part >> of the class (so any

Re: [llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Dale Johannesen
On Aug 24, 2007, at 4:40 PM, Chris Lattner wrote: >>> I think that you can just remove this and the compiler will give you >>> a compile-time error if you try to use it. If you define it like >>> this, you just get a link-time error. >> >> Yep, and the linker error message doesn't tell you where

Re: [llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Chris Lattner
On Aug 24, 2007, at 4:38 PM, Dale Johannesen wrote: > > On Aug 24, 2007, at 4:03 PM, Chris Lattner wrote: > >>> >>> +/* The definition of equality is not straightforward for >>> floating point, >>> + so we won't use operator==. Use one of the following, or >>> write >>> + whateve

Re: [llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Dale Johannesen
On Aug 24, 2007, at 4:03 PM, Chris Lattner wrote: >> >> +/* The definition of equality is not straightforward for >> floating point, >> + so we won't use operator==. Use one of the following, or >> write >> + whatever it is you really mean. */ >> +bool operator==(const APFloa

[llvm-commits] CVS: llvm-www/InTheNews.html

2007-08-24 Thread Tanya Lattner
Changes in directory llvm-www: InTheNews.html updated: 1.21 -> 1.22 --- Log message: Fix broken link. --- Diffs of the changes: (+2 -2) InTheNews.html |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm-www/InTheNews.html diff -u llvm-www/InTheNews.html:1.21 llvm-ww

[llvm-commits] [llvm] r41380 - /llvm/trunk/docs/LinkTimeOptimization.html

2007-08-24 Thread Tanya Lattner
Author: tbrethou Date: Fri Aug 24 18:23:23 2007 New Revision: 41380 URL: http://llvm.org/viewvc/llvm-project?rev=41380&view=rev Log: Rename llvm-gcc4 to llvm-gcc. Modified: llvm/trunk/docs/LinkTimeOptimization.html Modified: llvm/trunk/docs/LinkTimeOptimization.html URL: http://llvm.org/vie

Re: [llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Chris Lattner
> > +/* The definition of equality is not straightforward for > floating point, > + so we won't use operator==. Use one of the following, or > write > + whatever it is you really mean. */ > +bool operator==(const APFloat &) const; // DO NOT IMPLEMENT Hey Dale, I think

[llvm-commits] [llvm] r41378 - in /llvm/trunk: include/llvm/ADT/APFloat.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/Support/APFloat.cpp lib/VMCore/Constants.cpp

2007-08-24 Thread Dale Johannesen
Author: johannes Date: Fri Aug 24 17:09:56 2007 New Revision: 41378 URL: http://llvm.org/viewvc/llvm-project?rev=41378&view=rev Log: Poison APFloat::operator==. Replace existing uses with bitwiseIsEqual. This means backing out the preceding change to Constants.cpp, alas. Modified: llvm/trun

[llvm-commits] [llvm] r41372 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGNodes.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp

2007-08-24 Thread Dale Johannesen
Author: johannes Date: Fri Aug 24 15:59:15 2007 New Revision: 41372 URL: http://llvm.org/viewvc/llvm-project?rev=41372&view=rev Log: Use APFloat internally for ConstantFPSDNode. Modified: llvm/trunk/include/llvm/CodeGen/SelectionDAGNodes.h llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG

[llvm-commits] [llvm] r41371 - in /llvm/trunk: include/llvm/InstrTypes.h include/llvm/Instructions.h lib/VMCore/Instructions.cpp

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 15:48:18 2007 New Revision: 41371 URL: http://llvm.org/viewvc/llvm-project?rev=41371&view=rev Log: sink clone() down the class hierarchy from CmpInst into ICmpInst/FCmpInst. This eliminates a conditional on that path, and ensures ICmpInst/FCmpInst both have an out-

[llvm-commits] [llvm-gcc-4.2] r41367 - /llvm-gcc-4.2/trunk/gcc/ada/lang-specs.h

2007-08-24 Thread Duncan Sands
Author: baldrick Date: Fri Aug 24 15:12:43 2007 New Revision: 41367 URL: http://llvm.org/viewvc/llvm-project?rev=41367&view=rev Log: Teach the Ada front-end about llvm options. Modified: llvm-gcc-4.2/trunk/gcc/ada/lang-specs.h Modified: llvm-gcc-4.2/trunk/gcc/ada/lang-specs.h URL: http://ll

[llvm-commits] [llvm] r41365 - /llvm/trunk/lib/Transforms/Scalar/LoopIndexSplit.cpp

2007-08-24 Thread Devang Patel
Author: dpatel Date: Fri Aug 24 14:32:26 2007 New Revision: 41365 URL: http://llvm.org/viewvc/llvm-project?rev=41365&view=rev Log: Fix regression that I caused yesterday night while adding logic to select appropriate split condition branch. Modified: llvm/trunk/lib/Transforms/Scalar/LoopInde

[llvm-commits] [llvm] r41360 - /llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 11:00:15 2007 New Revision: 41360 URL: http://llvm.org/viewvc/llvm-project?rev=41360&view=rev Log: Disable EH generation until PPC works 100%. Modified: llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInfo.cpp Modified: llvm/trunk/lib/Target/PowerPC/PPCTargetAsmInf

[llvm-commits] [llvm] r41359 - /llvm/trunk/lib/Target/X86/README-SSE.txt

2007-08-24 Thread Chris Lattner
Author: lattner Date: Fri Aug 24 10:17:59 2007 New Revision: 41359 URL: http://llvm.org/viewvc/llvm-project?rev=41359&view=rev Log: add a note Modified: llvm/trunk/lib/Target/X86/README-SSE.txt Modified: llvm/trunk/lib/Target/X86/README-SSE.txt URL: http://llvm.org/viewvc/llvm-project/llvm/

[llvm-commits] [patch] fix the alignment of i64 and f64 on linux x86-64

2007-08-24 Thread Rafael Espindola
According to table 3.1 of http://www.x86-64.org/documentation/abi.pdf, the i64 and f64 types should have 8 byte alignment. The attached patch changes this for targets that are not darwin. OK to commit? Cheers, -- Rafael Avila de Espindola Google Ireland Ltd. Gordon House Barrow Street Dublin 4

[llvm-commits] [patch] call libc memcpy/memset for big arrays

2007-08-24 Thread Rafael Espindola
Currently we expand a memcpy/memset node to a call to the libc implementation if if ((Align & 3) != 0 || (I && I->getValue() < Subtarget->getMinRepStrSizeThreshold())) { Shouldn't this be a ">". The libc memcpy/memset are very fast for big arrays. If I compile --