[llvm-commits] [llvm] r40776 - /llvm/trunk/lib/Transforms/Scalar/GVN.cpp

2007-08-03 Thread Owen Anderson
Author: resistor Date: Fri Aug 3 06:03:26 2007 New Revision: 40776 URL: http://llvm.org/viewvc/llvm-project?rev=40776view=rev Log: Fix a subtle iterator invalidation bug in a recursive algorithm. Modified: llvm/trunk/lib/Transforms/Scalar/GVN.cpp Modified:

[llvm-commits] [PATCH] partial codgen support for ByVal arguments

2007-08-03 Thread Rafael Espindola
The attached patch implements code generation of byval arguments on the callee. For now only the case were the struct is in the stack is handle correctly. With the patch, the function --- %struct.s = type { i64, i64, i64 } define i64 @f(%struct.s*

[llvm-commits] [poolalloc] r40786 - in /poolalloc/branches/SVA/lib/DSA: DataStructure.cpp Info.cpp LeafRepl.cpp Local.cpp

2007-08-03 Thread Andrew Lenharth
Author: alenhar2 Date: Fri Aug 3 12:46:27 2007 New Revision: 40786 URL: http://llvm.org/viewvc/llvm-project?rev=40786view=rev Log: kernel stat pass and cleanup Modified: poolalloc/branches/SVA/lib/DSA/DataStructure.cpp poolalloc/branches/SVA/lib/DSA/Info.cpp

[llvm-commits] [llvm] r40792 - in /llvm/trunk/lib/Target: Alpha/AlphaTargetMachine.cpp IA64/IA64TargetMachine.cpp PowerPC/PPCSubtarget.h Sparc/SparcTargetMachine.cpp TargetData.cpp X86/X86TargetMachin

2007-08-03 Thread Dale Johannesen
Author: johannes Date: Fri Aug 3 15:20:50 2007 New Revision: 40792 URL: http://llvm.org/viewvc/llvm-project?rev=40792view=rev Log: long double patch 2 of N. Handle it in TargetData. (I've tried to get the info right for all targets, but I'm not expert on all of them - check yours.) Modified:

[llvm-commits] [llvm] r40791 - /llvm/trunk/lib/Transforms/Scalar/GVN.cpp

2007-08-03 Thread Owen Anderson
Author: resistor Date: Fri Aug 3 14:59:35 2007 New Revision: 40791 URL: http://llvm.org/viewvc/llvm-project?rev=40791view=rev Log: Fix a subtle miscompilation. This allows 197.parser to be compiled correctly. Modified: llvm/trunk/lib/Transforms/Scalar/GVN.cpp Modified:

[llvm-commits] [llvm] r40793 - in /llvm/trunk: include/llvm/CodeGen/ValueTypes.h include/llvm/CodeGen/ValueTypes.td lib/VMCore/ValueTypes.cpp

2007-08-03 Thread Dale Johannesen
Author: johannes Date: Fri Aug 3 15:51:37 2007 New Revision: 40793 URL: http://llvm.org/viewvc/llvm-project?rev=40793view=rev Log: long double patch 3 of N. Add to MVT. Modified: llvm/trunk/include/llvm/CodeGen/ValueTypes.h llvm/trunk/include/llvm/CodeGen/ValueTypes.td

Re: [llvm-commits] [PATCH] partial codgen support for ByVal arguments

2007-08-03 Thread Chris Lattner
On Aug 3, 2007, at 9:22 AM, Rafael Espindola wrote: The attached patch implements code generation of byval arguments on the callee. For now only the case were the struct is in the stack is handle correctly. I think this patch is looking very good. As it can only affect things marked

Re: [llvm-commits] [llvm] r40792 - in /llvm/trunk/lib/Target: Alpha/AlphaTargetMachine.cpp IA64/IA64TargetMachine.cpp PowerPC/PPCSubtarget.h Sparc/SparcTargetMachine.cpp TargetData.cpp X86/X86TargetMa

2007-08-03 Thread Dan Gohman
--- llvm/trunk/lib/Target/X86/X86TargetMachine.cpp (original) +++ llvm/trunk/lib/Target/X86/X86TargetMachine.cpp Fri Aug 3 15:20:50 2007 @@ -115,8 +115,8 @@ bool is64Bit) : Subtarget(M, FS, is64Bit), DataLayout(Subtarget.is64Bit() ? -

Re: [llvm-commits] [llvm] r40792 - in /llvm/trunk/lib/Target: Alpha/AlphaTargetMachine.cpp IA64/IA64TargetMachine.cpp PowerPC/PPCSubtarget.h Sparc/SparcTargetMachine.cpp TargetData.cpp X86/X86TargetMa

2007-08-03 Thread Dale Johannesen
On Aug 3, 2007, at 2:06 PM, Dan Gohman wrote: --- llvm/trunk/lib/Target/X86/X86TargetMachine.cpp (original) +++ llvm/trunk/lib/Target/X86/X86TargetMachine.cpp Fri Aug 3 15:20:50 2007 @@ -115,8 +115,8 @@ bool is64Bit) : Subtarget(M, FS, is64Bit),

[llvm-commits] [llvm] r40796 - /llvm/trunk/lib/Target/X86/X86TargetMachine.cpp

2007-08-03 Thread Dale Johannesen
Author: johannes Date: Fri Aug 3 17:46:15 2007 New Revision: 40796 URL: http://llvm.org/viewvc/llvm-project?rev=40796view=rev Log: Make x86 long double alignment 32 for everything but Darwin (which makes size within a struct==96) Modified: llvm/trunk/lib/Target/X86/X86TargetMachine.cpp

