blob: 496929eb09551faa911416e94f9f5db4618d9e18 [file] [log] [blame]
//@ add-minicore
//@ revisions: disable-softfloat enable-softfloat
//@ assembly-output: emit-asm
//@ compile-flags: -Copt-level=3 --crate-type=lib
// we expect the build to fail in the feature
//@ build-pass
//@ [enable-softfloat] compile-flags: --target=s390x-unknown-none-softfloat
//@ [enable-softfloat] compile-flags: -C target-feature=+vector
//@ [enable-softfloat] needs-llvm-components: systemz
//@ [disable-softfloat] compile-flags: --target=s390x-unknown-linux-gnu
//@ [disable-softfloat] compile-flags: -C target-feature=+soft-float
//@ [disable-softfloat] needs-llvm-components: systemz
//@ ignore-backends: gcc
//[disable-softfloat]~? WARN target feature `soft-float` must be disabled to ensure that the ABI of the current target can be implemented correctly
//[disable-softfloat]~? WARN target feature `soft-float` cannot be enabled with `-Ctarget-feature`
//[enable-softfloat]~? WARN target feature `vector` must be disabled to ensure that the ABI of the current target can be implemented correctly
#![feature(no_core, lang_items)]
#![no_std]
#![no_core]
extern crate minicore;
use minicore::*;
extern "C" {
fn extern_func(value: f64) -> f64;
}
#[no_mangle]
extern "C" fn test_softfloat() -> f64 {
let value = 3.141_f64;
unsafe { extern_func(value) } ;
2.718_f64
}