//@ compile-flags: --target armv5te-unknown-linux-gnueabi //@ needs-llvm-components: arm //@ needs-asm-support //@ build-pass #![feature(no_core, lang_items, rustc_attrs)] #![no_core] #![crate_type = "rlib"] #[rustc_builtin_macro] macro_rules! asm { () => {}; } #[lang = "sized"] trait Sized {} // ARM uses R11 for the frame pointer, make sure R7 is usable. #[instruction_set(arm::a32)] pub fn arm() { unsafe { asm!("", out("r7") _); } } // Thumb uses R7 for the frame pointer, make sure R11 is usable. #[instruction_set(arm::t32)] pub fn thumb() { unsafe { asm!("", out("r11") _); } }