From: Hal Finkel Date: Sat, 30 Nov 2013 20:04:33 +0000 (+0000) Subject: Convert a PPC test from grep to FileCheck X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=6e1de2e63ee831e01b6e7eaa123e1e0e270bac76;p=oota-llvm.git Convert a PPC test from grep to FileCheck Convert this test to FileCheck, and improve it to check for the instructions it is trying to exclude instead of checking for register use (especially because grepping for r1 can be thrown off, for example, by a use of r12). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195979 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/PowerPC/stfiwx.ll b/test/CodeGen/PowerPC/stfiwx.ll index 1ad558c6abc..588e44fb28d 100644 --- a/test/CodeGen/PowerPC/stfiwx.ll +++ b/test/CodeGen/PowerPC/stfiwx.ll @@ -1,18 +1,27 @@ -; RUN: llc < %s -march=ppc32 -mtriple=powerpc-apple-darwin8 -mattr=stfiwx -o %t1 -; RUN: grep stfiwx %t1 -; RUN: not grep r1 %t1 -; RUN: llc < %s -march=ppc32 -mtriple=powerpc-apple-darwin8 -mattr=-stfiwx \ -; RUN: -o %t2 -; RUN: not grep stfiwx %t2 -; RUN: grep r1 %t2 +; RUN: llc < %s -march=ppc32 -mtriple=powerpc-apple-darwin8 -mattr=stfiwx | FileCheck %s +; RUN: llc < %s -march=ppc32 -mtriple=powerpc-apple-darwin8 -mattr=-stfiwx | FileCheck -check-prefix=CHECK-LS %s -define void @test(float %a, i32* %b) nounwind { +define void @test1(float %a, i32* %b) nounwind { +; CHECK-LABEL: @test1 +; CHECK-LS-LABEL: @test1 %tmp.2 = fptosi float %a to i32 ; [#uses=1] store i32 %tmp.2, i32* %b ret void + +; CHECK-NOT: lwz +; CHECK-NOT: stw +; CHECK: stfiwx +; CHECK: blr + +; CHECK-LS: lwz +; CHECK-LS: stw +; CHECK-LS-NOT: stfiwx +; CHECK-LS: blr } define void @test2(float %a, i32* %b, i32 %i) nounwind { +; CHECK-LABEL: @test2 +; CHECK-LS-LABEL: @test2 %tmp.2 = getelementptr i32* %b, i32 1 ; [#uses=1] %tmp.5 = getelementptr i32* %b, i32 %i ; [#uses=1] %tmp.7 = fptosi float %a to i32 ; [#uses=3] @@ -20,5 +29,15 @@ define void @test2(float %a, i32* %b, i32 %i) nounwind { store i32 %tmp.7, i32* %tmp.2 store i32 %tmp.7, i32* %b ret void + +; CHECK-NOT: lwz +; CHECK-NOT: stw +; CHECK: stfiwx +; CHECK: blr + +; CHECK-LS: lwz +; CHECK-LS: stw +; CHECK-LS-NOT: stfiwx +; CHECK-LS: blr }