blob: b061f52967be25a82cbedcece97601e4a18379d0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
; RUN: llc -march=js < %s | FileCheck %s
; Handle the llvm.expect intrinsic.
; CHECK: $expval = $x;
; CHECK: $tobool = ($expval|0)!=(0);
define void @foo(i32 %x) {
entry:
%expval = call i32 @llvm.expect.i32(i32 %x, i32 0)
%tobool = icmp ne i32 %expval, 0
br i1 %tobool, label %if.then, label %if.end
if.then:
call void @callee()
br label %if.end
if.end:
ret void
}
; Function Attrs: nounwind readnone
declare i32 @llvm.expect.i32(i32, i32) #0
declare void @callee()
attributes #0 = { nounwind readnone }
|