brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · f587a96 Raw
46 lines · plain
1; RUN: llc -mtriple=thumbv7k-apple-watchos %s -o - | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-V7K2; RUN: llc -mtriple=thumbv7-linux-gnueabihf %s -o - | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-AAPCS3; RUN: llc -mtriple=thumbv7-apple-ios %s -o - | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-APCS4 5define <32 x i8> @test_consume_arg([9 x double], <32 x i8> %vec) {6; CHECK-LABEL: test_consume_arg:7 8; CHECK-V7K: add r[[BASE:[0-9]+]], sp, #169; CHECK-V7K: vld1.64 {d0, d1}, [r[[BASE]]:128]10; CHECK-V7K: add r[[BASE:[0-9]+]], sp, #3211; CHECK-V7K: vld1.64 {d2, d3}, [r[[BASE]]:128]12 13; CHECK-AAPCS: add r[[BASE:[0-9]+]], sp, #814; CHECK-AAPCS: vld1.64 {d0, d1}, [r[[BASE]]]15; CHECK-AAPCS: add r[[BASE:[0-9]+]], sp, #2416; CHECK-AAPCS: vld1.64 {d2, d3}, [r[[BASE]]]17 18; CHECK-APCS: add r[[BASE:[0-9]+]], sp, #7619; CHECK-APCS: vld1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]20; CHECK-APCS: add r[[BASE:[0-9]+]], sp, #6021; CHECK-APCS: vld1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]22 23  ret <32 x i8> %vec24}25 26define void @test_produce_arg() {27; CHECK-LABEL: test_produce_arg:28 29; CHECK-V7K: add r[[BASE:[0-9]+]], sp, #1630; CHECK-V7K: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]:128]!31; CHECK-V7K: vst1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]:128]32 33; CHECK-AAPCS: add r[[BASE:[0-9]+]], sp, #834; CHECK-AAPCS: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]!35; CHECK-AAPCS: vst1.64 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]36 37; CHECK-APCS: mov r[[R4:[0-9]+]], sp38; CHECK-APCS: mov r[[BASE:[0-9]+]], sp39; CHECK-APCS: str {{r[0-9]+}}, [r[[BASE]]], #6040; CHECK-APCS: vst1.8 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]!41; CHECK-APCS: vst1.32 {d{{[0-9]+}}, d{{[0-9]+}}}, [r[[BASE]]]42 43call <32 x i8> @test_consume_arg([9 x double] undef, <32 x i8> zeroinitializer)44  ret void45}46