64 lines · plain
1; RUN: opt < %s -mtriple=powerpc64le-ibm-linux-gnu -S -passes=inline | FileCheck %s2; RUN: opt < %s -mtriple=powerpc64le-ibm-linux-gnu -S -passes='cgscc(inline)' | FileCheck %s3 4target datalayout = "E-m:e-i64:64-n32:64"5target triple = "powerpc64le-ibm-linux-gnu"6 7declare void @inlined()8 9define void @explicit() #0 {10; CHECK-LABEL: explicit11; CHECK: entry12; CHECK-NEXT: call void @not_compatible1()13; CHECK-NEXT: call void @inlined()14entry:15 call void @not_compatible1()16 call void @compatible1()17 ret void18}19 20define void @not_compatible1() #1 {21entry:22 call i32 @inlined()23 ret void24}25 26define void @compatible1() #0 {27entry:28 call void @inlined()29 ret void 30}31 32define void @default() #3 {33; CHECK-LABEL: default34; CHECK: entry35; CHECK-NEXT: call void @not_compatible2()36; CHECK-NEXT: call void @inlined()37entry:38 call void @not_compatible2()39 call void @compatible2()40 ret void41}42 43define void @not_compatible2() #4 {44entry:45 call void @inlined()46 ret void47}48 49define void @compatible2() #5 {50entry:51 call void @inlined()52 ret void 53}54 55; explicit56attributes #0 = { "target-cpu"="pwr7" "target-features"="+allow-unaligned-fp-access" }57attributes #1 = { "target-cpu"="pwr7" "target-features"="-allow-unaligned-fp-access" }58 59; pwr7 by default implies +vsx60attributes #3 = { "target-cpu"="pwr7" }61attributes #4 = { "target-cpu"="pwr7" "target-features"="-vsx" }62attributes #5 = { "target-cpu"="pwr7" "target-features"="+vsx" }63 64