RTEMS: cpukit/score/cpu/v850/include/rtems/asm.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
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-2012.
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/no_cpu.h>
41
52#ifndef __USER_LABEL_PREFIX__
61#define __USER_LABEL_PREFIX__ _
62#endif
63
64#ifndef __REGISTER_PREFIX__
73#define __REGISTER_PREFIX__
74#endif
75
76#include <rtems/concat.h>
77
79#define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x)
80
82#define REG(x) CONCAT1 (__REGISTER_PREFIX__, x)
83
84/*
85 * define macros for all of the registers on this CPU
86 *
87 * EXAMPLE: #define d0 REG (d0)
88 */
89
90/*
91 * Define macros to handle section beginning and ends.
92 */
93
94
96#define BEGIN_CODE_DCL .text
98#define END_CODE_DCL
100#define BEGIN_DATA_DCL .data
102#define END_DATA_DCL
104#define BEGIN_CODE .text
106#define END_CODE
108#define BEGIN_DATA
110#define END_DATA
115#define BEGIN_BSS
117#define END_BSS
119#define END
120
127#define PUBLIC(sym) .globl SYM (sym)
128
135#define EXTERN(sym) .globl SYM (sym)
136
137#endif
138
concat.h