29 lines
1.2 KiB
LLVM
29 lines
1.2 KiB
LLVM
%0 = type { i32, [1 x i32] }
|
|
%1 = type { i32, i32 }
|
|
%2 = type { i32, %3 }
|
|
%3 = type { %tydesc*, %4, i1, {} }
|
|
%4 = type { i1*, i1* }
|
|
%5 = type { i32, i32, i32, i32, [0 x %6*] }
|
|
%6 = type { i32, i32, i32, i32, [0 x i8] }
|
|
|
|
|
|
@_rust_crate_map_toplevel = external global %0
|
|
|
|
declare fastcc void @_rust_main(i1* nocapture, %task*, %2* nocapture, %5*);
|
|
declare i32 @rust_start(i32, i32, i32, i32)
|
|
|
|
%tydesc = type { %tydesc**, i32, i32, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*)*, void (i1*, %task*, i1*, %tydesc**, i8*, i8*, i8)* }
|
|
|
|
%task = type { i32, i32, i32, i32, i32, i32, i32, i32 }
|
|
|
|
define void @_rust_main_wrap(i1* nocapture, %task *, %2* nocapture, %5 *)
|
|
{
|
|
tail call fastcc void @_rust_main(i1* %0, %task *%1, %2* nocapture %2, %5 *%3)
|
|
ret void
|
|
}
|
|
|
|
define i32 @"MAIN"(i32, i32) {
|
|
%3 = tail call i32 @rust_start(i32 ptrtoint (void (i1*, %task*, %2*, %5*)* @_rust_main_wrap to i32), i32 %0, i32 %1, i32 ptrtoint (%0* @_rust_crate_map_toplevel to i32))
|
|
ret i32 %3
|
|
}
|