diff options
Diffstat (limited to 'llvm/test/CodeGen/ARM')
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments2.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments3.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments4.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments5.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments6.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments7.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/arguments8.ll | 9 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/formal.ll | 8 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f32_arg2.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f32_arg5.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f64_arg2.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f64_arg_reg_split.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f64_arg_split.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_f64_arg_stack.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_i128_arg2.ii | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_i64_arg2.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_i64_arg3.ll | 6 | ||||
-rw-r--r-- | llvm/test/CodeGen/ARM/ret_i64_arg_split.ll | 6 |
18 files changed, 131 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/ARM/arguments2.ll b/llvm/test/CodeGen/ARM/arguments2.ll new file mode 100644 index 00000000000..eb7e45b4f36 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments2.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define i32 @f(i32 %a, i128 %b) { + %tmp = call i32 @g(i128 %b) + ret i32 %tmp +} + +declare i32 @g(i128) diff --git a/llvm/test/CodeGen/ARM/arguments3.ll b/llvm/test/CodeGen/ARM/arguments3.ll new file mode 100644 index 00000000000..97c040521d8 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments3.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define i64 @f(i32 %a, i128 %b) { + %tmp = call i64 @g(i128 %b) + ret i64 %tmp +} + +declare i64 @g(i128) diff --git a/llvm/test/CodeGen/ARM/arguments4.ll b/llvm/test/CodeGen/ARM/arguments4.ll new file mode 100644 index 00000000000..63ba64b27f1 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments4.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define float @f(i32 %a, i128 %b) { + %tmp = call float @g(i128 %b) + ret float %tmp +} + +declare float @g(i128) diff --git a/llvm/test/CodeGen/ARM/arguments5.ll b/llvm/test/CodeGen/ARM/arguments5.ll new file mode 100644 index 00000000000..2000ff7b4a8 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments5.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define double @f(i32 %a, i128 %b) { + %tmp = call double @g(i128 %b) + ret double %tmp +} + +declare double @g(i128) diff --git a/llvm/test/CodeGen/ARM/arguments6.ll b/llvm/test/CodeGen/ARM/arguments6.ll new file mode 100644 index 00000000000..a18c621d143 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments6.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define i128 @f(i32 %a, i128 %b) { + %tmp = call i128 @g(i128 %b) + ret i128 %tmp +} + +declare i128 @g(i128) diff --git a/llvm/test/CodeGen/ARM/arguments7.ll b/llvm/test/CodeGen/ARM/arguments7.ll new file mode 100644 index 00000000000..489ffd41604 --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments7.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define double @f(i32 %a1, i32 %a2, i32 %a3, i32 %a4, i32 %a5, double %b) { + %tmp = call double @g(i32 %a2, i32 %a3, i32 %a4, i32 %a5, double %b) + ret double %tmp +} + +declare double @g(double) diff --git a/llvm/test/CodeGen/ARM/arguments8.ll b/llvm/test/CodeGen/ARM/arguments8.ll new file mode 100644 index 00000000000..5ff7e09548e --- /dev/null +++ b/llvm/test/CodeGen/ARM/arguments8.ll @@ -0,0 +1,9 @@ +; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi +; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin + +define i64 @f(i32 %a1, i32 %a2, i32 %a3, i32 %a4, i32 %a5, i64 %b) { + %tmp = call i64 @g(i32 %a2, i32 %a3, i32 %a4, i32 %a5, i64 %b) + ret i64 %tmp +} + +declare i64 @g(i64) diff --git a/llvm/test/CodeGen/ARM/formal.ll b/llvm/test/CodeGen/ARM/formal.ll new file mode 100644 index 00000000000..6d6d108f328 --- /dev/null +++ b/llvm/test/CodeGen/ARM/formal.ll @@ -0,0 +1,8 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +declare void @bar(i64 %x, i64 %y) + +define void @foo() { + call void @bar(i64 2, i64 3) + ret void +} diff --git a/llvm/test/CodeGen/ARM/ret_f32_arg2.ll b/llvm/test/CodeGen/ARM/ret_f32_arg2.ll new file mode 100644 index 00000000000..287d92b9eb6 --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f32_arg2.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define float @test_f32(float %a1, float %a2) { + ret float %a2 +} + diff --git a/llvm/test/CodeGen/ARM/ret_f32_arg5.ll b/llvm/test/CodeGen/ARM/ret_f32_arg5.ll new file mode 100644 index 00000000000..3418be93e1e --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f32_arg5.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define float @test_f32_arg5(float %a1, float %a2, float %a3, float %a4, float %a5) { + ret float %a5 +} + diff --git a/llvm/test/CodeGen/ARM/ret_f64_arg2.ll b/llvm/test/CodeGen/ARM/ret_f64_arg2.ll new file mode 100644 index 00000000000..66848d5fb49 --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f64_arg2.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define double @test_f64(double %a1, double %a2) { + ret double %a2 +} + diff --git a/llvm/test/CodeGen/ARM/ret_f64_arg_reg_split.ll b/llvm/test/CodeGen/ARM/ret_f64_arg_reg_split.ll new file mode 100644 index 00000000000..626ee6fb137 --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f64_arg_reg_split.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mcpu=arm8 -mattr=+vfp2 + +define double @test_double_arg_reg_split(i32 %a1, double %a2) { + ret double %a2 +} + diff --git a/llvm/test/CodeGen/ARM/ret_f64_arg_split.ll b/llvm/test/CodeGen/ARM/ret_f64_arg_split.ll new file mode 100644 index 00000000000..b03b604beee --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f64_arg_split.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define double @test_double_arg_split(i64 %a1, i32 %a2, double %a3) { + ret double %a3 +} + diff --git a/llvm/test/CodeGen/ARM/ret_f64_arg_stack.ll b/llvm/test/CodeGen/ARM/ret_f64_arg_stack.ll new file mode 100644 index 00000000000..ba3ec7fb751 --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_f64_arg_stack.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define double @test_double_arg_stack(i64 %a1, i32 %a2, i32 %a3, double %a4) { + ret double %a4 +} + diff --git a/llvm/test/CodeGen/ARM/ret_i128_arg2.ii b/llvm/test/CodeGen/ARM/ret_i128_arg2.ii new file mode 100644 index 00000000000..0fe98e6b70f --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_i128_arg2.ii @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define i128 @test_i128(i128 %a1, i128 %a2, i128 %a3) { + ret i128 %a3 +} + diff --git a/llvm/test/CodeGen/ARM/ret_i64_arg2.ll b/llvm/test/CodeGen/ARM/ret_i64_arg2.ll new file mode 100644 index 00000000000..b015a96e0bf --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_i64_arg2.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define i64 @test_i64(i64 %a1, i64 %a2) { + ret i64 %a2 +} + diff --git a/llvm/test/CodeGen/ARM/ret_i64_arg3.ll b/llvm/test/CodeGen/ARM/ret_i64_arg3.ll new file mode 100644 index 00000000000..5dfecca319a --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_i64_arg3.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define i64 @test_i64_arg3(i64 %a1, i64 %a2, i64 %a3) { + ret i64 %a3 +} + diff --git a/llvm/test/CodeGen/ARM/ret_i64_arg_split.ll b/llvm/test/CodeGen/ARM/ret_i64_arg_split.ll new file mode 100644 index 00000000000..5bd5cb2a230 --- /dev/null +++ b/llvm/test/CodeGen/ARM/ret_i64_arg_split.ll @@ -0,0 +1,6 @@ +; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 + +define i64 @test_i64_arg_split(i64 %a1, i32 %a2, i64 %a3) { + ret i64 %a3 +} + |