;/* ---------------------------------------------------------------------------------------
; *  @file:    YTM32B1MD2_startup_armc.S
; *  @purpose: ARM compiler Startup File
; *            YTM32B1MD2
; *  @version: 1.0
; *  @date:    2025-07-02
; * ---------------------------------------------------------------------------------------*/

    PRESERVE8
    THUMB

    AREA    |.text|, CODE, READONLY

    EXPORT  __VECTOR_TABLE
    EXPORT  __Vectors_End
    EXPORT  __Vectors_Size

    EXPORT __BSS_START
    EXPORT __BSS_END

    EXPORT __DATA_ROM
    EXPORT __VECTOR_ROM_START
    EXPORT __VECTOR_ROM_END
    EXPORT __DATA_RAM_START
    EXPORT __DATA_RAM_END
    
    EXPORT __RAM_START
    EXPORT __RAM_END
        
    EXPORT __RAM_VECTOR_TABLE_SIZE
    EXPORT __VECTOR_RAM
    EXPORT __VECTOR_ROM
        
    IMPORT  |Image$$ARM_LIB_STACK$$ZI$$Limit|
    IMPORT  |Image$$ARM_LIB_STACK$$Limit|
    IMPORT  |Image$$ARM_LIB_STACK$$Length|
    IMPORT  |Image$$ARM_LIB_HEAP$$Length|
    
    IMPORT  |Image$$RW_m_data$$ZI$$Base|
    IMPORT  |Image$$RW_m_data$$ZI$$Limit|
    IMPORT  |Image$$RW_m_data$$RW$$Base|
    IMPORT  |Image$$RW_m_data$$RW$$Length|
    IMPORT  |Image$$RW_m_data$$RW$$Limit|

    IMPORT  |Image$$RW_m_data$$Base|
    IMPORT  |Image$$RW_m_data$$Limit|
    IMPORT  |Image$$RW_m_data$$Length|

    IMPORT |Image$$ER_m_text$$Limit|

    IMPORT |Image$$VECTOR_RAM$$Length|
    IMPORT |Image$$VECTOR_RAM$$Base|
        
    IMPORT |Image$$VECTOR_ROM$$Length|
    IMPORT |Image$$VECTOR_ROM$$Base|
    IMPORT |Image$$VECTOR_ROM$$Limit|
                
__RAM_VECTOR_TABLE_SIZE     DCD |Image$$VECTOR_ROM$$Length|
__VECTOR_RAM                DCD |Image$$VECTOR_RAM$$Base|
__VECTOR_ROM                DCD |Image$$VECTOR_ROM$$Base|
__VECTOR_ROM_START          DCD |Image$$VECTOR_ROM$$Base|
__VECTOR_ROM_END            DCD |Image$$VECTOR_ROM$$Limit|

__BSS_START                 DCD  |Image$$RW_m_data$$ZI$$Base|
__BSS_END                   DCD  |Image$$RW_m_data$$ZI$$Limit|

__DATA_RAM_START            DCD  |Image$$RW_m_data$$RW$$Base|
__DATA_RAM_END              DCD  |Image$$RW_m_data$$RW$$Limit|
__DATA_ROM                  DCD  |Image$$ER_m_text$$Limit|

#if (__RAM_VECTOR_TABLE_SIZE > 0)
__RAM_START                 DCD  |Image$$VECTOR_RAM$$Base|
#else
__RAM_START                 DCD  |Image$$RW_m_data$$Base|
#endif
__RAM_END                   DCD  |Image$$ARM_LIB_STACK$$ZI$$Limit| - 1

; Vector Table Mapped to Address 0 at Reset
    AREA    RESET, DATA, READONLY
    ALIGN   4
