summaryrefslogtreecommitdiff
path: root/test/Transforms/CorrelatedExprs/nullpointer.ll
blob: c6829aaeab9f346895cfea199e107c3572eacb5f (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
; a load or store of a pointer indicates that the pointer is not null.
; Any succeeding uses of the pointer should get this info
;
; XFAIL: *
; RUN: llvm-upgrade < %s | llvm-as | opt -cee -instcombine -simplifycfg | llvm-dis | not grep br

implementation   ; Functions:

declare void %foo()
declare void %bar()

int %nullptr(int* %j) {
bb0:
	store int 7, int* %j               ; j != null
	%cond220 = seteq int* %j, null     ; F
	br bool %cond220, label %bb3, label %bb4  ; direct branch

bb3:
	call void %foo()
	ret int 4                          ; Dead code
bb4:
	call void %bar()
	ret int 3                          ; Live code
}