brintos

brintos / llvm-project-archived public Read only

0
0
Text · 934 B · 347a4de Raw
27 lines · plain
1; RUN: llc -mtriple thumbv7-apple-ios -verify-machineinstrs -o - %s | FileCheck %s2 3; Make sure we emit the loads in ascending order, and form a vldmia.4;5; See vldm-liveness.mir for the bug this file originally testing.6 7define arm_aapcs_vfpcc <4 x float> @foo(ptr %ptr) {8; CHECK-LABEL: foo:9; CHECK: vldmia r0, {s0, s1}10; CHECK: vldr s3, [r0, #8]11; CHECK: vldr s2, [r0, #16]12   %val0 = load float, ptr %ptr13   %off1 = getelementptr float, ptr %ptr, i32 114   %val1 = load float, ptr %off115   %off4 = getelementptr float, ptr %ptr, i32 416   %val4 = load float, ptr %off417   %off2 = getelementptr float, ptr %ptr, i32 218   %val2 = load float, ptr %off219 20   %vec1 = insertelement <4 x float> undef, float %val0, i32 021   %vec2 = insertelement <4 x float> %vec1, float %val1, i32 122   %vec3 = insertelement <4 x float> %vec2, float %val4, i32 223   %vec4 = insertelement <4 x float> %vec3, float %val2, i32 324 25   ret <4 x float> %vec426}27