__VECTOR_TABLE
    DCD   |Image$$ARM_LIB_STACK$$ZI$$Limit|                ; top of stack
    DCD   Reset_Handler                                    ; Reset Handler
    DCD   NMI_Handler                                      ; NMI Handler
    DCD   HardFault_Handler                                ; HardFault Handler
    DCD   MemManage_Handler                                ; MemManage Handler
    DCD   BusFault_Handler                                 ; BusFault Handler
    DCD   UsageFault_Handler                               ; UsageFault Handler
    DCD   0                                                ; Reserved0 Handler
    DCD   0                                                ; Reserved1 Handler
    DCD   0                                                ; Reserved2 Handler
    DCD   0                                                ; Reserved3 Handler
    DCD   SVC_Handler                                      ; SVC Handler
    DCD   DebugMon_Handler                                 ; DebugMon Handler
    DCD   0                                                ; Reserved4 Handler
    DCD   PendSV_Handler                                   ; PendSV Handler
    DCD   SysTick_Handler                                  ; SysTick Handler

    DCD   DMA0_IRQHandler                                  ; DMA0 IRQHandler
    DCD   DMA1_IRQHandler                                  ; DMA1 IRQHandler
    DCD   DMA2_IRQHandler                                  ; DMA2 IRQHandler
    DCD   DMA3_IRQHandler                                  ; DMA3 IRQHandler
    DCD   DMA4_IRQHandler                                  ; DMA4 IRQHandler
    DCD   DMA5_IRQHandler                                  ; DMA5 IRQHandler
    DCD   DMA6_IRQHandler                                  ; DMA6 IRQHandler
    DCD   DMA7_IRQHandler                                  ; DMA7 IRQHandler
    DCD   Reserved5_IRQHandler                             ; Reserved5 IRQHandler
    DCD   Reserved6_IRQHandler                             ; Reserved6 IRQHandler
    DCD   Reserved7_IRQHandler                             ; Reserved7 IRQHandler
    DCD   Reserved8_IRQHandler                             ; Reserved8 IRQHandler
    DCD   Reserved9_IRQHandler                             ; Reserved9 IRQHandler
    DCD   Reserved10_IRQHandler                            ; Reserved10 IRQHandler
    DCD   Reserved11_IRQHandler                            ; Reserved11 IRQHandler
    DCD   Reserved12_IRQHandler                            ; Reserved12 IRQHandler
    DCD   DMA_Error_IRQHandler                             ; DMA_Error IRQHandler
    DCD   FPU_IRQHandler                                   ; FPU IRQHandler
    DCD   EFM_IRQHandler                                   ; EFM IRQHandler
    DCD   EFM_Error_IRQHandler                             ; EFM_Error IRQHandler
    DCD   PCU_IRQHandler                                   ; PCU IRQHandler
    DCD   EFM_Ecc_IRQHandler                               ; EFM_Ecc IRQHandler
    DCD   WDG0_IRQHandler                                  ; WDG0 IRQHandler
    DCD   RCU_IRQHandler                                   ; RCU IRQHandler
    DCD   I2C0_Master_IRQHandler                           ; I2C0_Master IRQHandler
    DCD   I2C0_Slave_IRQHandler                            ; I2C0_Slave IRQHandler
    DCD   SPI0_IRQHandler                                  ; SPI0 IRQHandler
    DCD   SPI1_IRQHandler                                  ; SPI1 IRQHandler
    DCD   SPI2_IRQHandler                                  ; SPI2 IRQHandler
    DCD   I2C1_Master_IRQHandler                           ; I2C1_Master IRQHandler
    DCD   Reserved13_IRQHandler                            ; Reserved13 IRQHandler
    DCD   UART0_IRQHandler                                 ; UART0 IRQHandler
    DCD   Reserved14_IRQHandler                            ; Reserved14 IRQHandler
    DCD   UART1_IRQHandler                                 ; UART1 IRQHandler
    DCD   Reserved15_IRQHandler                            ; Reserved15 IRQHandler
    DCD   UART2_IRQHandler                                 ; UART2 IRQHandler
    DCD   Reserved16_IRQHandler                            ; Reserved16 IRQHandler
    DCD   Reserved17_IRQHandler                            ; Reserved17 IRQHandler
    DCD   Reserved18_IRQHandler                            ; Reserved18 IRQHandler
    DCD   eADC0_IRQHandler                                 ; eADC0 IRQHandler
    DCD   Reserved19_IRQHandler                            ; Reserved19 IRQHandler
    DCD   ACMP0_IRQHandler                                 ; ACMP0 IRQHandler
    DCD   Reserved20_IRQHandler                            ; Reserved20 IRQHandler
    DCD   Reserved21_IRQHandler                            ; Reserved21 IRQHandler
    DCD   EMU0_SB_IRQHandler                               ; EMU0_SB IRQHandler
    DCD   EMU0_DB_IRQHandler                               ; EMU0_DB IRQHandler
    DCD   RTC_IRQHandler                                   ; RTC IRQHandler
    DCD   RTC_Seconds_IRQHandler                           ; RTC_Seconds IRQHandler
    DCD   pTMR0_Ch0_IRQHandler                             ; pTMR0_Ch0 IRQHandler
    DCD   pTMR0_Ch1_IRQHandler                             ; pTMR0_Ch1 IRQHandler
    DCD   pTMR0_Ch2_IRQHandler                             ; pTMR0_Ch2 IRQHandler
    DCD   pTMR0_Ch3_IRQHandler                             ; pTMR0_Ch3 IRQHandler
    DCD   Reserved22_IRQHandler                            ; Reserved22 IRQHandler
    DCD   Reserved23_IRQHandler                            ; Reserved23 IRQHandler
    DCD   Reserved24_IRQHandler                            ; Reserved24 IRQHandler
    DCD   Reserved25_IRQHandler                            ; Reserved25 IRQHandler
    DCD   Reserved26_IRQHandler                            ; Reserved26 IRQHandler
    DCD   CMU_IRQHandler                                   ; CMU IRQHandler
    DCD   lpTMR0_IRQHandler                                ; lpTMR0 IRQHandler
    DCD   GPIOA_IRQHandler                                 ; GPIOA IRQHandler
    DCD   GPIOB_IRQHandler                                 ; GPIOB IRQHandler
    DCD   GPIOC_IRQHandler                                 ; GPIOC IRQHandler
    DCD   GPIOD_IRQHandler                                 ; GPIOD IRQHandler
    DCD   GPIOE_IRQHandler                                 ; GPIOE IRQHandler
    DCD   Reserved27_IRQHandler                            ; Reserved27 IRQHandler
    DCD   Reserved28_IRQHandler                            ; Reserved28 IRQHandler
    DCD   Reserved29_IRQHandler                            ; Reserved29 IRQHandler
    DCD   Reserved30_IRQHandler                            ; Reserved30 IRQHandler
    DCD   Reserved31_IRQHandler                            ; Reserved31 IRQHandler
    DCD   Reserved32_IRQHandler                            ; Reserved32 IRQHandler
    DCD   Reserved33_IRQHandler                            ; Reserved33 IRQHandler
    DCD   Reserved34_IRQHandler                            ; Reserved34 IRQHandler
    DCD   Reserved35_IRQHandler                            ; Reserved35 IRQHandler
    DCD   Reserved36_IRQHandler                            ; Reserved36 IRQHandler
    DCD   Reserved37_IRQHandler                            ; Reserved37 IRQHandler
    DCD   Reserved38_IRQHandler                            ; Reserved38 IRQHandler
    DCD   Reserved39_IRQHandler                            ; Reserved39 IRQHandler
    DCD   Reserved40_IRQHandler                            ; Reserved40 IRQHandler
    DCD   CAN0_ORed_IRQHandler                             ; CAN0_ORed IRQHandler
    DCD   CAN0_Error_IRQHandler                            ; CAN0_Error IRQHandler
    DCD   CAN0_Wake_Up_IRQHandler                          ; CAN0_Wake_Up IRQHandler
    DCD   CAN0_ORed_0_15_MB_IRQHandler                     ; CAN0_ORed_0_15_MB IRQHandler
    DCD   CAN0_ORed_16_31_MB_IRQHandler                    ; CAN0_ORed_16_31_MB IRQHandler
    DCD   CAN0_ORed_32_47_MB_IRQHandler                    ; CAN0_ORed_32_47_MB IRQHandler
    DCD   CAN0_ORed_48_63_MB_IRQHandler                    ; CAN0_ORed_48_63_MB IRQHandler
    DCD   CAN1_ORed_IRQHandler                             ; CAN1_ORed IRQHandler
    DCD   CAN1_Error_IRQHandler                            ; CAN1_Error IRQHandler
    DCD   CAN1_Wake_Up_IRQHandler                          ; CAN1_Wake_Up IRQHandler
    DCD   CAN1_ORed_0_15_MB_IRQHandler                     ; CAN1_ORed_0_15_MB IRQHandler
    DCD   CAN1_ORed_16_31_MB_IRQHandler                    ; CAN1_ORed_16_31_MB IRQHandler
    DCD   CAN1_ORed_32_47_MB_IRQHandler                    ; CAN1_ORed_32_47_MB IRQHandler
    DCD   CAN1_ORed_48_63_MB_IRQHandler                    ; CAN1_ORed_48_63_MB IRQHandler
    DCD   CAN2_ORed_IRQHandler                             ; CAN2_ORed IRQHandler
    DCD   CAN2_Error_IRQHandler                            ; CAN2_Error IRQHandler
    DCD   CAN2_Wake_Up_IRQHandler                          ; CAN2_Wake_Up IRQHandler
    DCD   CAN2_ORed_0_15_MB_IRQHandler                     ; CAN2_ORed_0_15_MB IRQHandler
    DCD   CAN2_ORed_16_31_MB_IRQHandler                    ; CAN2_ORed_16_31_MB IRQHandler
    DCD   Reserved41_IRQHandler                            ; Reserved41 IRQHandler
    DCD   Reserved42_IRQHandler                            ; Reserved42 IRQHandler
    DCD   eTMR0_Ch0_Ch1_IRQHandler                         ; eTMR0_Ch0_Ch1 IRQHandler
    DCD   eTMR0_Ch2_Ch3_IRQHandler                         ; eTMR0_Ch2_Ch3 IRQHandler
    DCD   eTMR0_Ch4_Ch5_IRQHandler                         ; eTMR0_Ch4_Ch5 IRQHandler
    DCD   eTMR0_Ch6_Ch7_IRQHandler                         ; eTMR0_Ch6_Ch7 IRQHandler
    DCD   eTMR0_Fault_IRQHandler                           ; eTMR0_Fault IRQHandler
    DCD   eTMR0_Ovf_IRQHandler                             ; eTMR0_Ovf IRQHandler
    DCD   eTMR1_Ch0_Ch1_IRQHandler                         ; eTMR1_Ch0_Ch1 IRQHandler
    DCD   eTMR1_Ch2_Ch3_IRQHandler                         ; eTMR1_Ch2_Ch3 IRQHandler
    DCD   eTMR1_Ch4_Ch5_IRQHandler                         ; eTMR1_Ch4_Ch5 IRQHandler
    DCD   eTMR1_Ch6_Ch7_IRQHandler                         ; eTMR1_Ch6_Ch7 IRQHandler
    DCD   eTMR1_Fault_IRQHandler                           ; eTMR1_Fault IRQHandler
    DCD   eTMR1_Ovf_IRQHandler                             ; eTMR1_Ovf IRQHandler
    DCD   Reserved43_IRQHandler                            ; Reserved43 IRQHandler
    DCD   Reserved44_IRQHandler                            ; Reserved44 IRQHandler
    DCD   Reserved45_IRQHandler                            ; Reserved45 IRQHandler
    DCD   Reserved46_IRQHandler                            ; Reserved46 IRQHandler
    DCD   Reserved47_IRQHandler                            ; Reserved47 IRQHandler
    DCD   Reserved48_IRQHandler                            ; Reserved48 IRQHandler
    DCD   MPWM0_Ch0_Ovf_IRQHandler                         ; MPWM0_Ch0_Ovf IRQHandler
    DCD   MPWM0_Ch1_Ovf_IRQHandler                         ; MPWM0_Ch1_Ovf IRQHandler
    DCD   MPWM0_Ch2_Ovf_IRQHandler                         ; MPWM0_Ch2_Ovf IRQHandler
    DCD   MPWM0_Ch3_Ovf_IRQHandler                         ; MPWM0_Ch3_Ovf IRQHandler
    DCD   MPWM0_Ch4_Ovf_IRQHandler                         ; MPWM0_Ch4_Ovf IRQHandler
    DCD   MPWM0_Ch5_Ovf_IRQHandler                         ; MPWM0_Ch5_Ovf IRQHandler
    DCD   MPWM0_Ch6_Ovf_IRQHandler                         ; MPWM0_Ch6_Ovf IRQHandler
    DCD   MPWM0_Ch7_Ovf_IRQHandler                         ; MPWM0_Ch7_Ovf IRQHandler
    DCD   MPWM0_Ch8_Ovf_IRQHandler                         ; MPWM0_Ch8_Ovf IRQHandler
    DCD   MPWM0_Ch9_Ovf_IRQHandler                         ; MPWM0_Ch9_Ovf IRQHandler
    DCD   MPWM0_Ch10_Ovf_IRQHandler                        ; MPWM0_Ch10_Ovf IRQHandler
    DCD   MPWM0_Ch11_Ovf_IRQHandler                        ; MPWM0_Ch11_Ovf IRQHandler
    DCD   MPWM0_Ch12_Ovf_IRQHandler                        ; MPWM0_Ch12_Ovf IRQHandler
    DCD   MPWM0_Ch13_Ovf_IRQHandler                        ; MPWM0_Ch13_Ovf IRQHandler
    DCD   MPWM0_Ch14_Ovf_IRQHandler                        ; MPWM0_Ch14_Ovf IRQHandler
    DCD   MPWM0_Ch15_Ovf_IRQHandler                        ; MPWM0_Ch15_Ovf IRQHandler
    DCD   MPWM0_Ch0_IRQHandler                             ; MPWM0_Ch0 IRQHandler
    DCD   MPWM0_Ch1_IRQHandler                             ; MPWM0_Ch1 IRQHandler
    DCD   MPWM0_Ch2_IRQHandler                             ; MPWM0_Ch2 IRQHandler
    DCD   MPWM0_Ch3_IRQHandler                             ; MPWM0_Ch3 IRQHandler
    DCD   MPWM0_Ch4_IRQHandler                             ; MPWM0_Ch4 IRQHandler
    DCD   MPWM0_Ch5_IRQHandler                             ; MPWM0_Ch5 IRQHandler
    DCD   MPWM0_Ch6_IRQHandler                             ; MPWM0_Ch6 IRQHandler
    DCD   MPWM0_Ch7_IRQHandler                             ; MPWM0_Ch7 IRQHandler
    DCD   MPWM0_Ch8_IRQHandler                             ; MPWM0_Ch8 IRQHandler
    DCD   MPWM0_Ch9_IRQHandler                             ; MPWM0_Ch9 IRQHandler
    DCD   MPWM0_Ch10_IRQHandler                            ; MPWM0_Ch10 IRQHandler
    DCD   MPWM0_Ch11_IRQHandler                            ; MPWM0_Ch11 IRQHandler
    DCD   MPWM0_Ch12_IRQHandler                            ; MPWM0_Ch12 IRQHandler
    DCD   MPWM0_Ch13_IRQHandler                            ; MPWM0_Ch13 IRQHandler
    DCD   MPWM0_Ch14_IRQHandler                            ; MPWM0_Ch14 IRQHandler
    DCD   MPWM0_Ch15_IRQHandler                            ; MPWM0_Ch15 IRQHandler
    DCD   Reserved49_IRQHandler                            ; Reserved49 IRQHandler
    DCD   Reserved50_IRQHandler                            ; Reserved50 IRQHandler
    DCD   Reserved51_IRQHandler                            ; Reserved51 IRQHandler
    DCD   Reserved52_IRQHandler                            ; Reserved52 IRQHandler
    DCD   Reserved53_IRQHandler                            ; Reserved53 IRQHandler
    DCD   Reserved54_IRQHandler                            ; Reserved54 IRQHandler
    DCD   Reserved55_IRQHandler                            ; Reserved55 IRQHandler
    DCD   TRNG_IRQHandler                                  ; TRNG IRQHandler
    DCD   HCU_IRQHandler                                   ; HCU IRQHandler

