xref: /llvm-project/llvm/test/CodeGen/AArch64/pr33172.ll (revision 5ddce70ef0e5a641d7fea95e31fc5e2439cb98cb)
1; RUN: llc < %s | FileCheck %s
2
3; CHECK-LABEL: pr33172
4; CHECK: ldp
5; CHECK: stp
6
7target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
8target triple = "arm64-apple-ios10.3.0"
9
10@main.b = external global [200 x float], align 8
11@main.x = external global [200 x float], align 8
12
13; Function Attrs: nounwind ssp
14define void @pr33172() local_unnamed_addr  {
15entry:
16  %wide.load8281058.3 = load i64, ptr getelementptr inbounds ([200 x float], ptr @main.b, i64 0, i64 12), align 8
17  %wide.load8291059.3 = load i64, ptr getelementptr inbounds ([200 x float], ptr @main.b, i64 0, i64 14), align 8
18  store i64 %wide.load8281058.3, ptr getelementptr inbounds ([200 x float], ptr @main.x, i64 0, i64 12), align 8
19  store i64 %wide.load8291059.3, ptr getelementptr inbounds ([200 x float], ptr @main.x, i64 0, i64 14), align 8
20  %wide.load8281058.4 = load i64, ptr getelementptr inbounds ([200 x float], ptr @main.b, i64 0, i64 16), align 8
21  %wide.load8291059.4 = load i64, ptr getelementptr inbounds ([200 x float], ptr @main.b, i64 0, i64 18), align 8
22  store i64 %wide.load8281058.4, ptr getelementptr inbounds ([200 x float], ptr @main.x, i64 0, i64 16), align 8
23  store i64 %wide.load8291059.4, ptr getelementptr inbounds ([200 x float], ptr @main.x, i64 0, i64 18), align 8
24  tail call void @llvm.memset.p0.i64(ptr align 8 @main.b, i8 0, i64 undef, i1 false) #2
25  ret void
26}
27
28; Function Attrs: argmemonly nounwind
29declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1) #1
30
31attributes #1 = { argmemonly nounwind }
32attributes #2 = { nounwind }
33