xref: /llvm-project/llvm/test/Transforms/GVN/pr14166.ll (revision 23abf931386002fb9d2c11d026846475c224c641)
1; RUN: opt -disable-basic-aa -passes=gvn -S < %s | FileCheck %s
2target datalayout = "e-p:32:32:32"
3target triple = "i386-pc-linux-gnu"
4define <2 x i32> @test1() {
5  %v1 = alloca <2 x i32>
6  call void @anything(ptr %v1)
7  %v2 = load <2 x i32>, ptr %v1
8  %v3 = inttoptr <2 x i32> %v2 to <2 x ptr>
9  store <2 x ptr> %v3, ptr %v1
10  %v5 = load <2 x i32>, ptr %v1
11  ret <2 x i32> %v5
12; CHECK-LABEL: @test1(
13; CHECK: %v1 = alloca <2 x i32>
14; CHECK: call void @anything(ptr %v1)
15; CHECK: %v2 = load <2 x i32>, ptr %v1
16; CHECK: %v3 = inttoptr <2 x i32> %v2 to <2 x ptr>
17; CHECK: store <2 x ptr> %v3, ptr %v1
18; CHECK: ret <2 x i32> %v2
19}
20
21declare void @anything(ptr)
22
23