]> begriffs open source - cmsis-dfp-stm32f4/blob - Source/Templates/arm/startup_stm32f413xx.s
[CMSIS] Allow redefinition of the macro 'VECT_TAB_OFFSET' externally from the IDE...
[cmsis-dfp-stm32f4] / Source / Templates / arm / startup_stm32f413xx.s
1 ;*******************************************************************************
2 ;* File Name          : startup_stm32f413xx.s
3 ;* Author             : MCD Application Team
4 ;* Description        : STM32F413xx devices vector table for MDK-ARM toolchain. 
5 ;*                      This module performs:
6 ;*                      - Set the initial SP
7 ;*                      - Set the initial PC == Reset_Handler
8 ;*                      - Set the vector table entries with the exceptions ISR address
9 ;*                      - Branches to __main in the C library (which eventually
10 ;*                        calls main()).
11 ;*                      After Reset the CortexM4 processor is in Thread mode,
12 ;*                      priority is Privileged, and the Stack is set to Main.
13 ;*******************************************************************************
14 ;* @attention
15 ;*
16 ;* Copyright (c) 2017 STMicroelectronics.
17 ;* All rights reserved.
18 ;*
19 ;* This software is licensed under terms that can be found in the LICENSE file
20 ;* in the root directory of this software component.
21 ;* If no LICENSE file comes with this software, it is provided AS-IS.
22 ;*
23 ;*******************************************************************************
24 ;* <<< Use Configuration Wizard in Context Menu >>>
25 ;
26 ; Amount of memory (in bytes) allocated for Stack
27 ; Tailor this value to your application needs
28 ; <h> Stack Configuration
29 ;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
30 ; </h>
31
32 Stack_Size      EQU     0x00000400
33
34                 AREA    STACK, NOINIT, READWRITE, ALIGN=3
35 Stack_Mem       SPACE   Stack_Size
36 __initial_sp
37
38
39 ; <h> Heap Configuration
40 ;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
41 ; </h>
42
43 Heap_Size       EQU     0x00000200
44
45                 AREA    HEAP, NOINIT, READWRITE, ALIGN=3
46 __heap_base
47 Heap_Mem        SPACE   Heap_Size
48 __heap_limit
49
50                 PRESERVE8
51                 THUMB
52
53
54 ; Vector Table Mapped to Address 0 at Reset
55                 AREA    RESET, DATA, READONLY
56                 EXPORT  __Vectors
57                 EXPORT  __Vectors_End
58                 EXPORT  __Vectors_Size
59
60 __Vectors       DCD     __initial_sp               ; Top of Stack
61                 DCD     Reset_Handler              ; Reset Handler
62                 DCD     NMI_Handler                ; NMI Handler
63                 DCD     HardFault_Handler          ; Hard Fault Handler
64                 DCD     MemManage_Handler          ; MPU Fault Handler
65                 DCD     BusFault_Handler           ; Bus Fault Handler
66                 DCD     UsageFault_Handler         ; Usage Fault Handler
67                 DCD     0                          ; Reserved
68                 DCD     0                          ; Reserved
69                 DCD     0                          ; Reserved
70                 DCD     0                          ; Reserved
71                 DCD     SVC_Handler                ; SVCall Handler
72                 DCD     DebugMon_Handler           ; Debug Monitor Handler
73                 DCD     0                          ; Reserved
74                 DCD     PendSV_Handler             ; PendSV Handler
75                 DCD     SysTick_Handler            ; SysTick Handler
76
77                 ; External Interrupts
78                 DCD     WWDG_IRQHandler                   ; Window WatchDog
79                 DCD     PVD_IRQHandler                    ; PVD through EXTI Line detection
80                 DCD     TAMP_STAMP_IRQHandler             ; Tamper and TimeStamps through the EXTI line
81                 DCD     RTC_WKUP_IRQHandler               ; RTC Wakeup through the EXTI line
82                 DCD     FLASH_IRQHandler                  ; FLASH
83                 DCD     RCC_IRQHandler                    ; RCC
84                 DCD     EXTI0_IRQHandler                  ; EXTI Line0
85                 DCD     EXTI1_IRQHandler                  ; EXTI Line1
86                 DCD     EXTI2_IRQHandler                  ; EXTI Line2
87                 DCD     EXTI3_IRQHandler                  ; EXTI Line3
88                 DCD     EXTI4_IRQHandler                  ; EXTI Line4
89                 DCD     DMA1_Stream0_IRQHandler           ; DMA1 Stream 0
90                 DCD     DMA1_Stream1_IRQHandler           ; DMA1 Stream 1
91                 DCD     DMA1_Stream2_IRQHandler           ; DMA1 Stream 2
92                 DCD     DMA1_Stream3_IRQHandler           ; DMA1 Stream 3
93                 DCD     DMA1_Stream4_IRQHandler           ; DMA1 Stream 4
94                 DCD     DMA1_Stream5_IRQHandler           ; DMA1 Stream 5
95                 DCD     DMA1_Stream6_IRQHandler           ; DMA1 Stream 6
96                 DCD     ADC_IRQHandler                    ; ADC1, ADC2 and ADC3s
97                 DCD     CAN1_TX_IRQHandler                ; CAN1 TX
98                 DCD     CAN1_RX0_IRQHandler               ; CAN1 RX0
99                 DCD     CAN1_RX1_IRQHandler               ; CAN1 RX1
100                 DCD     CAN1_SCE_IRQHandler               ; CAN1 SCE
101                 DCD     EXTI9_5_IRQHandler                ; External Line[9:5]s
102                 DCD     TIM1_BRK_TIM9_IRQHandler          ; TIM1 Break and TIM9
103                 DCD     TIM1_UP_TIM10_IRQHandler          ; TIM1 Update and TIM10
104                 DCD     TIM1_TRG_COM_TIM11_IRQHandler     ; TIM1 Trigger and Commutation and TIM11
105                 DCD     TIM1_CC_IRQHandler                ; TIM1 Capture Compare
106                 DCD     TIM2_IRQHandler                   ; TIM2
107                 DCD     TIM3_IRQHandler                   ; TIM3
108                 DCD     TIM4_IRQHandler                   ; TIM4
109                 DCD     I2C1_EV_IRQHandler                ; I2C1 Event
110                 DCD     I2C1_ER_IRQHandler                ; I2C1 Error
111                 DCD     I2C2_EV_IRQHandler                ; I2C2 Event
112                 DCD     I2C2_ER_IRQHandler                ; I2C2 Error
113                 DCD     SPI1_IRQHandler                   ; SPI1
114                 DCD     SPI2_IRQHandler                   ; SPI2
115                 DCD     USART1_IRQHandler                 ; USART1
116                 DCD     USART2_IRQHandler                 ; USART2
117                 DCD     USART3_IRQHandler                 ; USART3
118                 DCD     EXTI15_10_IRQHandler              ; External Line[15:10]s
119                 DCD     RTC_Alarm_IRQHandler              ; RTC Alarm (A and B) through EXTI Line
120                 DCD     OTG_FS_WKUP_IRQHandler            ; USB OTG FS Wakeup through EXTI line
121                 DCD     TIM8_BRK_TIM12_IRQHandler         ; TIM8 Break and TIM12
122                 DCD     TIM8_UP_TIM13_IRQHandler          ; TIM8 Update and TIM13
123                 DCD     TIM8_TRG_COM_TIM14_IRQHandler     ; TIM8 Trigger and Commutation and TIM14
124                 DCD     TIM8_CC_IRQHandler                ; TIM8 Capture Compare
125                 DCD     DMA1_Stream7_IRQHandler           ; DMA1 Stream7
126                 DCD     FSMC_IRQHandler                   ; FSMC
127                 DCD     SDIO_IRQHandler                   ; SDIO
128                 DCD     TIM5_IRQHandler                   ; TIM5
129                 DCD     SPI3_IRQHandler                   ; SPI3
130                 DCD     UART4_IRQHandler                  ; UART4
131                 DCD     UART5_IRQHandler                  ; UART5
132                 DCD     TIM6_DAC_IRQHandler               ; TIM6, DAC1 and DAC2
133                 DCD     TIM7_IRQHandler                   ; TIM7
134                 DCD     DMA2_Stream0_IRQHandler           ; DMA2 Stream 0
135                 DCD     DMA2_Stream1_IRQHandler           ; DMA2 Stream 1
136                 DCD     DMA2_Stream2_IRQHandler           ; DMA2 Stream 2
137                 DCD     DMA2_Stream3_IRQHandler           ; DMA2 Stream 3
138                 DCD     DMA2_Stream4_IRQHandler           ; DMA2 Stream 4
139                 DCD     DFSDM1_FLT0_IRQHandler            ; DFSDM1 Filter 0 global interrupt
140                 DCD     DFSDM1_FLT1_IRQHandler            ; DFSDM1 Filter 1 global interrupt
141                 DCD     CAN2_TX_IRQHandler                ; CAN2 TX
142                 DCD     CAN2_RX0_IRQHandler               ; CAN2 RX0
143                 DCD     CAN2_RX1_IRQHandler               ; CAN2 RX1
144                 DCD     CAN2_SCE_IRQHandler               ; CAN2 SCE
145                 DCD     OTG_FS_IRQHandler                 ; USB OTG FS
146                 DCD     DMA2_Stream5_IRQHandler           ; DMA2 Stream 5
147                 DCD     DMA2_Stream6_IRQHandler           ; DMA2 Stream 6
148                 DCD     DMA2_Stream7_IRQHandler           ; DMA2 Stream 7
149                 DCD     USART6_IRQHandler                 ; USART6
150                 DCD     I2C3_EV_IRQHandler                ; I2C3 event
151                 DCD     I2C3_ER_IRQHandler                ; I2C3 error
152                 DCD     CAN3_TX_IRQHandler                ; CAN3 TX
153                 DCD     CAN3_RX0_IRQHandler               ; CAN3 RX0
154                 DCD     CAN3_RX1_IRQHandler               ; CAN3 RX1
155                 DCD     CAN3_SCE_IRQHandler               ; CAN3 SCE
156                 DCD     0                                 ; Reserved
157                 DCD     0                                 ; Reserved
158                 DCD     RNG_IRQHandler                    ; RNG
159                 DCD     FPU_IRQHandler                    ; FPU
160                 DCD     UART7_IRQHandler                  ; UART7
161                 DCD     UART8_IRQHandler                  ; UART8
162                 DCD     SPI4_IRQHandler                   ; SPI4
163                 DCD     SPI5_IRQHandler                   ; SPI5
164                 DCD     0                                 ; Reserved
165                 DCD     SAI1_IRQHandler                   ; SAI1
166                 DCD     UART9_IRQHandler                  ; UART9
167                 DCD     UART10_IRQHandler                 ; UART10
168                 DCD     0                                 ; Reserved
169                 DCD     0                                 ; Reserved
170                 DCD     QUADSPI_IRQHandler                ; QuadSPI
171                 DCD     0                                 ; Reserved
172                 DCD     0                                 ; Reserved
173                 DCD     FMPI2C1_EV_IRQHandler             ; FMPI2C1 Event
174                 DCD     FMPI2C1_ER_IRQHandler             ; FMPI2C1 Error
175                 DCD     LPTIM1_IRQHandler                 ; LPTIM1
176                 DCD     DFSDM2_FLT0_IRQHandler            ; DFSDM2 Filter0
177                 DCD     DFSDM2_FLT1_IRQHandler            ; DFSDM2 Filter1
178                 DCD     DFSDM2_FLT2_IRQHandler            ; DFSDM2 Filter2
179                 DCD     DFSDM2_FLT3_IRQHandler            ; DFSDM2 Filter3
180
181 __Vectors_End
182
183 __Vectors_Size  EQU  __Vectors_End - __Vectors
184
185                 AREA    |.text|, CODE, READONLY
186
187 ; Reset handler
188 Reset_Handler    PROC
189                  EXPORT  Reset_Handler             [WEAK]
190         IMPORT  SystemInit
191         IMPORT  __main
192
193                  LDR     R0, =SystemInit
194                  BLX     R0
195                  LDR     R0, =__main
196                  BX      R0
197                  ENDP
198
199 ; Dummy Exception Handlers (infinite loops which can be modified)
200
201 NMI_Handler     PROC
202                 EXPORT  NMI_Handler                [WEAK]
203                 B       .
204                 ENDP
205 HardFault_Handler\
206                 PROC
207                 EXPORT  HardFault_Handler          [WEAK]
208                 B       .
209                 ENDP
210 MemManage_Handler\
211                 PROC
212                 EXPORT  MemManage_Handler          [WEAK]
213                 B       .
214                 ENDP
215 BusFault_Handler\
216                 PROC
217                 EXPORT  BusFault_Handler           [WEAK]
218                 B       .
219                 ENDP
220 UsageFault_Handler\
221                 PROC
222                 EXPORT  UsageFault_Handler         [WEAK]
223                 B       .
224                 ENDP
225 SVC_Handler     PROC
226                 EXPORT  SVC_Handler                [WEAK]
227                 B       .
228                 ENDP
229 DebugMon_Handler\
230                 PROC
231                 EXPORT  DebugMon_Handler           [WEAK]
232                 B       .
233                 ENDP
234 PendSV_Handler  PROC
235                 EXPORT  PendSV_Handler             [WEAK]
236                 B       .
237                 ENDP
238 SysTick_Handler PROC
239                 EXPORT  SysTick_Handler            [WEAK]
240                 B       .
241                 ENDP
242
243 Default_Handler PROC
244
245                 EXPORT  WWDG_IRQHandler                   [WEAK]
246                 EXPORT  PVD_IRQHandler                    [WEAK]
247                 EXPORT  TAMP_STAMP_IRQHandler             [WEAK]
248                 EXPORT  RTC_WKUP_IRQHandler               [WEAK]
249                 EXPORT  FLASH_IRQHandler                  [WEAK]
250                 EXPORT  RCC_IRQHandler                    [WEAK]
251                 EXPORT  EXTI0_IRQHandler                  [WEAK]
252                 EXPORT  EXTI1_IRQHandler                  [WEAK]
253                 EXPORT  EXTI2_IRQHandler                  [WEAK]
254                 EXPORT  EXTI3_IRQHandler                  [WEAK]
255                 EXPORT  EXTI4_IRQHandler                  [WEAK]
256                 EXPORT  DMA1_Stream0_IRQHandler           [WEAK]
257                 EXPORT  DMA1_Stream1_IRQHandler           [WEAK]
258                 EXPORT  DMA1_Stream2_IRQHandler           [WEAK]
259                 EXPORT  DMA1_Stream3_IRQHandler           [WEAK]
260                 EXPORT  DMA1_Stream4_IRQHandler           [WEAK]
261                 EXPORT  DMA1_Stream5_IRQHandler           [WEAK]
262                 EXPORT  DMA1_Stream6_IRQHandler           [WEAK]
263                 EXPORT  ADC_IRQHandler                    [WEAK]
264                 EXPORT  CAN1_TX_IRQHandler                [WEAK]
265                 EXPORT  CAN1_RX0_IRQHandler               [WEAK]
266                 EXPORT  CAN1_RX1_IRQHandler               [WEAK]
267                 EXPORT  CAN1_SCE_IRQHandler               [WEAK]
268                 EXPORT  EXTI9_5_IRQHandler                [WEAK]
269                 EXPORT  TIM1_BRK_TIM9_IRQHandler          [WEAK]
270                 EXPORT  TIM1_UP_TIM10_IRQHandler          [WEAK]
271                 EXPORT  TIM1_TRG_COM_TIM11_IRQHandler     [WEAK]
272                 EXPORT  TIM1_CC_IRQHandler                [WEAK]
273                 EXPORT  TIM2_IRQHandler                   [WEAK]
274                 EXPORT  TIM3_IRQHandler                   [WEAK]
275                 EXPORT  TIM4_IRQHandler                   [WEAK]
276                 EXPORT  I2C1_EV_IRQHandler                [WEAK]
277                 EXPORT  I2C1_ER_IRQHandler                [WEAK]
278                 EXPORT  I2C2_EV_IRQHandler                [WEAK]
279                 EXPORT  I2C2_ER_IRQHandler                [WEAK]
280                 EXPORT  SPI1_IRQHandler                   [WEAK]
281                 EXPORT  SPI2_IRQHandler                   [WEAK]
282                 EXPORT  USART1_IRQHandler                 [WEAK]
283                 EXPORT  USART2_IRQHandler                 [WEAK]
284                 EXPORT  USART3_IRQHandler                 [WEAK]
285                 EXPORT  EXTI15_10_IRQHandler              [WEAK]
286                 EXPORT  RTC_Alarm_IRQHandler              [WEAK]
287                 EXPORT  OTG_FS_WKUP_IRQHandler            [WEAK]
288                 EXPORT  OTG_FS_IRQHandler                 [WEAK]
289                 EXPORT  TIM8_BRK_TIM12_IRQHandler         [WEAK]
290                 EXPORT  TIM8_UP_TIM13_IRQHandler          [WEAK]
291                 EXPORT  TIM8_TRG_COM_TIM14_IRQHandler     [WEAK]
292                 EXPORT  TIM8_CC_IRQHandler                [WEAK]
293                 EXPORT  DMA1_Stream7_IRQHandler           [WEAK]
294                 EXPORT  FSMC_IRQHandler                   [WEAK]
295                 EXPORT  SDIO_IRQHandler                   [WEAK]
296                 EXPORT  TIM5_IRQHandler                   [WEAK]
297                 EXPORT  SPI3_IRQHandler                   [WEAK]
298                 EXPORT  UART4_IRQHandler                  [WEAK]
299                 EXPORT  UART5_IRQHandler                  [WEAK]
300                 EXPORT  TIM6_DAC_IRQHandler               [WEAK]
301                 EXPORT  TIM7_IRQHandler                   [WEAK]
302                 EXPORT  DMA2_Stream0_IRQHandler           [WEAK]
303                 EXPORT  DMA2_Stream1_IRQHandler           [WEAK]
304                 EXPORT  DMA2_Stream2_IRQHandler           [WEAK]
305                 EXPORT  DMA2_Stream3_IRQHandler           [WEAK]
306                 EXPORT  DMA2_Stream4_IRQHandler           [WEAK]
307                 EXPORT  DMA2_Stream4_IRQHandler           [WEAK]
308                 EXPORT  DFSDM1_FLT0_IRQHandler            [WEAK]
309                 EXPORT  DFSDM1_FLT1_IRQHandler            [WEAK]
310                 EXPORT  CAN2_TX_IRQHandler                [WEAK]
311                 EXPORT  CAN2_RX0_IRQHandler               [WEAK]
312                 EXPORT  CAN2_RX1_IRQHandler               [WEAK]
313                 EXPORT  CAN2_SCE_IRQHandler               [WEAK]
314                 EXPORT  DMA2_Stream5_IRQHandler           [WEAK]
315                 EXPORT  DMA2_Stream6_IRQHandler           [WEAK]
316                 EXPORT  DMA2_Stream7_IRQHandler           [WEAK]
317                 EXPORT  USART6_IRQHandler                 [WEAK]
318                 EXPORT  I2C3_EV_IRQHandler                [WEAK]
319                 EXPORT  I2C3_ER_IRQHandler                [WEAK]
320                 EXPORT  CAN3_TX_IRQHandler                [WEAK]
321                 EXPORT  CAN3_RX0_IRQHandler               [WEAK]
322                 EXPORT  CAN3_RX1_IRQHandler               [WEAK]
323                 EXPORT  CAN3_SCE_IRQHandler               [WEAK]
324                 EXPORT  RNG_IRQHandler                    [WEAK]
325                 EXPORT  FPU_IRQHandler                    [WEAK]
326                 EXPORT  UART7_IRQHandler                  [WEAK]
327                 EXPORT  UART8_IRQHandler                  [WEAK]
328                 EXPORT  SPI4_IRQHandler                   [WEAK]
329                 EXPORT  SPI5_IRQHandler                   [WEAK]
330                 EXPORT  SAI1_IRQHandler                   [WEAK]
331                 EXPORT  UART9_IRQHandler                  [WEAK]
332                 EXPORT  UART10_IRQHandler                 [WEAK]
333                 EXPORT  QUADSPI_IRQHandler                [WEAK]
334                 EXPORT  FMPI2C1_EV_IRQHandler             [WEAK]
335                 EXPORT  FMPI2C1_ER_IRQHandler             [WEAK]
336                 EXPORT  LPTIM1_IRQHandler                 [WEAK]
337                 EXPORT  DFSDM2_FLT0_IRQHandler            [WEAK]
338                 EXPORT  DFSDM2_FLT1_IRQHandler            [WEAK]
339                 EXPORT  DFSDM2_FLT2_IRQHandler            [WEAK]
340                 EXPORT  DFSDM2_FLT3_IRQHandler            [WEAK]
341
342 WWDG_IRQHandler
343 PVD_IRQHandler
344 TAMP_STAMP_IRQHandler
345 RTC_WKUP_IRQHandler
346 FLASH_IRQHandler
347 RCC_IRQHandler
348 EXTI0_IRQHandler
349 EXTI1_IRQHandler
350 EXTI2_IRQHandler
351 EXTI3_IRQHandler
352 EXTI4_IRQHandler
353 DMA1_Stream0_IRQHandler
354 DMA1_Stream1_IRQHandler
355 DMA1_Stream2_IRQHandler
356 DMA1_Stream3_IRQHandler
357 DMA1_Stream4_IRQHandler
358 DMA1_Stream5_IRQHandler
359 DMA1_Stream6_IRQHandler
360 ADC_IRQHandler
361 CAN1_TX_IRQHandler
362 CAN1_RX0_IRQHandler
363 CAN1_RX1_IRQHandler
364 CAN1_SCE_IRQHandler
365 EXTI9_5_IRQHandler
366 TIM1_BRK_TIM9_IRQHandler
367 TIM1_UP_TIM10_IRQHandler
368 TIM1_TRG_COM_TIM11_IRQHandler
369 TIM1_CC_IRQHandler
370 TIM2_IRQHandler
371 TIM3_IRQHandler
372 TIM4_IRQHandler
373 I2C1_EV_IRQHandler
374 I2C1_ER_IRQHandler
375 I2C2_EV_IRQHandler
376 I2C2_ER_IRQHandler
377 SPI1_IRQHandler
378 SPI2_IRQHandler
379 USART1_IRQHandler
380 USART2_IRQHandler
381 USART3_IRQHandler
382 EXTI15_10_IRQHandler
383 RTC_Alarm_IRQHandler
384 OTG_FS_WKUP_IRQHandler
385 TIM8_BRK_TIM12_IRQHandler
386 TIM8_UP_TIM13_IRQHandler
387 TIM8_TRG_COM_TIM14_IRQHandler
388 TIM8_CC_IRQHandler
389 DMA1_Stream7_IRQHandler
390 FSMC_IRQHandler
391 SDIO_IRQHandler
392 TIM5_IRQHandler
393 SPI3_IRQHandler
394 UART4_IRQHandler
395 UART5_IRQHandler
396 TIM6_DAC_IRQHandler
397 TIM7_IRQHandler
398 DMA2_Stream0_IRQHandler
399 DMA2_Stream1_IRQHandler
400 DMA2_Stream2_IRQHandler
401 DMA2_Stream3_IRQHandler
402 DMA2_Stream4_IRQHandler
403 DFSDM1_FLT0_IRQHandler
404 DFSDM1_FLT1_IRQHandler
405 CAN2_TX_IRQHandler
406 CAN2_RX0_IRQHandler
407 CAN2_RX1_IRQHandler
408 CAN2_SCE_IRQHandler
409 OTG_FS_IRQHandler
410 DMA2_Stream5_IRQHandler
411 DMA2_Stream6_IRQHandler
412 DMA2_Stream7_IRQHandler
413 USART6_IRQHandler
414 I2C3_EV_IRQHandler
415 I2C3_ER_IRQHandler
416 CAN3_TX_IRQHandler
417 CAN3_RX0_IRQHandler
418 CAN3_RX1_IRQHandler
419 CAN3_SCE_IRQHandler
420 RNG_IRQHandler
421 FPU_IRQHandler
422 UART7_IRQHandler
423 UART8_IRQHandler
424 SPI4_IRQHandler
425 SPI5_IRQHandler
426 SAI1_IRQHandler
427 UART9_IRQHandler
428 UART10_IRQHandler
429 QUADSPI_IRQHandler
430 FMPI2C1_EV_IRQHandler
431 FMPI2C1_ER_IRQHandler
432 LPTIM1_IRQHandler
433 DFSDM2_FLT0_IRQHandler
434 DFSDM2_FLT1_IRQHandler
435 DFSDM2_FLT2_IRQHandler
436 DFSDM2_FLT3_IRQHandler
437
438                 B       .
439
440                 ENDP
441
442                 ALIGN
443
444 ;*******************************************************************************
445 ; User Stack and Heap initialization
446 ;*******************************************************************************
447                  IF      :DEF:__MICROLIB
448                 
449                  EXPORT  __initial_sp
450                  EXPORT  __heap_base
451                  EXPORT  __heap_limit
452                 
453                  ELSE
454                 
455                  IMPORT  __use_two_region_memory
456                  EXPORT  __user_initial_stackheap
457                  
458 __user_initial_stackheap
459
460                  LDR     R0, =  Heap_Mem
461                  LDR     R1, =(Stack_Mem + Stack_Size)
462                  LDR     R2, = (Heap_Mem +  Heap_Size)
463                  LDR     R3, = Stack_Mem
464                  BX      LR
465
466                  ALIGN
467
468                  ENDIF
469
470                  END