From fabde10209420a985b11119d55791c98fe014af7 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Mon, 13 Apr 2015 18:47:19 +0000 Subject: [PATCH] Use FileCheck for test git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234774 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/Mips/dagcombine_crash.ll | 30 +++++++++++++++------------ 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/test/CodeGen/Mips/dagcombine_crash.ll b/test/CodeGen/Mips/dagcombine_crash.ll index 1fdf09b26dd..6fcf2b4e68b 100644 --- a/test/CodeGen/Mips/dagcombine_crash.ll +++ b/test/CodeGen/Mips/dagcombine_crash.ll @@ -1,21 +1,25 @@ -; RUN: llc -o - %s +; RUN: llc -o - %s | FileCheck %s ; The selection DAG select(select()) normalisation crashed for different types ; on the condition inputs. target datalayout = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64" target triple = "mips--" -define i64 @foobar(double %a) #0 { +; CHECK-LABEL: foobar +; CHECK: sltiu ${{[0-9]*}}, ${{[0-9]*}}, 42 +; CHECK: sltiu ${{[0-9]*}}, ${{[0-9]*}}, 23 +; CHECK: and ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}} +; CHECK: sltu ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}} +; CHECK: addiu ${{[0-9]*}}, ${{[0-9]*}}, -1 +; CHECK: movn ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}} +; CHECK: jr $ra +; CHECK: move ${{[0-9]*}}, ${{[0-9]*}} +define i64 @foobar(i32 %arg) #0 { entry: - %0 = bitcast double %a to i64 - %trunc = trunc i64 %0 to i32 - %and = and i32 %trunc, 32767 - %sub = add nsw i32 %and, -16383 - %cmp = icmp ugt i32 %and, 16382 - %and5 = and i32 %trunc, 32768 - %tobool = icmp eq i32 %and5, 0 - %or = and i1 %cmp, %tobool - %cmp6 = icmp ugt i32 %sub, 64 - %sext = sext i1 %cmp6 to i64 - %retval.0 = select i1 %or, i64 %sext, i64 0 + %cmp0 = icmp ult i32 %arg, 23 + %cmp1 = icmp ult i32 %arg, 42 + %and = and i1 %cmp0, %cmp1 + %cmp2 = icmp ugt i32 %arg, 0 + %sext = sext i1 %cmp1 to i64 + %retval.0 = select i1 %and, i64 %sext, i64 0 ret i64 %retval.0 } -- 2.34.1