__Vectors_End

__Vectors_Size  EQU   __Vectors_End - __VECTOR_TABLE


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



    AREA    |.text|, CODE, READONLY
                
Reset_Handler   PROC
    ALIGN   4
    EXPORT  Reset_Handler                        [WEAK]
    IMPORT  __main
    IMPORT  SystemInit
    IMPORT  init_data_bss

    CPSID   I               ; Mask interrupts
    ;; Init the rest of the registers
    LDR     R1,=0
    LDR     R2,=0
    LDR     R3,=0
    LDR     R4,=0
    LDR     R5,=0
    LDR     R6,=0
    LDR     R7,=0
    MOV     R8,R7
    MOV     R9,R7
    MOV     R10,R7
    MOV     R11,R7
    MOV     R12,R7

#ifndef START_NO_ECC_INIT
    LDR     R1, =__RAM_START
    LDR     R1, [R1]
    LDR     R2, =__RAM_END
    LDR     R2, [R2]

    SUBS    R2, R1
    SUBS    R2, #1
    BLE     SRAM_LOOP_END

    MOVS    R0, #0
    MOVS    R3, #4
                
SRAM_LOOP             
    STR     R0, [R1]
    ADD     R1, R1, R3
    SUBS    R2, #4
    BGE     SRAM_LOOP

