From b91caac729fd103a7ce4a6094be7845643f4704d Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Thu, 6 Feb 2014 23:24:41 -0800 Subject: [PATCH] rustc: Remove 'morestack_addr' intrinsic. Unused --- src/librustc/middle/trans/intrinsic.rs | 11 ----------- src/librustc/middle/typeck/check/mod.rs | 3 --- src/libstd/unstable/intrinsics.rs | 3 --- src/test/run-pass/morestack-address.rs | 24 ------------------------ 4 files changed, 41 deletions(-) delete mode 100644 src/test/run-pass/morestack-address.rs diff --git a/src/librustc/middle/trans/intrinsic.rs b/src/librustc/middle/trans/intrinsic.rs index 49f1b073f87..8896a3de733 100644 --- a/src/librustc/middle/trans/intrinsic.rs +++ b/src/librustc/middle/trans/intrinsic.rs @@ -463,17 +463,6 @@ pub fn trans_intrinsic(ccx: @CrateContext, abi::tydesc_field_visit_glue, None); RetVoid(bcx); } - "morestack_addr" => { - // FIXME This is a hack to grab the address of this particular - // native function. There should be a general in-language - // way to do this - let llfty = type_of_rust_fn(bcx.ccx(), false, [], ty::mk_nil()); - let morestack_addr = decl_cdecl_fn(bcx.ccx().llmod, "__morestack", - llfty, ty::mk_nil()); - let morestack_addr = PointerCast(bcx, morestack_addr, - Type::nil().ptr_to()); - Ret(bcx, morestack_addr); - } "offset" => { let ptr = get_param(decl, first_real_arg); let offset = get_param(decl, first_real_arg + 1); diff --git a/src/librustc/middle/typeck/check/mod.rs b/src/librustc/middle/typeck/check/mod.rs index e1679c81a0e..b9f7efca67e 100644 --- a/src/librustc/middle/typeck/check/mod.rs +++ b/src/librustc/middle/typeck/check/mod.rs @@ -4128,9 +4128,6 @@ pub fn check_intrinsic_type(ccx: @CrateCtxt, it: &ast::ForeignItem) { }); (0, ~[ td_ptr, visitor_object_ty ], ty::mk_nil()) } - "morestack_addr" => { - (0u, ~[], ty::mk_nil_ptr(ccx.tcx)) - } "offset" => { (1, ~[ diff --git a/src/libstd/unstable/intrinsics.rs b/src/libstd/unstable/intrinsics.rs index ca49576ab2d..7ca28711504 100644 --- a/src/libstd/unstable/intrinsics.rs +++ b/src/libstd/unstable/intrinsics.rs @@ -310,9 +310,6 @@ extern "rust-intrinsic" { pub fn visit_tydesc(td: *TyDesc, tv: &mut TyVisitor); - /// Get the address of the `__morestack` stack growth function. - pub fn morestack_addr() -> *(); - /// Calculates the offset from a pointer. The offset *must* be in-bounds of /// the object, or one-byte-past-the-end. An arithmetic overflow is also /// undefined behaviour. diff --git a/src/test/run-pass/morestack-address.rs b/src/test/run-pass/morestack-address.rs deleted file mode 100644 index ec678df357a..00000000000 --- a/src/test/run-pass/morestack-address.rs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2012 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 or the MIT license -// , at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -mod rusti { - #[nolink] - extern "rust-intrinsic" { - pub fn morestack_addr() -> *(); - } -} - -pub fn main() { - unsafe { - let addr = rusti::morestack_addr(); - assert!(addr.is_not_null()); - error!("{}", addr); - } -}