• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: opt -hotcoldsplit -hotcoldsplit-threshold=0 -S < %s | FileCheck %s
2
3target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
4target triple = "x86_64-apple-macosx10.14.0"
5
6; CHECK-LABEL: define {{.*}}@fun
7; CHECK: call {{.*}}@fun.cold.1(
8define void @fun() {
9entry:
10  br i1 undef, label %if.then, label %if.else
11
12if.then:
13  ; This will be marked by the inverse DFS on sink-predecesors.
14  br label %sink
15
16sink:
17  call void @sink()
18
19  ; Do not allow the forward-DFS on sink-successors to mark the block again.
20  br i1 undef, label %if.then, label %if.then.exit
21
22if.then.exit:
23  ret void
24
25if.else:
26  ret void
27}
28
29declare void @sink() cold
30