SRAM_LOOP_END
    NOP
#endif
                
    LDR     R0, =__VECTOR_TABLE
    LDR     R1, [R0]
    MSR     MSP, R1
    
    LDR     R0, =SystemInit
    BLX     R0
    LDR     R0, =init_data_bss
    BLX     R0
    
    CPSIE   I               ; Unmask interrupts
    
    LDR     R0, =__main
    BX      R0
    ENDP    

NMI_Handler\
    PROC
    EXPORT  NMI_Handler                           [WEAK]
    B       .
    ENDP

HardFault_Handler\
    PROC
    EXPORT  HardFault_Handler                     [WEAK]
    B       .
    ENDP

MemManage_Handler\
    PROC
    EXPORT  MemManage_Handler                     [WEAK]
    B       .
    ENDP

BusFault_Handler\
    PROC
    EXPORT  BusFault_Handler                      [WEAK]
    B       .
    ENDP

UsageFault_Handler\
    PROC
    EXPORT  UsageFault_Handler                    [WEAK]
    B       .
    ENDP

SVC_Handler\
    PROC
    EXPORT  SVC_Handler                           [WEAK]
    B       .
    ENDP

DebugMon_Handler\
    PROC
    EXPORT  DebugMon_Handler                      [WEAK]
    B       .
    ENDP

