forked from OSchip/llvm-project
28 lines
757 B
LLVM
28 lines
757 B
LLVM
; RUN: opt < %s -constprop -S -o - | FileCheck %s
|
|
|
|
; Function Attrs: minsize norecurse nounwind optsize readnone
|
|
define void @foo1() #0 {
|
|
entry:
|
|
ret void
|
|
}
|
|
|
|
; Function Attrs: minsize norecurse nounwind optsize readnone
|
|
define void @foo2() align 4 {
|
|
entry:
|
|
ret void
|
|
}
|
|
|
|
; Function Attrs: minsize nounwind optsize
|
|
define i32 @main() local_unnamed_addr #1 {
|
|
entry:
|
|
; CHECK: ptrtoint
|
|
%call = tail call i32 bitcast (i32 (...)* @process to i32 (i32)*)(i32 and (i32 ptrtoint (void ()* @foo1 to i32), i32 2)) #3
|
|
; CHECK-NEXT: ptrtoint
|
|
%call2 = tail call i32 bitcast (i32 (...)* @process to i32 (i32)*)(i32 and (i32 ptrtoint (void ()* @foo2 to i32), i32 2)) #3
|
|
ret i32 0
|
|
}
|
|
|
|
; Function Attrs: minsize optsize
|
|
declare i32 @process(...) local_unnamed_addr #2
|
|
|