mbed library sources. Supersedes mbed-src.
Dependents: Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more
targets/cmsis/TARGET_Silicon_Labs/TARGET_EFM32/TARGET_EFM32ZG_STK3200/TOOLCHAIN_IAR/startup_efm32zg.s@148:21d94c44109e, 2016-09-30 (annotated)
- Committer:
- <>
- Date:
- Fri Sep 30 18:07:01 2016 +0100
- Revision:
- 148:21d94c44109e
This updates the lib to the mbed lib v127
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
<> | 148:21d94c44109e | 1 | ;/**************************************************************************//** |
<> | 148:21d94c44109e | 2 | ; * @file startup_efm32zg.s |
<> | 148:21d94c44109e | 3 | ; * @brief CMSIS Core Device Startup File |
<> | 148:21d94c44109e | 4 | ; * Silicon Labs EFM32ZG Device Series |
<> | 148:21d94c44109e | 5 | ; * @version 5.0.0 |
<> | 148:21d94c44109e | 6 | ; * @date 30. January 2012 |
<> | 148:21d94c44109e | 7 | ; * |
<> | 148:21d94c44109e | 8 | ; * @note |
<> | 148:21d94c44109e | 9 | ; * Copyright (C) 2012 ARM Limited. All rights reserved. |
<> | 148:21d94c44109e | 10 | ; * |
<> | 148:21d94c44109e | 11 | ; * @par |
<> | 148:21d94c44109e | 12 | ; * ARM Limited (ARM) is supplying this software for use with Cortex-M |
<> | 148:21d94c44109e | 13 | ; * processor based microcontrollers. This file can be freely distributed |
<> | 148:21d94c44109e | 14 | ; * within development tools that are supporting such ARM based processors. |
<> | 148:21d94c44109e | 15 | ; * |
<> | 148:21d94c44109e | 16 | ; * @par |
<> | 148:21d94c44109e | 17 | ; * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED |
<> | 148:21d94c44109e | 18 | ; * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF |
<> | 148:21d94c44109e | 19 | ; * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. |
<> | 148:21d94c44109e | 20 | ; * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR |
<> | 148:21d94c44109e | 21 | ; * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
<> | 148:21d94c44109e | 22 | ; * |
<> | 148:21d94c44109e | 23 | ; ******************************************************************************/ |
<> | 148:21d94c44109e | 24 | |
<> | 148:21d94c44109e | 25 | ; |
<> | 148:21d94c44109e | 26 | ; The modules in this file are included in the libraries, and may be replaced |
<> | 148:21d94c44109e | 27 | ; by any user-defined modules that define the PUBLIC symbol _program_start or |
<> | 148:21d94c44109e | 28 | ; a user defined start symbol. |
<> | 148:21d94c44109e | 29 | ; To override the cstartup defined in the library, simply add your modified |
<> | 148:21d94c44109e | 30 | ; version to the workbench project. |
<> | 148:21d94c44109e | 31 | ; |
<> | 148:21d94c44109e | 32 | ; The vector table is normally located at address 0. |
<> | 148:21d94c44109e | 33 | ; |
<> | 148:21d94c44109e | 34 | ; When debugging in RAM, it can be located in RAM with at least a 128 byte |
<> | 148:21d94c44109e | 35 | ; alignment, 256 byte alignment is requied if all interrupt vectors are in use. |
<> | 148:21d94c44109e | 36 | ; |
<> | 148:21d94c44109e | 37 | ; The name "__vector_table" has special meaning for C-SPY: |
<> | 148:21d94c44109e | 38 | ; it is where the SP start value is found, and the NVIC vector |
<> | 148:21d94c44109e | 39 | ; table register (VTOR) is initialized to this address if != 0. |
<> | 148:21d94c44109e | 40 | ; |
<> | 148:21d94c44109e | 41 | ; Cortex-M version |
<> | 148:21d94c44109e | 42 | ; |
<> | 148:21d94c44109e | 43 | MODULE ?cstartup |
<> | 148:21d94c44109e | 44 | |
<> | 148:21d94c44109e | 45 | ;; Forward declaration of sections. |
<> | 148:21d94c44109e | 46 | SECTION CSTACK:DATA:NOROOT(3) |
<> | 148:21d94c44109e | 47 | |
<> | 148:21d94c44109e | 48 | SECTION .intvec:CODE:NOROOT(8) |
<> | 148:21d94c44109e | 49 | |
<> | 148:21d94c44109e | 50 | EXTERN __iar_program_start |
<> | 148:21d94c44109e | 51 | EXTERN SystemInit |
<> | 148:21d94c44109e | 52 | PUBLIC __vector_table |
<> | 148:21d94c44109e | 53 | PUBLIC __vector_table_0x1c |
<> | 148:21d94c44109e | 54 | PUBLIC __Vectors |
<> | 148:21d94c44109e | 55 | PUBLIC __Vectors_End |
<> | 148:21d94c44109e | 56 | PUBLIC __Vectors_Size |
<> | 148:21d94c44109e | 57 | |
<> | 148:21d94c44109e | 58 | DATA |
<> | 148:21d94c44109e | 59 | |
<> | 148:21d94c44109e | 60 | __vector_table |
<> | 148:21d94c44109e | 61 | DCD sfe(CSTACK) |
<> | 148:21d94c44109e | 62 | DCD Reset_Handler |
<> | 148:21d94c44109e | 63 | |
<> | 148:21d94c44109e | 64 | DCD NMI_Handler |
<> | 148:21d94c44109e | 65 | DCD HardFault_Handler |
<> | 148:21d94c44109e | 66 | DCD 0 |
<> | 148:21d94c44109e | 67 | DCD 0 |
<> | 148:21d94c44109e | 68 | DCD 0 |
<> | 148:21d94c44109e | 69 | __vector_table_0x1c |
<> | 148:21d94c44109e | 70 | DCD 0 |
<> | 148:21d94c44109e | 71 | DCD 0 |
<> | 148:21d94c44109e | 72 | DCD 0 |
<> | 148:21d94c44109e | 73 | DCD 0 |
<> | 148:21d94c44109e | 74 | DCD SVC_Handler |
<> | 148:21d94c44109e | 75 | DCD 0 |
<> | 148:21d94c44109e | 76 | DCD 0 |
<> | 148:21d94c44109e | 77 | DCD PendSV_Handler |
<> | 148:21d94c44109e | 78 | DCD SysTick_Handler |
<> | 148:21d94c44109e | 79 | |
<> | 148:21d94c44109e | 80 | ; External Interrupts |
<> | 148:21d94c44109e | 81 | |
<> | 148:21d94c44109e | 82 | DCD DMA_IRQHandler ; 0: DMA Interrupt |
<> | 148:21d94c44109e | 83 | DCD GPIO_EVEN_IRQHandler ; 1: GPIO_EVEN Interrupt |
<> | 148:21d94c44109e | 84 | DCD TIMER0_IRQHandler ; 2: TIMER0 Interrupt |
<> | 148:21d94c44109e | 85 | DCD ACMP0_IRQHandler ; 3: ACMP0 Interrupt |
<> | 148:21d94c44109e | 86 | DCD ADC0_IRQHandler ; 4: ADC0 Interrupt |
<> | 148:21d94c44109e | 87 | DCD I2C0_IRQHandler ; 5: I2C0 Interrupt |
<> | 148:21d94c44109e | 88 | DCD GPIO_ODD_IRQHandler ; 6: GPIO_ODD Interrupt |
<> | 148:21d94c44109e | 89 | DCD TIMER1_IRQHandler ; 7: TIMER1 Interrupt |
<> | 148:21d94c44109e | 90 | DCD USART1_RX_IRQHandler ; 8: USART1_RX Interrupt |
<> | 148:21d94c44109e | 91 | DCD USART1_TX_IRQHandler ; 9: USART1_TX Interrupt |
<> | 148:21d94c44109e | 92 | DCD LEUART0_IRQHandler ; 10: LEUART0 Interrupt |
<> | 148:21d94c44109e | 93 | DCD PCNT0_IRQHandler ; 11: PCNT0 Interrupt |
<> | 148:21d94c44109e | 94 | DCD RTC_IRQHandler ; 12: RTC Interrupt |
<> | 148:21d94c44109e | 95 | DCD CMU_IRQHandler ; 13: CMU Interrupt |
<> | 148:21d94c44109e | 96 | DCD VCMP_IRQHandler ; 14: VCMP Interrupt |
<> | 148:21d94c44109e | 97 | DCD MSC_IRQHandler ; 15: MSC Interrupt |
<> | 148:21d94c44109e | 98 | DCD AES_IRQHandler ; 16: AES Interrupt |
<> | 148:21d94c44109e | 99 | DCD 0 ; 17: Reserved Interrupt |
<> | 148:21d94c44109e | 100 | DCD 0 ; 18: Reserved Interrupt |
<> | 148:21d94c44109e | 101 | |
<> | 148:21d94c44109e | 102 | |
<> | 148:21d94c44109e | 103 | __Vectors_End |
<> | 148:21d94c44109e | 104 | __Vectors EQU __vector_table |
<> | 148:21d94c44109e | 105 | __Vectors_Size EQU __Vectors_End - __Vectors |
<> | 148:21d94c44109e | 106 | |
<> | 148:21d94c44109e | 107 | |
<> | 148:21d94c44109e | 108 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
<> | 148:21d94c44109e | 109 | ;; |
<> | 148:21d94c44109e | 110 | ;; Default interrupt handlers. |
<> | 148:21d94c44109e | 111 | ;; |
<> | 148:21d94c44109e | 112 | THUMB |
<> | 148:21d94c44109e | 113 | |
<> | 148:21d94c44109e | 114 | PUBWEAK Reset_Handler |
<> | 148:21d94c44109e | 115 | SECTION .text:CODE:REORDER:NOROOT(2) |
<> | 148:21d94c44109e | 116 | Reset_Handler |
<> | 148:21d94c44109e | 117 | LDR R0, =SystemInit |
<> | 148:21d94c44109e | 118 | BLX R0 |
<> | 148:21d94c44109e | 119 | LDR R0, =__iar_program_start |
<> | 148:21d94c44109e | 120 | BX R0 |
<> | 148:21d94c44109e | 121 | |
<> | 148:21d94c44109e | 122 | PUBWEAK NMI_Handler |
<> | 148:21d94c44109e | 123 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 124 | NMI_Handler |
<> | 148:21d94c44109e | 125 | B NMI_Handler |
<> | 148:21d94c44109e | 126 | |
<> | 148:21d94c44109e | 127 | PUBWEAK HardFault_Handler |
<> | 148:21d94c44109e | 128 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 129 | HardFault_Handler |
<> | 148:21d94c44109e | 130 | B HardFault_Handler |
<> | 148:21d94c44109e | 131 | |
<> | 148:21d94c44109e | 132 | PUBWEAK SVC_Handler |
<> | 148:21d94c44109e | 133 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 134 | SVC_Handler |
<> | 148:21d94c44109e | 135 | B SVC_Handler |
<> | 148:21d94c44109e | 136 | |
<> | 148:21d94c44109e | 137 | PUBWEAK PendSV_Handler |
<> | 148:21d94c44109e | 138 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 139 | PendSV_Handler |
<> | 148:21d94c44109e | 140 | B PendSV_Handler |
<> | 148:21d94c44109e | 141 | |
<> | 148:21d94c44109e | 142 | PUBWEAK SysTick_Handler |
<> | 148:21d94c44109e | 143 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 144 | SysTick_Handler |
<> | 148:21d94c44109e | 145 | B SysTick_Handler |
<> | 148:21d94c44109e | 146 | |
<> | 148:21d94c44109e | 147 | ; Device specific interrupt handlers |
<> | 148:21d94c44109e | 148 | |
<> | 148:21d94c44109e | 149 | PUBWEAK DMA_IRQHandler |
<> | 148:21d94c44109e | 150 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 151 | DMA_IRQHandler |
<> | 148:21d94c44109e | 152 | B DMA_IRQHandler |
<> | 148:21d94c44109e | 153 | |
<> | 148:21d94c44109e | 154 | PUBWEAK GPIO_EVEN_IRQHandler |
<> | 148:21d94c44109e | 155 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 156 | GPIO_EVEN_IRQHandler |
<> | 148:21d94c44109e | 157 | B GPIO_EVEN_IRQHandler |
<> | 148:21d94c44109e | 158 | |
<> | 148:21d94c44109e | 159 | PUBWEAK TIMER0_IRQHandler |
<> | 148:21d94c44109e | 160 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 161 | TIMER0_IRQHandler |
<> | 148:21d94c44109e | 162 | B TIMER0_IRQHandler |
<> | 148:21d94c44109e | 163 | |
<> | 148:21d94c44109e | 164 | PUBWEAK ACMP0_IRQHandler |
<> | 148:21d94c44109e | 165 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 166 | ACMP0_IRQHandler |
<> | 148:21d94c44109e | 167 | B ACMP0_IRQHandler |
<> | 148:21d94c44109e | 168 | |
<> | 148:21d94c44109e | 169 | PUBWEAK ADC0_IRQHandler |
<> | 148:21d94c44109e | 170 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 171 | ADC0_IRQHandler |
<> | 148:21d94c44109e | 172 | B ADC0_IRQHandler |
<> | 148:21d94c44109e | 173 | |
<> | 148:21d94c44109e | 174 | PUBWEAK I2C0_IRQHandler |
<> | 148:21d94c44109e | 175 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 176 | I2C0_IRQHandler |
<> | 148:21d94c44109e | 177 | B I2C0_IRQHandler |
<> | 148:21d94c44109e | 178 | |
<> | 148:21d94c44109e | 179 | PUBWEAK GPIO_ODD_IRQHandler |
<> | 148:21d94c44109e | 180 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 181 | GPIO_ODD_IRQHandler |
<> | 148:21d94c44109e | 182 | B GPIO_ODD_IRQHandler |
<> | 148:21d94c44109e | 183 | |
<> | 148:21d94c44109e | 184 | PUBWEAK TIMER1_IRQHandler |
<> | 148:21d94c44109e | 185 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 186 | TIMER1_IRQHandler |
<> | 148:21d94c44109e | 187 | B TIMER1_IRQHandler |
<> | 148:21d94c44109e | 188 | |
<> | 148:21d94c44109e | 189 | PUBWEAK USART1_RX_IRQHandler |
<> | 148:21d94c44109e | 190 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 191 | USART1_RX_IRQHandler |
<> | 148:21d94c44109e | 192 | B USART1_RX_IRQHandler |
<> | 148:21d94c44109e | 193 | |
<> | 148:21d94c44109e | 194 | PUBWEAK USART1_TX_IRQHandler |
<> | 148:21d94c44109e | 195 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 196 | USART1_TX_IRQHandler |
<> | 148:21d94c44109e | 197 | B USART1_TX_IRQHandler |
<> | 148:21d94c44109e | 198 | |
<> | 148:21d94c44109e | 199 | PUBWEAK LEUART0_IRQHandler |
<> | 148:21d94c44109e | 200 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 201 | LEUART0_IRQHandler |
<> | 148:21d94c44109e | 202 | B LEUART0_IRQHandler |
<> | 148:21d94c44109e | 203 | |
<> | 148:21d94c44109e | 204 | PUBWEAK PCNT0_IRQHandler |
<> | 148:21d94c44109e | 205 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 206 | PCNT0_IRQHandler |
<> | 148:21d94c44109e | 207 | B PCNT0_IRQHandler |
<> | 148:21d94c44109e | 208 | |
<> | 148:21d94c44109e | 209 | PUBWEAK RTC_IRQHandler |
<> | 148:21d94c44109e | 210 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 211 | RTC_IRQHandler |
<> | 148:21d94c44109e | 212 | B RTC_IRQHandler |
<> | 148:21d94c44109e | 213 | |
<> | 148:21d94c44109e | 214 | PUBWEAK CMU_IRQHandler |
<> | 148:21d94c44109e | 215 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 216 | CMU_IRQHandler |
<> | 148:21d94c44109e | 217 | B CMU_IRQHandler |
<> | 148:21d94c44109e | 218 | |
<> | 148:21d94c44109e | 219 | PUBWEAK VCMP_IRQHandler |
<> | 148:21d94c44109e | 220 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 221 | VCMP_IRQHandler |
<> | 148:21d94c44109e | 222 | B VCMP_IRQHandler |
<> | 148:21d94c44109e | 223 | |
<> | 148:21d94c44109e | 224 | PUBWEAK MSC_IRQHandler |
<> | 148:21d94c44109e | 225 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 226 | MSC_IRQHandler |
<> | 148:21d94c44109e | 227 | B MSC_IRQHandler |
<> | 148:21d94c44109e | 228 | |
<> | 148:21d94c44109e | 229 | PUBWEAK AES_IRQHandler |
<> | 148:21d94c44109e | 230 | SECTION .text:CODE:REORDER:NOROOT(1) |
<> | 148:21d94c44109e | 231 | AES_IRQHandler |
<> | 148:21d94c44109e | 232 | B AES_IRQHandler |
<> | 148:21d94c44109e | 233 | |
<> | 148:21d94c44109e | 234 | |
<> | 148:21d94c44109e | 235 | END |