File tree Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -36,7 +36,6 @@ pub fn device(
36
36
if * target != Target :: None {
37
37
items. push ( quote ! {
38
38
#![ cfg_attr( feature = "rt" , feature( global_asm) ) ]
39
- #![ cfg_attr( feature = "rt" , feature( linkage) ) ]
40
39
#![ cfg_attr( feature = "rt" , feature( macro_reexport) ) ]
41
40
#![ cfg_attr( feature = "rt" , feature( used) ) ]
42
41
} ) ;
@@ -235,14 +234,20 @@ pub fn interrupt(
235
234
let aliases = names. iter ( )
236
235
. map ( |n| format ! ( "
237
236
.weak {0}
238
- {0} = DEFAULT_HANDLER " , n) )
237
+ {0} = DH_TRAMPOLINE " , n) )
239
238
. collect :: < Vec < _ > > ( )
240
239
. concat ( ) ;
241
240
242
241
let n = util:: unsuffixed ( u64 ( pos) ) ;
243
242
match * target {
244
243
Target :: CortexM => {
245
244
mod_items. push ( quote ! {
245
+ #[ cfg( feature = "rt" ) ]
246
+ global_asm!( "
247
+ DH_TRAMPOLINE:
248
+ b DEFAULT_HANDLER
249
+ " ) ;
250
+
246
251
#[ cfg( feature = "rt" ) ]
247
252
global_asm!( #aliases) ;
248
253
@@ -264,6 +269,12 @@ pub fn interrupt(
264
269
}
265
270
Target :: Msp430 => {
266
271
mod_items. push ( quote ! {
272
+ #[ cfg( feature = "rt" ) ]
273
+ global_asm!( "
274
+ DH_TRAMPOLINE:
275
+ jmp DEFAULT_HANDLER
276
+ " ) ;
277
+
267
278
#[ cfg( feature = "rt" ) ]
268
279
global_asm!( #aliases) ;
269
280
You can’t perform that action at this time.
0 commit comments