45 lines · plain
1; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu -mattr=stfiwx | FileCheck %s2; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu -mattr=-stfiwx | FileCheck -check-prefix=CHECK-LS %s3 4define void @test1(float %a, ptr %b) nounwind {5; CHECK-LABEL: @test16; CHECK-LS-LABEL: @test17 %tmp.2 = fptosi float %a to i32 ; <i32> [#uses=1]8 store i32 %tmp.2, ptr %b9 ret void10 11; CHECK: stwu12; CHECK-NOT: lwz13; CHECK-NOT: stw14; CHECK: stfiwx15; CHECK: blr16 17; CHECK-LS: lwz18; CHECK-LS: stw19; CHECK-LS-NOT: stfiwx20; CHECK-LS: blr21}22 23define void @test2(float %a, ptr %b, i32 %i) nounwind {24; CHECK-LABEL: @test225; CHECK-LS-LABEL: @test226 %tmp.2 = getelementptr i32, ptr %b, i32 1 ; <ptr> [#uses=1]27 %tmp.5 = getelementptr i32, ptr %b, i32 %i ; <ptr> [#uses=1]28 %tmp.7 = fptosi float %a to i32 ; <i32> [#uses=3]29 store i32 %tmp.7, ptr %tmp.530 store i32 %tmp.7, ptr %tmp.231 store i32 %tmp.7, ptr %b32 ret void33 34; CHECK: stwu35; CHECK-NOT: lwz36; CHECK-NOT: stw37; CHECK: stfiwx38; CHECK: blr39 40; CHECK-LS: lwz41; CHECK-LS: stw42; CHECK-LS-NOT: stfiwx43; CHECK-LS: blr44}45