mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
6117699d7e
Remove the concepts of "forward" and "general" mass distributions, which was wrong. The split might have made sense in an early version of the algorithm, but it's definitely wrong now. <rdar://problem/14292693> llvm-svn: 207195
28 lines
725 B
LLVM
28 lines
725 B
LLVM
; RUN: opt < %s -analyze -block-freq | FileCheck %s
|
|
|
|
define void @double_backedge(i1 %x) {
|
|
; CHECK-LABEL: Printing analysis {{.*}} for function 'double_backedge':
|
|
; CHECK-NEXT: block-frequency-info: double_backedge
|
|
entry:
|
|
; CHECK-NEXT: entry: float = 1.0, int = [[ENTRY:[0-9]+]]
|
|
br label %loop
|
|
|
|
loop:
|
|
; CHECK-NEXT: loop: float = 10.0,
|
|
br i1 %x, label %exit, label %loop.1, !prof !0
|
|
|
|
loop.1:
|
|
; CHECK-NEXT: loop.1: float = 9.0,
|
|
br i1 %x, label %loop, label %loop.2, !prof !1
|
|
|
|
loop.2:
|
|
; CHECK-NEXT: loop.2: float = 5.0,
|
|
br label %loop
|
|
|
|
exit:
|
|
; CHECK-NEXT: exit: float = 1.0, int = [[ENTRY]]
|
|
ret void
|
|
}
|
|
!0 = metadata !{metadata !"branch_weights", i32 1, i32 9}
|
|
!1 = metadata !{metadata !"branch_weights", i32 4, i32 5}
|