mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-15 08:23:41 +00:00
avr: fix default handler in interrupt vector
Apparently the target of a weak symbol must be defined in the same file as where it is used as a weak symbol. https://www.avrfreaks.net/forum/using-weak-custom-vector-table#comment-745922
This commit is contained in:
@@ -38,16 +38,6 @@ init_data_end:
|
|||||||
; need to jump.
|
; need to jump.
|
||||||
|
|
||||||
|
|
||||||
; This is the default handler for interrupts, if triggered but not defined.
|
|
||||||
; Sleep inside so that an accidentally triggered interrupt won't drain the
|
|
||||||
; battery of a battery-powered device.
|
|
||||||
.section .text.__vector_default
|
|
||||||
.global __vector_default
|
|
||||||
__vector_default:
|
|
||||||
sleep
|
|
||||||
rjmp __vector_default
|
|
||||||
|
|
||||||
|
|
||||||
; The only thing this WDT handler really does is disable itself, to get out of
|
; The only thing this WDT handler really does is disable itself, to get out of
|
||||||
; sleep mode.
|
; sleep mode.
|
||||||
.section .text.__vector_WDT
|
.section .text.__vector_WDT
|
||||||
|
|||||||
@@ -208,6 +208,15 @@ def writeAsm(outdir, device):
|
|||||||
; Automatically generated file. DO NOT EDIT.
|
; Automatically generated file. DO NOT EDIT.
|
||||||
; Generated by gen-device-avr.py from {file}, see {descriptorSource}
|
; Generated by gen-device-avr.py from {file}, see {descriptorSource}
|
||||||
|
|
||||||
|
; This is the default handler for interrupts, if triggered but not defined.
|
||||||
|
; Sleep inside so that an accidentally triggered interrupt won't drain the
|
||||||
|
; battery of a battery-powered device.
|
||||||
|
.section .text.__vector_default
|
||||||
|
.global __vector_default
|
||||||
|
__vector_default:
|
||||||
|
sleep
|
||||||
|
rjmp __vector_default
|
||||||
|
|
||||||
; Avoid the need for repeated .weak and .set instructions.
|
; Avoid the need for repeated .weak and .set instructions.
|
||||||
.macro IRQ handler
|
.macro IRQ handler
|
||||||
.weak \\handler
|
.weak \\handler
|
||||||
|
|||||||
Reference in New Issue
Block a user