[llvm-commits] [test-suite] r40797 - /test-suite/trunk/Makefile.programs

2007-08-03 Thread Reid Spencer
Author: reid Date: Fri Aug 3 18:49:37 2007 New Revision: 40797 URL: http://llvm.org/viewvc/llvm-project?rev=40797view=rev Log: For PR1583: Restore some sanity to building test programs. The output of CBE *must* be compiled and linked with gcc not g++, even if the source program contained

Re: [llvm-commits] [test-suite] r40797 - /test-suite/trunk/Makefile.programs

2007-08-03 Thread Chris Lattner
On Aug 3, 2007, at 4:49 PM, Reid Spencer wrote: Author: reid Date: Fri Aug 3 18:49:37 2007 New Revision: 40797 @@ -387,7 +377,7 @@ # If the program requires exception handling support, enable (potentially # expensive) support for it. ifdef REQUIRES_EH_SUPPORT -JIT_OPTS +=

Re: [llvm-commits] [llvm] r40796 - /llvm/trunk/lib/Target/X86/X86TargetMachine.cpp

2007-08-03 Thread Chris Lattner
On Aug 3, 2007, at 3:46 PM, Dale Johannesen wrote: Author: johannes Date: Fri Aug 3 17:46:15 2007 New Revision: 40796 Thanks Dale, == --- llvm/trunk/lib/Target/X86/X86TargetMachine.cpp (original) +++

Re: [llvm-commits] [llvm] r40792 - in /llvm/trunk/lib/Target: Alpha/AlphaTargetMachine.cpp IA64/IA64TargetMachine.cpp PowerPC/PPCSubtarget.h Sparc/SparcTargetMachine.cpp TargetData.cpp X86/X86TargetMa

2007-08-03 Thread Chris Lattner
+PPC_FP128TyID, /// 5: 128 bit floating point type (two 64- bits) Is there a different name for this? PowerPC isn't the only platform that uses (or could use) a double-double approach. What other target does? I've no objection to renaming if you have a more descriptive suggestion

Re: [llvm-commits] [test-suite] r40797 - /test-suite/trunk/Makefile.programs

2007-08-03 Thread Reid Spencer
On Fri, 2007-08-03 at 16:58 -0700, Chris Lattner wrote: On Aug 3, 2007, at 4:49 PM, Reid Spencer wrote: Author: reid Date: Fri Aug 3 18:49:37 2007 New Revision: 40797 @@ -387,7 +377,7 @@ # If the program requires exception handling support, enable (potentially # expensive)

[llvm-commits] [llvm] r40802 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 20:04:40 2007 New Revision: 40802 URL: http://llvm.org/viewvc/llvm-project?rev=40802view=rev Log: make RenamePassWorkList a local var instead of an ivar. Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp Modified:

[llvm-commits] [llvm] r40803 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 20:07:49 2007 New Revision: 40803 URL: http://llvm.org/viewvc/llvm-project?rev=40803view=rev Log: avoid an unneeded vector copy. This speeds up mem2reg on the testcase in PR1432 by 6% Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

[llvm-commits] [llvm] r40804 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 20:19:38 2007 New Revision: 40804 URL: http://llvm.org/viewvc/llvm-project?rev=40804view=rev Log: add a typedef, no other change. Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp Modified:

[llvm-commits] [llvm] r40805 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 20:41:18 2007 New Revision: 40805 URL: http://llvm.org/viewvc/llvm-project?rev=40805view=rev Log: refactor some code to shrink PromoteMem2Reg::run a bit Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp Modified:

[llvm-commits] [llvm] r40806 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 20:47:41 2007 New Revision: 40806 URL: http://llvm.org/viewvc/llvm-project?rev=40806view=rev Log: split rewriting of single-store allocas into its own method. Modified: llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp Modified:

[llvm-commits] [llvm] r40809 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 21:15:24 2007 New Revision: 40809 URL: http://llvm.org/viewvc/llvm-project?rev=40809view=rev Log: In mem2reg, when handling the single-store case, make sure to remove a using block from the list if we handle it. Not doing this caused us to not be able to promote

[llvm-commits] [llvm] r40810 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 21:21:22 2007 New Revision: 40810 URL: http://llvm.org/viewvc/llvm-project?rev=40810view=rev Log: switch from using a std::set to using a SmallPtrSet. This speeds up the testcase in PR1432 from 6.33s to 2.90s (2.22x) Modified:

[llvm-commits] [llvm] r40811 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 21:32:22 2007 New Revision: 40811 URL: http://llvm.org/viewvc/llvm-project?rev=40811view=rev Log: Three improvements: 1. Check for revisiting a block before checking domination, which is faster. 2. If the stored value isn't an instruction, we don't have to

[llvm-commits] [llvm] r40812 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 21:38:38 2007 New Revision: 40812 URL: http://llvm.org/viewvc/llvm-project?rev=40812view=rev Log: When we do the single-store optimization, delete both the store and the alloca so they don't get reprocessed. This speeds up PR1432 from 2.20s to 2.17s. Modified:

[llvm-commits] [llvm] r40813 - /llvm/trunk/lib/Transforms/Utils/PromoteMemoryToRegister.cpp

2007-08-03 Thread Chris Lattner
Author: lattner Date: Fri Aug 3 21:45:02 2007 New Revision: 40813 URL: http://llvm.org/viewvc/llvm-project?rev=40813view=rev Log: fix a logic bug where we wouldn't promote single store allocas if the stored value was a non-instruction value. Doh. This increase the # single store allocas from