• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; REQUIRES: asserts
2; RUN: opt -hotcoldsplit -debug-only=hotcoldsplit -S < %s -o /dev/null 2>&1 | FileCheck %s
3
4declare void @sink() cold
5
6@g = global i32 0
7
8define i32 @foo(i32 %arg) {
9entry:
10  br i1 undef, label %cold, label %exit
11
12cold:
13  ; CHECK: Applying penalty for: 1 output
14  ; CHECK: Applying penalty for: 1 non-region successors
15  %local = load i32, i32* @g
16  call void @sink()
17  br label %exit
18
19exit:
20  %p = phi i32 [ %local, %cold ], [ 0, %entry ]
21  ret i32 %p
22}
23