dead argument removal part one.
This commit is contained in:
parent
db47cb5c13
commit
94129c4216
2 changed files with 10 additions and 6 deletions
|
@ -7706,7 +7706,7 @@ fn find_main_fn(&@crate_ctxt cx) -> ValueRef {
|
||||||
|
|
||||||
fn trans_main_fn(@local_ctxt cx, ValueRef llcrate, ValueRef crate_map) {
|
fn trans_main_fn(@local_ctxt cx, ValueRef llcrate, ValueRef crate_map) {
|
||||||
auto T_main_args = [T_int(), T_int()];
|
auto T_main_args = [T_int(), T_int()];
|
||||||
auto T_rust_start_args = [T_int(), T_int(), T_int(), T_int(), T_int()];
|
auto T_rust_start_args = [T_int(), T_int(), T_int(), T_int()];
|
||||||
|
|
||||||
auto main_name;
|
auto main_name;
|
||||||
if (str::eq(std::os::target_os(), "win32")) {
|
if (str::eq(std::os::target_os(), "win32")) {
|
||||||
|
@ -7718,7 +7718,7 @@ fn trans_main_fn(@local_ctxt cx, ValueRef llcrate, ValueRef crate_map) {
|
||||||
auto llmain =
|
auto llmain =
|
||||||
decl_cdecl_fn(cx.ccx.llmod, main_name, T_fn(T_main_args, T_int()));
|
decl_cdecl_fn(cx.ccx.llmod, main_name, T_fn(T_main_args, T_int()));
|
||||||
|
|
||||||
auto llrust_start = decl_cdecl_fn(cx.ccx.llmod, "rust_start",
|
auto llrust_start = decl_cdecl_fn(cx.ccx.llmod, "new_rust_start",
|
||||||
T_fn(T_rust_start_args, T_int()));
|
T_fn(T_rust_start_args, T_int()));
|
||||||
|
|
||||||
auto llargc = llvm::LLVMGetParam(llmain, 0u);
|
auto llargc = llvm::LLVMGetParam(llmain, 0u);
|
||||||
|
@ -7737,8 +7737,7 @@ fn trans_main_fn(@local_ctxt cx, ValueRef llcrate, ValueRef crate_map) {
|
||||||
llvm::LLVMAppendBasicBlock(llmain, str::buf(""));
|
llvm::LLVMAppendBasicBlock(llmain, str::buf(""));
|
||||||
auto b = new_builder(llbb);
|
auto b = new_builder(llbb);
|
||||||
|
|
||||||
auto start_args = [p2i(llrust_main), p2i(llcrate), llargc, llargv,
|
auto start_args = [p2i(llrust_main), llargc, llargv, p2i(crate_map)];
|
||||||
p2i(crate_map)];
|
|
||||||
|
|
||||||
b.Ret(b.Call(llrust_start, start_args));
|
b.Ret(b.Call(llrust_start, start_args));
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,8 +77,7 @@ command_line_args : public dom_owned<command_line_args>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
extern "C" CDECL int
|
extern "C" CDECL int
|
||||||
rust_start(uintptr_t main_fn, rust_crate const *crate, int argc,
|
new_rust_start(uintptr_t main_fn, int argc, char **argv, void* crate_map) {
|
||||||
char **argv, void* crate_map) {
|
|
||||||
|
|
||||||
update_log_settings(crate_map, getenv("RUST_LOG"));
|
update_log_settings(crate_map, getenv("RUST_LOG"));
|
||||||
rust_srv *srv = new rust_srv();
|
rust_srv *srv = new rust_srv();
|
||||||
|
@ -118,6 +117,12 @@ rust_start(uintptr_t main_fn, rust_crate const *crate, int argc,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" CDECL int
|
||||||
|
rust_start(uintptr_t main_fn, rust_crate const *crate, int argc,
|
||||||
|
char **argv, void* crate_map) {
|
||||||
|
return new_rust_start(main_fn, argc, argv, crate_map);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Local Variables:
|
// Local Variables:
|
||||||
// mode: C++
|
// mode: C++
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue