Re: [llvm-commits] [llvm] r41489 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGISel.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/memmove-0.ll test/CodeGen/X86/memmove-1.ll tes

2007-08-27 Thread Chris Lattner
On Aug 27, 2007, at 9:26 AM, Dan Gohman wrote: > Author: djg > Date: Mon Aug 27 11:26:13 2007 > New Revision: 41489 > > URL: http://llvm.org/viewvc/llvm-project?rev=41489&view=rev > Log: > If the source and destination pointers in an llvm.memmove are known > to not alias each other, it can be tra

Re: [llvm-commits] [llvm] r41489 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGISel.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/memmove-0.ll test/CodeGen/X86/memmove-1.ll tes

2007-08-27 Thread Dan Gohman
> This is nifty, but shouldn't this be done at the LLVM IR level? I > can't think of cases where lowering would create new memmove calls. I'm not aware of any cases where memmove vs. memcpy matters before codegen currently. If it were done at the LLVM IR level, would it be too trivial to be in

Re: [llvm-commits] [llvm] r41489 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGISel.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/memmove-0.ll test/CodeGen/X86/memmove-1.ll tes

2007-08-27 Thread Tanya Lattner
Dan, The memmove tests you added are failing on x86 darwin. Here is the output from one of the tests: lattner% llvm-as < test/CodeGen/X86/memmove-0.ll | llc -march=x86 .text .align 4,0x90 .globl _foo _foo: subl$12, %esp movl20(%esp), %eax

Re: [llvm-commits] [llvm] r41489 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGISel.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/memmove-0.ll test/CodeGen/X86/memmove-1.ll tes

2007-08-27 Thread Chris Lattner
On Aug 27, 2007, at 10:46 AM, Dan Gohman wrote: >> This is nifty, but shouldn't this be done at the LLVM IR level? I >> can't think of cases where lowering would create new memmove calls. > > I'm not aware of any cases where memmove vs. memcpy matters before > codegen currently. If it were done

Re: [llvm-commits] [llvm] r41489 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGISel.h lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp test/CodeGen/X86/memmove-0.ll test/CodeGen/X86/memmove-1.ll tes

2007-08-28 Thread Rafael Espindola
> I'm not aware of any cases where memmove vs. memcpy matters before > codegen currently. If it were done at the LLVM IR level, would it be > too trivial to be in a pass by itself, or would you want to add it, > along with an addRequired, to some existing pass? Doing it at the LLVM IL would also b