00001
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _RTEMS_ASM_H
00029 #define _RTEMS_ASM_H
00030
00031
00032
00033
00034
00035 #ifndef ASM
00036 #define ASM
00037 #endif
00038 #include <rtems/score/cpuopts.h>
00039 #include <rtems/score/no_cpu.h>
00040
00041 #ifndef __USER_LABEL_PREFIX__
00042
00050 #define __USER_LABEL_PREFIX__ _
00051 #endif
00052
00053 #ifndef __REGISTER_PREFIX__
00054
00062 #define __REGISTER_PREFIX__
00063 #endif
00064
00065 #include <rtems/concat.h>
00066
00068 #define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x)
00069
00071 #define REG(x) CONCAT1 (__REGISTER_PREFIX__, x)
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00085 #define BEGIN_CODE_DCL .text
00086
00087 #define END_CODE_DCL
00088
00089 #define BEGIN_DATA_DCL .data
00090
00091 #define END_DATA_DCL
00092
00093 #define BEGIN_CODE .text
00094
00095 #define END_CODE
00096
00097 #define BEGIN_DATA
00098
00099 #define END_DATA
00100
00103 #define BEGIN_BSS
00104
00105 #define END_BSS
00106
00107 #define END
00108
00115 #define PUBLIC(sym) .globl SYM (sym)
00116
00123 #define EXTERN(sym) .globl SYM (sym)
00124
00125 #endif