From c7f0ca6063022e244ab6a2d4e85db1c13867b084 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Wed, 9 Nov 2011 15:56:28 -0800 Subject: [PATCH] Remove native "x86stdcall" ABI --- src/comp/metadata/tydecode.rs | 1 - src/comp/metadata/tyencode.rs | 1 - src/comp/middle/trans.rs | 18 +++--------------- src/comp/syntax/ast.rs | 1 - src/comp/syntax/parse/parser.rs | 2 -- src/comp/syntax/print/pprust.rs | 1 - 6 files changed, 3 insertions(+), 21 deletions(-) diff --git a/src/comp/metadata/tydecode.rs b/src/comp/metadata/tydecode.rs index 5f34f1b52eb4..619303ff807f 100644 --- a/src/comp/metadata/tydecode.rs +++ b/src/comp/metadata/tydecode.rs @@ -260,7 +260,6 @@ fn parse_ty(st: @pstate, sd: str_def) -> ty::t { let abi; alt next(st) as char { 'i' { abi = ast::native_abi_rust_intrinsic; } - 's' { abi = ast::native_abi_x86stdcall; } 'C' { abi = ast::native_abi_c_stack_cdecl; } 'S' { abi = ast::native_abi_c_stack_stdcall; } } diff --git a/src/comp/metadata/tyencode.rs b/src/comp/metadata/tyencode.rs index 79298d29757b..64c6b5587980 100644 --- a/src/comp/metadata/tyencode.rs +++ b/src/comp/metadata/tyencode.rs @@ -143,7 +143,6 @@ fn enc_sty(w: io::writer, cx: @ctxt, st: ty::sty) { w.write_char('N'); alt abi { native_abi_rust_intrinsic. { w.write_char('i'); } - native_abi_x86stdcall. { w.write_char('s'); } native_abi_c_stack_cdecl. { w.write_char('C'); } native_abi_c_stack_stdcall. { w.write_char('S'); } } diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs index 943914b65bf0..1300528388e2 100644 --- a/src/comp/middle/trans.rs +++ b/src/comp/middle/trans.rs @@ -5596,8 +5596,7 @@ fn native_fn_ty_param_count(cx: @crate_ctxt, id: ast::node_id) -> uint { pure fn native_abi_requires_pair(abi: ast::native_abi) -> bool { alt abi { - ast::native_abi_rust_intrinsic. | - ast::native_abi_x86stdcall. { ret true; } + ast::native_abi_rust_intrinsic. { ret true; } ast::native_abi_c_stack_cdecl. | ast::native_abi_c_stack_stdcall. { ret false; } } @@ -5631,6 +5630,8 @@ fn register_native_fn(ccx: @crate_ctxt, sp: span, path: [str], name: str, let fn_type = node_id_type(ccx, id); // NB: has no type params let abi = ty::ty_fn_abi(ccx.tcx, fn_type); + // FIXME: There's probably a lot of unused code here now that + // there's only one possible combination of these three options let pass_task; let uses_retptr; let cast_to_i32; @@ -5640,11 +5641,6 @@ fn register_native_fn(ccx: @crate_ctxt, sp: span, path: [str], name: str, uses_retptr = true; cast_to_i32 = false; } - ast::native_abi_x86stdcall. { - pass_task = false; - uses_retptr = false; - cast_to_i32 = true; - } ast::native_abi_c_stack_cdecl. { let llfn = decl_cdecl_fn(ccx.llmod, name, T_fn([], ccx.int_type)); ccx.item_ids.insert(id, llfn); @@ -5789,14 +5785,6 @@ fn register_native_fn(ccx: @crate_ctxt, sp: span, path: [str], name: str, r = result.val; rptr = result.rptr; } - ast::native_abi_x86stdcall. { - let result = - trans_simple_native_abi(bcx, name, call_args, fn_type, - uses_retptr, - lib::llvm::LLVMX86StdcallCallConv); - r = result.val; - rptr = result.rptr; - } _ { r = trans_native_call(new_raw_block_ctxt(bcx.fcx, bcx.llbb), diff --git a/src/comp/syntax/ast.rs b/src/comp/syntax/ast.rs index 75ece99a1b6f..f9a41660f5ef 100644 --- a/src/comp/syntax/ast.rs +++ b/src/comp/syntax/ast.rs @@ -427,7 +427,6 @@ type _mod = {view_items: [@view_item], items: [@item]}; tag native_abi { native_abi_rust_intrinsic; - native_abi_x86stdcall; native_abi_c_stack_cdecl; native_abi_c_stack_stdcall; } diff --git a/src/comp/syntax/parse/parser.rs b/src/comp/syntax/parse/parser.rs index 1358d704fe05..a1a70c44a88a 100644 --- a/src/comp/syntax/parse/parser.rs +++ b/src/comp/syntax/parse/parser.rs @@ -2008,8 +2008,6 @@ fn parse_item_native_mod(p: parser, attrs: [ast::attribute]) -> @ast::item { let t = parse_str(p); if str::eq(t, "rust-intrinsic") { abi = ast::native_abi_rust_intrinsic; - } else if str::eq(t, "x86stdcall") { - abi = ast::native_abi_x86stdcall; } else if str::eq(t, "c-stack-cdecl") { abi = ast::native_abi_c_stack_cdecl; } else if str::eq(t, "c-stack-stdcall") { diff --git a/src/comp/syntax/print/pprust.rs b/src/comp/syntax/print/pprust.rs index 1028feaffc4a..18460ba04aee 100644 --- a/src/comp/syntax/print/pprust.rs +++ b/src/comp/syntax/print/pprust.rs @@ -404,7 +404,6 @@ fn print_item(s: ps, &&item: @ast::item) { ast::native_abi_rust_intrinsic. { word_nbsp(s, "\"rust-intrinsic\""); } - ast::native_abi_x86stdcall. { word_nbsp(s, "\"x86stdcall\""); } ast::native_abi_c_stack_cdecl. { word_nbsp(s, "\"c-stack-cdecl\""); }