mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-22 07:32:48 +00:00
12ff96854d
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17514 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
618 B
LLVM
25 lines
618 B
LLVM
; 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-as < %s | 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
|
|
}
|