Stabilize abi_sysv64
This commit is contained in:
parent
cfba0d446e
commit
d68d127875
5 changed files with 4 additions and 30 deletions
|
@ -284,10 +284,6 @@ declare_features! (
|
||||||
// Allows all literals in attribute lists and values of key-value pairs.
|
// Allows all literals in attribute lists and values of key-value pairs.
|
||||||
(active, attr_literals, "1.13.0", Some(34981)),
|
(active, attr_literals, "1.13.0", Some(34981)),
|
||||||
|
|
||||||
// Allows the sysV64 ABI to be specified on all platforms
|
|
||||||
// instead of just the platforms on which it is the C ABI
|
|
||||||
(active, abi_sysv64, "1.13.0", Some(36167)),
|
|
||||||
|
|
||||||
// Allows untagged unions `union U { ... }`
|
// Allows untagged unions `union U { ... }`
|
||||||
(active, untagged_unions, "1.13.0", Some(32836)),
|
(active, untagged_unions, "1.13.0", Some(32836)),
|
||||||
|
|
||||||
|
@ -520,6 +516,9 @@ declare_features! (
|
||||||
(accepted, rvalue_static_promotion, "1.21.0", Some(38865)),
|
(accepted, rvalue_static_promotion, "1.21.0", Some(38865)),
|
||||||
// Allow Drop types in constants (RFC 1440)
|
// Allow Drop types in constants (RFC 1440)
|
||||||
(accepted, drop_types_in_const, "1.22.0", Some(33156)),
|
(accepted, drop_types_in_const, "1.22.0", Some(33156)),
|
||||||
|
// Allows the sysV64 ABI to be specified on all platforms
|
||||||
|
// instead of just the platforms on which it is the C ABI
|
||||||
|
(accepted, abi_sysv64, "1.24.0", Some(36167)),
|
||||||
);
|
);
|
||||||
|
|
||||||
// If you change this, please modify src/doc/unstable-book as well. You must
|
// If you change this, please modify src/doc/unstable-book as well. You must
|
||||||
|
@ -1246,10 +1245,6 @@ impl<'a> PostExpansionVisitor<'a> {
|
||||||
gate_feature_post!(&self, unboxed_closures, span,
|
gate_feature_post!(&self, unboxed_closures, span,
|
||||||
"rust-call ABI is subject to change");
|
"rust-call ABI is subject to change");
|
||||||
},
|
},
|
||||||
Abi::SysV64 => {
|
|
||||||
gate_feature_post!(&self, abi_sysv64, span,
|
|
||||||
"sysv64 ABI is experimental and subject to change");
|
|
||||||
},
|
|
||||||
Abi::PtxKernel => {
|
Abi::PtxKernel => {
|
||||||
gate_feature_post!(&self, abi_ptx, span,
|
gate_feature_post!(&self, abi_ptx, span,
|
||||||
"PTX ABIs are experimental and subject to change");
|
"PTX ABIs are experimental and subject to change");
|
||||||
|
@ -1272,6 +1267,7 @@ impl<'a> PostExpansionVisitor<'a> {
|
||||||
Abi::Fastcall |
|
Abi::Fastcall |
|
||||||
Abi::Aapcs |
|
Abi::Aapcs |
|
||||||
Abi::Win64 |
|
Abi::Win64 |
|
||||||
|
Abi::SysV64 |
|
||||||
Abi::Rust |
|
Abi::Rust |
|
||||||
Abi::C |
|
Abi::C |
|
||||||
Abi::System => {}
|
Abi::System => {}
|
||||||
|
|
|
@ -18,7 +18,6 @@
|
||||||
// compile-flags: -C no-prepopulate-passes
|
// compile-flags: -C no-prepopulate-passes
|
||||||
|
|
||||||
#![crate_type = "lib"]
|
#![crate_type = "lib"]
|
||||||
#![feature(abi_sysv64)]
|
|
||||||
|
|
||||||
// CHECK: define x86_64_sysvcc i64 @has_sysv64_abi
|
// CHECK: define x86_64_sysvcc i64 @has_sysv64_abi
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
// Copyright 2016 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 <LICENSE-APACHE or
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
|
||||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
|
||||||
// option. This file may not be copied, modified, or distributed
|
|
||||||
// except according to those terms.
|
|
||||||
|
|
||||||
// Test that the sysv64 ABI cannot be used when abi-sysv64 feature
|
|
||||||
// gate is not used.
|
|
||||||
|
|
||||||
extern "sysv64" fn foo() {}
|
|
||||||
//~^ ERROR sysv64 ABI is experimental and subject to change
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
foo();
|
|
||||||
}
|
|
|
@ -39,7 +39,6 @@
|
||||||
|
|
||||||
// note: windows is ignored as rust_test_helpers does not have the sysv64 abi on windows
|
// note: windows is ignored as rust_test_helpers does not have the sysv64 abi on windows
|
||||||
|
|
||||||
#![feature(abi_sysv64)]
|
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
#[allow(improper_ctypes)]
|
#[allow(improper_ctypes)]
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
// ignore-arm
|
// ignore-arm
|
||||||
// ignore-aarch64
|
// ignore-aarch64
|
||||||
|
|
||||||
#![feature(abi_sysv64)]
|
|
||||||
#![feature(asm)]
|
#![feature(asm)]
|
||||||
|
|
||||||
#[cfg(target_arch = "x86_64")]
|
#[cfg(target_arch = "x86_64")]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue