From b085181258bf2566e7b58389591acc213b0b2927 Mon Sep 17 00:00:00 2001 From: Mon P Wang Date: Mon, 20 Dec 2010 01:06:23 +0000 Subject: Test case for r122215 when InstCombine optimizes memset git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122216 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/Transforms/InstCombine/memset2.ll | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 test/Transforms/InstCombine/memset2.ll (limited to 'test/Transforms/InstCombine/memset2.ll') diff --git a/test/Transforms/InstCombine/memset2.ll b/test/Transforms/InstCombine/memset2.ll new file mode 100644 index 0000000000..87639f0d6a --- /dev/null +++ b/test/Transforms/InstCombine/memset2.ll @@ -0,0 +1,15 @@ +; RUN: opt < %s -instcombine -S | FileCheck %s + +; Test to check that instcombine doesn't drop the address space when optimizing +; memset. +%struct.Moves = type { [9 x i8], i8, i8, i8, [5 x i8] } + +define i32 @test(%struct.Moves addrspace(1)* nocapture %moves) { +entry: +; CHECK: bitcast i8 addrspace(1)* %gep to i64 addrspace(1)* + %gep = getelementptr inbounds %struct.Moves addrspace(1)* %moves, i32 1, i32 0, i32 9 + call void @llvm.memset.p1i8.i64(i8 addrspace(1)* %gep, i8 0, i64 8, i32 1, i1 false) + ret i32 0 +} + +declare void @llvm.memset.p1i8.i64(i8addrspace(1)* nocapture, i8, i64, i32, i1) nounwind -- cgit v1.2.3