aboutsummaryrefslogtreecommitdiff
path: root/cortex-m-rt/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cortex-m-rt/src/lib.rs')
-rw-r--r--cortex-m-rt/src/lib.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/cortex-m-rt/src/lib.rs b/cortex-m-rt/src/lib.rs
index e2dd667..ab4bc3f 100644
--- a/cortex-m-rt/src/lib.rs
+++ b/cortex-m-rt/src/lib.rs
@@ -923,9 +923,17 @@ pub fn heap_start() -> *mut u32 {
#[doc(hidden)]
#[link_section = ".vector_table.reset_vector"]
#[no_mangle]
+#[cfg(not(armv6m))]
pub static __RESET_VECTOR: unsafe extern "C" fn() -> ! = Reset;
#[doc(hidden)]
+#[link_section = ".vector_table.reset_vector"]
+#[no_mangle]
+#[cfg(armv6m)]
+pub static __RESET_VECTOR: unsafe extern "C" fn() -> ! = PreResetTrampoline;
+
+#[doc(hidden)]
+#[link_section = ".Reset"]
#[no_mangle]
pub unsafe extern "C" fn Reset() -> ! {
extern "C" {
@@ -1030,6 +1038,9 @@ pub enum Exception {
pub use self::Exception as exception;
extern "C" {
+ #[cfg(armv6m)]
+ fn PreResetTrampoline() -> !;
+
fn NonMaskableInt();
fn HardFaultTrampoline();