Updated several files to use rust intrinsic macros instead of the legacy extern "rust-intrinsic" blocks

This commit is contained in:
vayunbiyani 2025-01-10 08:08:06 -05:00
parent 1f81f90689
commit c79fc90e9a
29 changed files with 61 additions and 85 deletions

View file

@ -1,4 +1,5 @@
//! Codegen of intrinsics. This includes `extern "rust-intrinsic"`, //! Codegen of intrinsics. This includes `extern "rust-intrinsic"`,
//! functions marked with the `#[rustc_intrinsic]` attribute
//! and LLVM intrinsics that have symbol names starting with `llvm.`. //! and LLVM intrinsics that have symbol names starting with `llvm.`.
macro_rules! intrinsic_args { macro_rules! intrinsic_args {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize); unsafe fn copy_nonoverlapping<T>(_src: *const T, _dst: *mut T, _count: usize);
}
fn main() { fn main() {
let mut data = [0u8; 16]; let mut data = [0u8; 16];

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize); unsafe fn copy_nonoverlapping<T>(_src: *const T, _dst: *mut T, _count: usize);
}
fn main() { fn main() {
let mut data = [0u16; 8]; let mut data = [0u16; 8];

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
mod rusti { mod rusti {
extern "rust-intrinsic" { #[rustc_intrinsic]
pub fn ctlz_nonzero<T>(x: T) -> u32; pub unsafe fn ctlz_nonzero<T>(_x: T) -> u32;
}
} }
pub fn main() { pub fn main() {

View file

@ -1,9 +1,9 @@
#![feature(intrinsics)] #![feature(intrinsics)]
mod rusti { mod rusti {
extern "rust-intrinsic" { #[rustc_intrinsic]
pub fn cttz_nonzero<T>(x: T) -> u32; pub unsafe fn cttz_nonzero<T>(_x: T) -> u32;
}
} }
pub fn main() { pub fn main() {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,9 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,9 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -1,9 +1,8 @@
#![feature(intrinsics)] #![feature(intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd // Directly call intrinsic to avoid debug assertions in libstd
extern "rust-intrinsic" { #[rustc_intrinsic]
fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int; unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(_value: Float) -> Int;
}
fn main() { fn main() {
unsafe { unsafe {

View file

@ -14,10 +14,9 @@ use std::ptr;
use std::simd::StdFloat; use std::simd::StdFloat;
use std::simd::prelude::*; use std::simd::prelude::*;
extern "rust-intrinsic" { #[rustc_intrinsic]
#[rustc_nounwind] #[rustc_nounwind]
pub fn simd_shuffle_generic<T, U, const IDX: &'static [u32]>(x: T, y: T) -> U; pub unsafe fn simd_shuffle_generic<T, U, const IDX: &'static [u32]>(_x: T, _y: T) -> U;
}
fn simd_ops_f32() { fn simd_ops_f32() {
let a = f32x4::splat(10.0); let a = f32x4::splat(10.0);