1@/**************************************************************************/
2@/*                                                                        */
3@/*       Copyright (c) Microsoft Corporation. All rights reserved.        */
4@/*                                                                        */
5@/*       This software is licensed under the Microsoft Software License   */
6@/*       Terms for Microsoft Azure RTOS. Full text of the license can be  */
7@/*       found in the LICENSE file at https://aka.ms/AzureRTOS_EULA       */
8@/*       and in the root directory of this software.                      */
9@/*                                                                        */
10@/**************************************************************************/
11@
12@
13@/**************************************************************************/
14@/**************************************************************************/
15@/**                                                                       */
16@/** ThreadX Component                                                     */
17@/**                                                                       */
18@/**   Initialize                                                          */
19@/**                                                                       */
20@/**************************************************************************/
21@/**************************************************************************/
22@
23@
24@#define TX_SOURCE_CODE
25@
26@
27@/* Include necessary system files.  */
28@
29@#include "tx_api.h"
30@#include "tx_initialize.h"
31@#include "tx_thread.h"
32@#include "tx_timer.h"
33
34    .arm
35
36    .global      _start
37    .global      __tx_undefined
38    .global      __tx_swi_interrupt
39    .global      __tx_prefetch_handler
40    .global      __tx_abort_handler
41    .global      __tx_reserved_handler
42    .global      __tx_irq_handler
43    .global      __tx_fiq_handler
44@
45@
46@/* Define the vector area.  This should be located or copied to 0.  */
47@
48    .text
49    .global __vectors
50__vectors:
51
52    LDR     pc, STARTUP                     @ Reset goes to startup function
53    LDR     pc, UNDEFINED                   @ Undefined handler
54    LDR     pc, SWI                         @ Software interrupt handler
55    LDR     pc, PREFETCH                    @ Prefetch exception handler
56    LDR     pc, ABORT                       @ Abort exception handler
57    LDR     pc, RESERVED                    @ Reserved exception handler
58    LDR     pc, IRQ                         @ IRQ interrupt handler
59    LDR     pc, FIQ                         @ FIQ interrupt handler
60
61STARTUP:
62    .word  _start                           @ Reset goes to C startup function
63UNDEFINED:
64    .word  __tx_undefined                   @ Undefined handler
65SWI:
66    .word  __tx_swi_interrupt               @ Software interrupt handler
67PREFETCH:
68    .word  __tx_prefetch_handler            @ Prefetch exception handler
69ABORT:
70    .word  __tx_abort_handler               @ Abort exception handler
71RESERVED:
72    .word  __tx_reserved_handler            @ Reserved exception handler
73IRQ:
74    .word  __tx_irq_handler                 @ IRQ interrupt handler
75FIQ:
76    .word  __tx_fiq_handler                 @ FIQ interrupt handler
77