From 423058609122b0a582b586597f2a2771422b0afd Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Fri, 8 Aug 2008 04:11:30 +0000 Subject: Batch 6 of Mips CodeGen tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54511 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/Mips/2008-08-03-ReturnDouble.ll | 18 ++++++++++++++++++ test/CodeGen/Mips/2008-08-03-fabs64.ll | 16 ++++++++++++++++ test/CodeGen/Mips/2008-08-04-Bitconvert.ll | 18 ++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 test/CodeGen/Mips/2008-08-03-ReturnDouble.ll create mode 100644 test/CodeGen/Mips/2008-08-03-fabs64.ll create mode 100644 test/CodeGen/Mips/2008-08-04-Bitconvert.ll (limited to 'test/CodeGen') diff --git a/test/CodeGen/Mips/2008-08-03-ReturnDouble.ll b/test/CodeGen/Mips/2008-08-03-ReturnDouble.ll new file mode 100644 index 0000000..b1e999c --- /dev/null +++ b/test/CodeGen/Mips/2008-08-03-ReturnDouble.ll @@ -0,0 +1,18 @@ +; Double return in abicall (default) +; RUN: llvm-as < %s | llc -march=mips +; PR2615 + +define double @main(...) { +entry: + %retval = alloca double ; [#uses=3] + store double 0.000000e+00, double* %retval + %r = alloca double ; [#uses=1] + load double* %r ; :0 [#uses=1] + store double %0, double* %retval + br label %return + +return: ; preds = %entry + load double* %retval ; :1 [#uses=1] + ret double %1 +} + diff --git a/test/CodeGen/Mips/2008-08-03-fabs64.ll b/test/CodeGen/Mips/2008-08-03-fabs64.ll new file mode 100644 index 0000000..4ce1b1c --- /dev/null +++ b/test/CodeGen/Mips/2008-08-03-fabs64.ll @@ -0,0 +1,16 @@ +; RUN: llvm-as < %s | llc -enable-legalize-types -march=mips -f -o %t +; RUN: grep {lui.*32767} %t | count 1 +; RUN: grep {ori.*65535} %t | count 1 + +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64" +target triple = "mipsallegrexel-psp-elf" + +define double @A(double %c, double %d) nounwind readnone { +entry: + tail call double @fabs( double %c ) nounwind readnone ; :0 [#uses=1] + tail call double @fabs( double %d ) nounwind readnone ; :0 [#uses=1] + add double %0, %1 + ret double %2 +} + +declare double @fabs(double) nounwind readnone diff --git a/test/CodeGen/Mips/2008-08-04-Bitconvert.ll b/test/CodeGen/Mips/2008-08-04-Bitconvert.ll new file mode 100644 index 0000000..fca3c00 --- /dev/null +++ b/test/CodeGen/Mips/2008-08-04-Bitconvert.ll @@ -0,0 +1,18 @@ +; RUN: llvm-as < %s | llc -enable-legalize-types -march=mips -f -o %t +; RUN: grep mtc1 %t | count 1 +; RUN: grep mfc1 %t | count 1 + +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64" +target triple = "mipsallegrexel-psp-elf" + +define float @A(i32 %u) nounwind { +entry: + bitcast i32 %u to float + ret float %0 +} + +define i32 @B(float %u) nounwind { +entry: + bitcast float %u to i32 + ret i32 %0 +} -- cgit v1.1