RTEMS  5.1
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
asm.h
Go to the documentation of this file.
1 
17 /*
18  * COPYRIGHT:
19  *
20  * This file is based on similar code found in newlib available
21  * from ftp.cygnus.com. The file which was used had no copyright
22  * notice. This file is freely distributable as long as the source
23  * of the file is noted. This file is:
24  *
25  * COPYRIGHT (c) 1994-2006.
26  * On-Line Applications Research Corporation (OAR).
27  */
28 
29 #ifndef _RTEMS_ASM_H
30 #define _RTEMS_ASM_H
31 
32 /*
33  * Indicate we are in an assembly file and get the basic CPU definitions.
34  */
35 
36 #ifndef ASM
37 #define ASM
38 #endif
39 #include <rtems/score/cpuopts.h>
40 #include <rtems/score/lm32.h>
41 
51 #ifndef __USER_LABEL_PREFIX__
52 
60 #define __USER_LABEL_PREFIX__ _
61 #endif
62 
63 #ifndef __REGISTER_PREFIX__
64 
72 #define __REGISTER_PREFIX__
73 #endif
74 
75 #include <rtems/concat.h>
76 
78 #define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x)
79 
81 #define REG(x) CONCAT1 (__REGISTER_PREFIX__, x)
82 
83 /*
84  * define macros for all of the registers on this CPU
85  *
86  * EXAMPLE: #define d0 REG (d0)
87  */
88 
89 /*
90  * Define macros to handle section beginning and ends.
91  */
92 
93 
95 #define BEGIN_CODE_DCL .text
96 
97 #define END_CODE_DCL
98 
99 #define BEGIN_DATA_DCL .data
100 
101 #define END_DATA_DCL
102 
103 #define BEGIN_CODE .text
104 
105 #define END_CODE
106 
107 #define BEGIN_DATA
108 
109 #define END_DATA
110 
114 #define BEGIN_BSS
115 
116 #define END_BSS
117 
118 #define END
119 
126 #define PUBLIC(sym) .globl SYM (sym)
127 
134 #define EXTERN(sym) .globl SYM (sym)
135 
138 #endif
LM32 Set up Basic CPU Dependency Settings Based on Compiler Settings.