Merge pull request #4274 from RalfJung/import-intrinsics

use std-declared intrinsics rather than copying the declaration
This commit is contained in:
Ralf Jung 2025-04-16 13:01:57 +00:00 committed by GitHub
commit a19a0249fa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
25 changed files with 50 additions and 106 deletions

View file

@ -1,13 +1,8 @@
#![feature(intrinsics)]
mod rusti {
#[rustc_intrinsic]
pub unsafe fn ctlz_nonzero<T>(x: T) -> u32;
}
#![feature(core_intrinsics)]
pub fn main() {
unsafe {
use crate::rusti::*;
use std::intrinsics::*;
ctlz_nonzero(0u8); //~ ERROR: `ctlz_nonzero` called on 0
}

View file

@ -1,13 +1,8 @@
#![feature(intrinsics)]
mod rusti {
#[rustc_intrinsic]
pub unsafe fn cttz_nonzero<T>(x: T) -> u32;
}
#![feature(core_intrinsics)]
pub fn main() {
unsafe {
use crate::rusti::*;
use std::intrinsics::*;
cttz_nonzero(0u8); //~ ERROR: `cttz_nonzero` called on 0
}

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {

View file

@ -1,8 +1,6 @@
#![feature(intrinsics)]
#![feature(core_intrinsics)]
// Directly call intrinsic to avoid debug assertions in libstd
#[rustc_intrinsic]
unsafe fn float_to_int_unchecked<Float: Copy, Int: Copy>(value: Float) -> Int;
use std::intrinsics::float_to_int_unchecked;
fn main() {
unsafe {