OLD | NEW |
1 ; Tests validating the vfp calling convention for ARM32. | 1 ; Tests validating the vfp calling convention for ARM32. |
2 ; | 2 ; |
3 ; RUN: %if --need=target_ARM32 --need=allow_dump \ | 3 ; RUN: %if --need=target_ARM32 \ |
4 ; RUN: --command %p2i --filetype=asm --assemble \ | 4 ; RUN: --command %p2i --filetype=obj \ |
5 ; RUN: --disassemble --target arm32 -i %s --args -O2 --skip-unimplemented \ | 5 ; RUN: --disassemble --target arm32 -i %s --args -O2 \ |
6 ; RUN: -allow-externally-defined-symbols \ | 6 ; RUN: -allow-externally-defined-symbols \ |
7 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ | 7 ; RUN: | %if --need=target_ARM32 \ |
8 ; RUN: --command FileCheck %s | 8 ; RUN: --command FileCheck %s |
9 ; RUN: %if --need=target_ARM32 --need=allow_dump \ | 9 ; RUN: %if --need=target_ARM32 \ |
10 ; RUN: --command %p2i --filetype=asm --assemble --disassemble --target arm32 \ | 10 ; RUN: --command %p2i --filetype=obj --disassemble --target arm32 \ |
11 ; RUN: -i %s --args -Om1 --skip-unimplemented \ | 11 ; RUN: -i %s --args -Om1 \ |
12 ; RUN: -allow-externally-defined-symbols \ | 12 ; RUN: -allow-externally-defined-symbols \ |
13 ; RUN: | %if --need=target_ARM32 --need=allow_dump \ | 13 ; RUN: | %if --need=target_ARM32 \ |
14 ; RUN: --command FileCheck %s | 14 ; RUN: --command FileCheck %s |
15 | 15 |
16 ; Boring tests ensuring float arguments are allocated "correctly." Unfortunately | 16 ; Boring tests ensuring float arguments are allocated "correctly." Unfortunately |
17 ; this test cannot verify whether the right arguments are being allocated to the | 17 ; this test cannot verify whether the right arguments are being allocated to the |
18 ; right register. | 18 ; right register. |
19 declare void @float1(float %p0) | 19 declare void @float1(float %p0) |
20 declare void @float2(float %p0, float %p1) | 20 declare void @float2(float %p0, float %p1) |
21 declare void @float3(float %p0, float %p1, float %p2) | 21 declare void @float3(float %p0, float %p1, float %p2) |
22 declare void @float4(float %p0, float %p1, float %p2, float %p3) | 22 declare void @float4(float %p0, float %p1, float %p2, float %p3) |
23 declare void @float5(float %p0, float %p1, float %p2, float %p3, float %p4) | 23 declare void @float5(float %p0, float %p1, float %p2, float %p3, float %p4) |
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
567 ; CHECK-DAG: vstr d{{.*}}, [sp] | 567 ; CHECK-DAG: vstr d{{.*}}, [sp] |
568 ; CHECK-DAG: vstr s{{.*}}, [sp, #8] | 568 ; CHECK-DAG: vstr s{{.*}}, [sp, #8] |
569 ; CHECK-DAG: vstr d{{.*}}, [sp, #16] | 569 ; CHECK-DAG: vstr d{{.*}}, [sp, #16] |
570 ; CHECK-DAG: vstr s{{.*}}, [sp, #24] | 570 ; CHECK-DAG: vstr s{{.*}}, [sp, #24] |
571 ; CHECK: bl {{.*}} testFDDDDDDDDFD | 571 ; CHECK: bl {{.*}} testFDDDDDDDDFD |
572 | 572 |
573 ret void | 573 ret void |
574 } | 574 } |
575 | 575 |
576 ; TODO(jpp): add tests for stack alignment. | 576 ; TODO(jpp): add tests for stack alignment. |
OLD | NEW |