Enable the `intrinsics` program on thumb
This commit is contained in:
parent
afe5c717a9
commit
0ebbcaede4
12
ci/run.sh
12
ci/run.sh
|
@ -115,19 +115,9 @@ done
|
|||
|
||||
rm -f $path
|
||||
|
||||
# Verification of the `intrinsics` program doesn't work on thumb targets right
|
||||
# now.
|
||||
case $1 in
|
||||
thumb*)
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# Verify that we haven't drop any intrinsic/symbol
|
||||
RUSTFLAGS="-C debug-assertions=no" \
|
||||
$cargo build --features "$INTRINSICS_FEATURES" --target $1 --example intrinsics
|
||||
$cargo build --features "$INTRINSICS_FEATURES" --target $1 --example intrinsics -v
|
||||
|
||||
# Verify that there are no undefined symbols to `panic` within our
|
||||
# implementations
|
||||
|
|
|
@ -12,13 +12,14 @@
|
|||
#![feature(core_float)]
|
||||
#![feature(lang_items)]
|
||||
#![feature(start)]
|
||||
#![feature(panic_unwind)]
|
||||
#![feature(i128_type)]
|
||||
#![cfg_attr(windows, feature(panic_unwind))]
|
||||
#![no_std]
|
||||
|
||||
#[cfg(not(thumb))]
|
||||
extern crate alloc_system;
|
||||
extern crate compiler_builtins;
|
||||
#[cfg(windows)]
|
||||
extern crate panic_unwind;
|
||||
|
||||
// NOTE cfg(not(thumbv6m)) means that the operation is not supported on ARMv6-M at all. Not even
|
||||
|
@ -444,7 +445,16 @@ pub fn __aeabi_unwind_cpp_pr0() {}
|
|||
#[no_mangle]
|
||||
pub fn __aeabi_unwind_cpp_pr1() {}
|
||||
|
||||
#[cfg(not(test))]
|
||||
#[cfg(not(windows))]
|
||||
#[allow(non_snake_case)]
|
||||
#[no_mangle]
|
||||
pub fn _Unwind_Resume() {}
|
||||
|
||||
#[cfg(not(windows))]
|
||||
#[lang = "eh_personality"]
|
||||
#[no_mangle]
|
||||
pub extern "C" fn eh_personality() {}
|
||||
|
||||
#[lang = "panic_fmt"]
|
||||
#[no_mangle]
|
||||
#[allow(private_no_mangle_fns)]
|
||||
|
|
|
@ -37,7 +37,7 @@ pub unsafe fn __aeabi_uldivmod() {
|
|||
#[cfg_attr(not(feature = "mangled-names"), no_mangle)]
|
||||
pub unsafe fn __aeabi_idivmod() {
|
||||
asm!("push {r0, r1, r4, lr}
|
||||
bl __divsi3
|
||||
bl __aeabi_idiv
|
||||
pop {r1, r2}
|
||||
muls r2, r2, r0
|
||||
subs r1, r1, r2
|
||||
|
|
Loading…
Reference in New Issue