[llvm-commits] [llvm] r51636 - in /llvm/trunk: lib/Transforms/Scalar/InstructionCombining.cpp test/Transforms/InstCombine/memmove.ll
Dale Johannesen
dalej at apple.com
Wed May 28 09:18:18 PDT 2008
volatile?
On May 27, 2008, at 10:30 PM, Chris Lattner wrote:
> Author: lattner
> Date: Wed May 28 00:30:41 2008
> New Revision: 51636
>
> URL: http://llvm.org/viewvc/llvm-project?rev=51636&view=rev
> Log:
> Implement PR2370: memmove(x,x,size) -> noop.
>
>
> Modified:
> llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp
> llvm/trunk/test/Transforms/InstCombine/memmove.ll
>
> Modified: llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp?rev=51636&r1=51635&r2=51636&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp
> (original)
> +++ llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp Wed
> May 28 00:30:41 2008
> @@ -9131,6 +9131,10 @@
> CI.setOperand(0, Intrinsic::getDeclaration(M, MemCpyID));
> Changed = true;
> }
> +
> + // memmove(x,x,size) -> noop.
> + if (MMI->getSource() == MMI->getDest())
> + return EraseInstFromFunction(CI);
> }
>
> // If we can determine a pointer alignment that is bigger than
> currently
>
> Modified: llvm/trunk/test/Transforms/InstCombine/memmove.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/memmove.ll?rev=51636&r1=51635&r2=51636&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- llvm/trunk/test/Transforms/InstCombine/memmove.ll (original)
> +++ llvm/trunk/test/Transforms/InstCombine/memmove.ll Wed May 28
> 00:30:41 2008
> @@ -34,3 +34,9 @@
> ret i32 0
> }
>
> +; PR2370
> +define void @test4(i8* %a) {
> + tail call void @llvm.memmove.i32( i8* %a, i8* %a, i32 100,
> i32 1 )
> + ret void
> +}
> +
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list