From f0c6e3780d21c19e77a0e5238955c5927b1ac12d Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Tue, 7 Dec 2010 19:00:20 +0000 Subject: Match a pattern generated by a dag combiner opt where: (select (load (load tga0)) (load tga1)) => (load (select (load tga0) tga1)) Thanks to Akira for pointing that. llvm-svn: 121163 --- llvm/test/CodeGen/Mips/cmov.ll | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100755 llvm/test/CodeGen/Mips/cmov.ll (limited to 'llvm/test') diff --git a/llvm/test/CodeGen/Mips/cmov.ll b/llvm/test/CodeGen/Mips/cmov.ll new file mode 100755 index 00000000000..7d3e0252e3c --- /dev/null +++ b/llvm/test/CodeGen/Mips/cmov.ll @@ -0,0 +1,15 @@ +; RUN: llc -march=mips -mcpu=4ke < %s | FileCheck %s + +@i1 = global [3 x i32] [i32 1, i32 2, i32 3], align 4 +@i3 = common global i32* null, align 4 + +; CHECK: lw $3, %got(i3)($gp) +; CHECK: addiu $5, $gp, %got(i1) +define i32* @cmov1(i32 %s) nounwind readonly { +entry: + %tobool = icmp ne i32 %s, 0 + %tmp1 = load i32** @i3, align 4 + %cond = select i1 %tobool, i32* getelementptr inbounds ([3 x i32]* @i1, i32 0, i32 0), i32* %tmp1 + ret i32* %cond +} + -- cgit v1.2.3