PendSV_Handler\
    PROC
    EXPORT  PendSV_Handler                        [WEAK]
    B       .
    ENDP

SysTick_Handler\
    PROC
    EXPORT  SysTick_Handler                       [WEAK]
    B       .
    ENDP


DefaultISR\
    PROC
    EXPORT  DefaultISR                            [WEAK]
    B       .
    ENDP

Default_Handler\
    PROC
    EXPORT  DMA0_IRQHandler                       [WEAK]
    EXPORT  DMA1_IRQHandler                       [WEAK]
    EXPORT  DMA2_IRQHandler                       [WEAK]
    EXPORT  DMA3_IRQHandler                       [WEAK]
    EXPORT  DMA4_IRQHandler                       [WEAK]
    EXPORT  DMA5_IRQHandler                       [WEAK]
    EXPORT  DMA6_IRQHandler                       [WEAK]
    EXPORT  DMA7_IRQHandler                       [WEAK]
    EXPORT  Reserved5_IRQHandler                  [WEAK]
    EXPORT  Reserved6_IRQHandler                  [WEAK]
    EXPORT  Reserved7_IRQHandler                  [WEAK]
    EXPORT  Reserved8_IRQHandler                  [WEAK]
    EXPORT  Reserved9_IRQHandler                  [WEAK]
    EXPORT  Reserved10_IRQHandler                 [WEAK]
    EXPORT  Reserved11_IRQHandler                 [WEAK]
    EXPORT  Reserved12_IRQHandler                 [WEAK]
    EXPORT  DMA_Error_IRQHandler                  [WEAK]
    EXPORT  FPU_IRQHandler                        [WEAK]
    EXPORT  EFM_IRQHandler                        [WEAK]
    EXPORT  EFM_Error_IRQHandler                  [WEAK]
    EXPORT  PCU_IRQHandler                        [WEAK]
    EXPORT  EFM_Ecc_IRQHandler                    [WEAK]
    EXPORT  WDG0_IRQHandler                       [WEAK]
    EXPORT  RCU_IRQHandler                        [WEAK]
    EXPORT  I2C0_Master_IRQHandler                [WEAK]
    EXPORT  I2C0_Slave_IRQHandler                 [WEAK]
    EXPORT  SPI0_IRQHandler                       [WEAK]
    EXPORT  SPI1_IRQHandler                       [WEAK]
    EXPORT  SPI2_IRQHandler                       [WEAK]
    EXPORT  I2C1_Master_IRQHandler                [WEAK]
    EXPORT  Reserved13_IRQHandler                 [WEAK]
    EXPORT  UART0_IRQHandler                      [WEAK]
    EXPORT  Reserved14_IRQHandler                 [WEAK]
    EXPORT  UART1_IRQHandler                      [WEAK]
    EXPORT  Reserved15_IRQHandler                 [WEAK]
    EXPORT  UART2_IRQHandler                      [WEAK]
    EXPORT  Reserved16_IRQHandler                 [WEAK]
    EXPORT  Reserved17_IRQHandler                 [WEAK]
    EXPORT  Reserved18_IRQHandler                 [WEAK]
    EXPORT  eADC0_IRQHandler                      [WEAK]
    EXPORT  Reserved19_IRQHandler                 [WEAK]
    EXPORT  ACMP0_IRQHandler                      [WEAK]
    EXPORT  Reserved20_IRQHandler                 [WEAK]
    EXPORT  Reserved21_IRQHandler                 [WEAK]
    EXPORT  EMU0_SB_IRQHandler                    [WEAK]
    EXPORT  EMU0_DB_IRQHandler                    [WEAK]
    EXPORT  RTC_IRQHandler                        [WEAK]
    EXPORT  RTC_Seconds_IRQHandler                [WEAK]
    EXPORT  pTMR0_Ch0_IRQHandler                  [WEAK]
    EXPORT  pTMR0_Ch1_IRQHandler                  [WEAK]
    EXPORT  pTMR0_Ch2_IRQHandler                  [WEAK]
    EXPORT  pTMR0_Ch3_IRQHandler                  [WEAK]
    EXPORT  Reserved22_IRQHandler                 [WEAK]
    EXPORT  Reserved23_IRQHandler                 [WEAK]
    EXPORT  Reserved24_IRQHandler                 [WEAK]
    EXPORT  Reserved25_IRQHandler                 [WEAK]
    EXPORT  Reserved26_IRQHandler                 [WEAK]
    EXPORT  CMU_IRQHandler                        [WEAK]
    EXPORT  lpTMR0_IRQHandler                     [WEAK]
    EXPORT  GPIOA_IRQHandler                      [WEAK]
    EXPORT  GPIOB_IRQHandler                      [WEAK]
    EXPORT  GPIOC_IRQHandler                      [WEAK]
    EXPORT  GPIOD_IRQHandler                      [WEAK]
    EXPORT  GPIOE_IRQHandler                      [WEAK]
    EXPORT  Reserved27_IRQHandler                 [WEAK]
    EXPORT  Reserved28_IRQHandler                 [WEAK]
    EXPORT  Reserved29_IRQHandler                 [WEAK]
    EXPORT  Reserved30_IRQHandler                 [WEAK]
    EXPORT  Reserved31_IRQHandler                 [WEAK]
    EXPORT  Reserved32_IRQHandler                 [WEAK]
    EXPORT  Reserved33_IRQHandler                 [WEAK]
    EXPORT  Reserved34_IRQHandler                 [WEAK]
    EXPORT  Reserved35_IRQHandler                 [WEAK]
    EXPORT  Reserved36_IRQHandler                 [WEAK]
    EXPORT  Reserved37_IRQHandler                 [WEAK]
    EXPORT  Reserved38_IRQHandler                 [WEAK]
    EXPORT  Reserved39_IRQHandler                 [WEAK]
    EXPORT  Reserved40_IRQHandler                 [WEAK]
    EXPORT  CAN0_ORed_IRQHandler                  [WEAK]
    EXPORT  CAN0_Error_IRQHandler                 [WEAK]
    EXPORT  CAN0_Wake_Up_IRQHandler               [WEAK]
    EXPORT  CAN0_ORed_0_15_MB_IRQHandler          [WEAK]
    EXPORT  CAN0_ORed_16_31_MB_IRQHandler         [WEAK]
    EXPORT  CAN0_ORed_32_47_MB_IRQHandler         [WEAK]
    EXPORT  CAN0_ORed_48_63_MB_IRQHandler         [WEAK]
    EXPORT  CAN1_ORed_IRQHandler                  [WEAK]
    EXPORT  CAN1_Error_IRQHandler                 [WEAK]
    EXPORT  CAN1_Wake_Up_IRQHandler               [WEAK]
    EXPORT  CAN1_ORed_0_15_MB_IRQHandler          [WEAK]
    EXPORT  CAN1_ORed_16_31_MB_IRQHandler         [WEAK]
    EXPORT  CAN1_ORed_32_47_MB_IRQHandler         [WEAK]
    EXPORT  CAN1_ORed_48_63_MB_IRQHandler         [WEAK]
    EXPORT  CAN2_ORed_IRQHandler                  [WEAK]
    EXPORT  CAN2_Error_IRQHandler                 [WEAK]
    EXPORT  CAN2_Wake_Up_IRQHandler               [WEAK]
    EXPORT  CAN2_ORed_0_15_MB_IRQHandler          [WEAK]
    EXPORT  CAN2_ORed_16_31_MB_IRQHandler         [WEAK]
    EXPORT  Reserved41_IRQHandler                 [WEAK]
    EXPORT  Reserved42_IRQHandler                 [WEAK]
    EXPORT  eTMR0_Ch0_Ch1_IRQHandler              [WEAK]
    EXPORT  eTMR0_Ch2_Ch3_IRQHandler              [WEAK]
    EXPORT  eTMR0_Ch4_Ch5_IRQHandler              [WEAK]
    EXPORT  eTMR0_Ch6_Ch7_IRQHandler              [WEAK]
    EXPORT  eTMR0_Fault_IRQHandler                [WEAK]
    EXPORT  eTMR0_Ovf_IRQHandler                  [WEAK]
    EXPORT  eTMR1_Ch0_Ch1_IRQHandler              [WEAK]
    EXPORT  eTMR1_Ch2_Ch3_IRQHandler              [WEAK]
    EXPORT  eTMR1_Ch4_Ch5_IRQHandler              [WEAK]
    EXPORT  eTMR1_Ch6_Ch7_IRQHandler              [WEAK]
    EXPORT  eTMR1_Fault_IRQHandler                [WEAK]
    EXPORT  eTMR1_Ovf_IRQHandler                  [WEAK]
    EXPORT  Reserved43_IRQHandler                 [WEAK]
    EXPORT  Reserved44_IRQHandler                 [WEAK]
    EXPORT  Reserved45_IRQHandler                 [WEAK]
    EXPORT  Reserved46_IRQHandler                 [WEAK]
    EXPORT  Reserved47_IRQHandler                 [WEAK]
    EXPORT  Reserved48_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch0_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch1_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch2_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch3_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch4_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch5_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch6_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch7_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch8_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch9_Ovf_IRQHandler              [WEAK]
    EXPORT  MPWM0_Ch10_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch11_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch12_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch13_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch14_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch15_Ovf_IRQHandler             [WEAK]
    EXPORT  MPWM0_Ch0_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch1_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch2_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch3_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch4_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch5_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch6_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch7_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch8_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch9_IRQHandler                  [WEAK]
    EXPORT  MPWM0_Ch10_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch11_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch12_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch13_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch14_IRQHandler                 [WEAK]
    EXPORT  MPWM0_Ch15_IRQHandler                 [WEAK]
    EXPORT  Reserved49_IRQHandler                 [WEAK]
    EXPORT  Reserved50_IRQHandler                 [WEAK]
    EXPORT  Reserved51_IRQHandler                 [WEAK]
    EXPORT  Reserved52_IRQHandler                 [WEAK]
    EXPORT  Reserved53_IRQHandler                 [WEAK]
    EXPORT  Reserved54_IRQHandler                 [WEAK]
    EXPORT  Reserved55_IRQHandler                 [WEAK]
    EXPORT  TRNG_IRQHandler                       [WEAK]
    EXPORT  HCU_IRQHandler                        [WEAK]

