Skip to content

Commit c79fc90

Browse files
committed
Updated several files to use rust intrinsic macros instead of the legacy extern "rust-intrinsic" blocks
1 parent 1f81f90 commit c79fc90

29 files changed

+61
-85
lines changed

compiler/rustc_codegen_cranelift/src/intrinsics/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
//! Codegen of intrinsics. This includes `extern "rust-intrinsic"`,
2+
//! functions marked with the `#[rustc_intrinsic]` attribute
23
//! and LLVM intrinsics that have symbol names starting with `llvm.`.
34
45
macro_rules! intrinsic_args {

src/tools/miri/tests/fail/intrinsics/copy_overlapping.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize);
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn copy_nonoverlapping<T>(_src: *const T, _dst: *mut T, _count: usize);
76

87
fn main() {
98
let mut data = [0u8; 16];

src/tools/miri/tests/fail/intrinsics/copy_unaligned.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize);
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn copy_nonoverlapping<T>(_src: *const T, _dst: *mut T, _count: usize);
76

87
fn main() {
98
let mut data = [0u16; 8];

src/tools/miri/tests/fail/intrinsics/ctlz_nonzero.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
mod rusti {
4-
extern "rust-intrinsic" {
5-
pub fn ctlz_nonzero<T>(x: T) -> u32;
6-
}
4+
#[rustc_intrinsic]
5+
pub unsafe fn ctlz_nonzero<T>(_x: T) -> u32;
76
}
87

98
pub fn main() {

src/tools/miri/tests/fail/intrinsics/cttz_nonzero.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
12
#![feature(intrinsics)]
23

34
mod rusti {
4-
extern "rust-intrinsic" {
5-
pub fn cttz_nonzero<T>(x: T) -> u32;
6-
}
5+
#[rustc_intrinsic]
6+
pub unsafe fn cttz_nonzero<T>(_x: T) -> u32;
77
}
88

99
pub fn main() {

src/tools/miri/tests/fail/intrinsics/float_to_int_32_inf1.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
76

87
fn main() {
98
unsafe {

src/tools/miri/tests/fail/intrinsics/float_to_int_32_infneg1.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
76

87
fn main() {
98
unsafe {

src/tools/miri/tests/fail/intrinsics/float_to_int_32_nan.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
76

87
fn main() {
98
unsafe {

src/tools/miri/tests/fail/intrinsics/float_to_int_32_nanneg.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
6+
77

88
fn main() {
99
unsafe {

src/tools/miri/tests/fail/intrinsics/float_to_int_32_neg.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
#![feature(intrinsics)]
22

33
// Directly call intrinsic to avoid debug assertions in libstd
4-
extern "rust-intrinsic" {
5-
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
6-
}
4+
#[rustc_intrinsic]
5+
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
76

87
fn main() {
98
unsafe {

0 commit comments

Comments
 (0)