[DAG] TransformFPLoadStorePair - early out if we're not loading a simple type
[llvm-project.git] / llvm / test / Transforms / GVN / pr14166.ll
blob6dc831a6e8c3506d80b1af14f787f8c9d4f68afc
1 ; RUN: opt -disable-basic-aa -passes=gvn -S < %s | FileCheck %s
2 target datalayout = "e-p:32:32:32"
3 target triple = "i386-pc-linux-gnu"
4 define <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
21 declare void @anything(ptr)