DMA0_IRQHandler
DMA1_IRQHandler
DMA2_IRQHandler
DMA3_IRQHandler
DMA4_IRQHandler
DMA5_IRQHandler
DMA6_IRQHandler
DMA7_IRQHandler
Reserved5_IRQHandler
Reserved6_IRQHandler
Reserved7_IRQHandler
Reserved8_IRQHandler
Reserved9_IRQHandler
Reserved10_IRQHandler
Reserved11_IRQHandler
Reserved12_IRQHandler
DMA_Error_IRQHandler
FPU_IRQHandler
EFM_IRQHandler
EFM_Error_IRQHandler
PCU_IRQHandler
EFM_Ecc_IRQHandler
WDG0_IRQHandler
RCU_IRQHandler
I2C0_Master_IRQHandler
I2C0_Slave_IRQHandler
SPI0_IRQHandler
SPI1_IRQHandler
SPI2_IRQHandler
I2C1_Master_IRQHandler
Reserved13_IRQHandler
UART0_IRQHandler
Reserved14_IRQHandler
UART1_IRQHandler
Reserved15_IRQHandler
UART2_IRQHandler
Reserved16_IRQHandler
Reserved17_IRQHandler
Reserved18_IRQHandler
eADC0_IRQHandler
Reserved19_IRQHandler
ACMP0_IRQHandler
Reserved20_IRQHandler
Reserved21_IRQHandler
EMU0_SB_IRQHandler
EMU0_DB_IRQHandler
RTC_IRQHandler
RTC_Seconds_IRQHandler
pTMR0_Ch0_IRQHandler
pTMR0_Ch1_IRQHandler
pTMR0_Ch2_IRQHandler
pTMR0_Ch3_IRQHandler
Reserved22_IRQHandler
Reserved23_IRQHandler
Reserved24_IRQHandler
Reserved25_IRQHandler
Reserved26_IRQHandler
CMU_IRQHandler
lpTMR0_IRQHandler
GPIOA_IRQHandler
GPIOB_IRQHandler
GPIOC_IRQHandler
GPIOD_IRQHandler
GPIOE_IRQHandler
Reserved27_IRQHandler
Reserved28_IRQHandler
Reserved29_IRQHandler
Reserved30_IRQHandler
Reserved31_IRQHandler
Reserved32_IRQHandler
Reserved33_IRQHandler
Reserved34_IRQHandler
Reserved35_IRQHandler
Reserved36_IRQHandler
Reserved37_IRQHandler
Reserved38_IRQHandler
Reserved39_IRQHandler
Reserved40_IRQHandler
CAN0_ORed_IRQHandler
CAN0_Error_IRQHandler
CAN0_Wake_Up_IRQHandler
CAN0_ORed_0_15_MB_IRQHandler
CAN0_ORed_16_31_MB_IRQHandler
CAN0_ORed_32_47_MB_IRQHandler
CAN0_ORed_48_63_MB_IRQHandler
CAN1_ORed_IRQHandler
CAN1_Error_IRQHandler
CAN1_Wake_Up_IRQHandler
CAN1_ORed_0_15_MB_IRQHandler
CAN1_ORed_16_31_MB_IRQHandler
CAN1_ORed_32_47_MB_IRQHandler
CAN1_ORed_48_63_MB_IRQHandler
CAN2_ORed_IRQHandler
CAN2_Error_IRQHandler
CAN2_Wake_Up_IRQHandler
CAN2_ORed_0_15_MB_IRQHandler
CAN2_ORed_16_31_MB_IRQHandler
Reserved41_IRQHandler
Reserved42_IRQHandler
eTMR0_Ch0_Ch1_IRQHandler
eTMR0_Ch2_Ch3_IRQHandler
eTMR0_Ch4_Ch5_IRQHandler
eTMR0_Ch6_Ch7_IRQHandler
eTMR0_Fault_IRQHandler
eTMR0_Ovf_IRQHandler
eTMR1_Ch0_Ch1_IRQHandler
eTMR1_Ch2_Ch3_IRQHandler
eTMR1_Ch4_Ch5_IRQHandler
eTMR1_Ch6_Ch7_IRQHandler
eTMR1_Fault_IRQHandler
eTMR1_Ovf_IRQHandler
Reserved43_IRQHandler
Reserved44_IRQHandler
Reserved45_IRQHandler
Reserved46_IRQHandler
Reserved47_IRQHandler
Reserved48_IRQHandler
MPWM0_Ch0_Ovf_IRQHandler
MPWM0_Ch1_Ovf_IRQHandler
MPWM0_Ch2_Ovf_IRQHandler
MPWM0_Ch3_Ovf_IRQHandler
MPWM0_Ch4_Ovf_IRQHandler
MPWM0_Ch5_Ovf_IRQHandler
MPWM0_Ch6_Ovf_IRQHandler
MPWM0_Ch7_Ovf_IRQHandler
MPWM0_Ch8_Ovf_IRQHandler
MPWM0_Ch9_Ovf_IRQHandler
MPWM0_Ch10_Ovf_IRQHandler
MPWM0_Ch11_Ovf_IRQHandler
MPWM0_Ch12_Ovf_IRQHandler
MPWM0_Ch13_Ovf_IRQHandler
MPWM0_Ch14_Ovf_IRQHandler
MPWM0_Ch15_Ovf_IRQHandler
MPWM0_Ch0_IRQHandler
MPWM0_Ch1_IRQHandler
MPWM0_Ch2_IRQHandler
MPWM0_Ch3_IRQHandler
MPWM0_Ch4_IRQHandler
MPWM0_Ch5_IRQHandler
MPWM0_Ch6_IRQHandler
MPWM0_Ch7_IRQHandler
MPWM0_Ch8_IRQHandler
MPWM0_Ch9_IRQHandler
MPWM0_Ch10_IRQHandler
MPWM0_Ch11_IRQHandler
MPWM0_Ch12_IRQHandler
MPWM0_Ch13_IRQHandler
MPWM0_Ch14_IRQHandler
MPWM0_Ch15_IRQHandler
Reserved49_IRQHandler
Reserved50_IRQHandler
Reserved51_IRQHandler
Reserved52_IRQHandler
Reserved53_IRQHandler
Reserved54_IRQHandler
Reserved55_IRQHandler
TRNG_IRQHandler
HCU_IRQHandler
    B       .

    ENDP
    ALIGN 4

    END