From ea7863647b1ad197ddaadab07288e5971485623e Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Tue, 20 Jul 2010 07:58:51 +0000 Subject: Fix Mips PR7473. Patch by stetorvs@gmail.com llvm-svn: 108816 --- llvm/test/CodeGen/Mips/2010-07-20-Select.ll | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 llvm/test/CodeGen/Mips/2010-07-20-Select.ll (limited to 'llvm/test') diff --git a/llvm/test/CodeGen/Mips/2010-07-20-Select.ll b/llvm/test/CodeGen/Mips/2010-07-20-Select.ll new file mode 100644 index 00000000000..8b7f9a91937 --- /dev/null +++ b/llvm/test/CodeGen/Mips/2010-07-20-Select.ll @@ -0,0 +1,21 @@ +; RUN: llc < %s -march=mips -relocation-model=static | FileCheck %s +; Fix PR7473 + +define i32 @main() nounwind readnone { +entry: + %a = alloca i32, align 4 ; [#uses=2] + %c = alloca i32, align 4 ; [#uses=2] + volatile store i32 1, i32* %a, align 4 + volatile store i32 0, i32* %c, align 4 + %0 = volatile load i32* %a, align 4 ; [#uses=1] + %1 = icmp eq i32 %0, 0 ; [#uses=1] +; CHECK: addiu $4, $zero, 3 + %iftmp.0.0 = select i1 %1, i32 3, i32 0 ; [#uses=1] + %2 = volatile load i32* %c, align 4 ; [#uses=1] + %3 = icmp eq i32 %2, 0 ; [#uses=1] +; CHECK: addu $4, $zero, $3 +; CHECK: addu $2, $5, $4 + %iftmp.2.0 = select i1 %3, i32 0, i32 5 ; [#uses=1] + %4 = add nsw i32 %iftmp.2.0, %iftmp.0.0 ; [#uses=1] + ret i32 %4 +} -- cgit v1.2.3