[AMDGPU] Add True16 register classes.
[llvm-project.git] / llvm / test / Transforms / Inline / ML / skip-unreachable.ll
blob47a75c3ad898bf6b2ffcd522aea73e250f784071
1 ; Test skipping inlining when the callsite is unreachable (for both mandatory
2 ; and non-mandatory cases)
3 ; REQUIRES: llvm_inliner_model_autogenerated
4 ; RUN: opt -passes=inliner-ml-advisor-release -S < %s | FileCheck %s --check-prefix=CHECK
6 target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
7 target triple = "x86_64-grtev4-linux-gnu"
9 ; Mandatory case
10 define i32 @f1() {
11 entry:
12   br label %exit
13 some_bb:  ; unreachable - has no predecessors
14   %r = call i32 @f2()
15   br label %exit
16 exit:
17   ret i32 1
20 define i32 @f2() #0 {
21   ret i32 2
24 ; Non-mandatory case
25 define i32 @f3() {
26 entry:
27   br label %exit
28 some_bb:  ; unreachable - has no predecessors
29   %r = call i32 @f4()
30   br label %exit
31 exit:
32   ret i32 1
35 define i32 @f4() {
36   ret i32 2
39 attributes #0 = { alwaysinline }
41 ; CHECK-LABEL: @f1
42 ; CHECK-LABEL: some_bb
43 ; CHECK-NEXT: call i32 @f2
44 ; CHECK-LABEL: @f3
45 ; CHECK-LABEL: some_bb
46 ; CHECK-NEXT: call i32 @f4