source: rtems/cpukit/score/cpu/arm/rtems/score/arm.h @ 3ce764a

4.115
Last change on this file since 3ce764a was 3ce764a, checked in by Sebastian Huber <sebastian.huber@…>, on 09/16/11 at 09:47:09

2011-09-16 Sebastian Huber <sebastian.huber@…>

  • rtems/score/arm.h: More CPU_MODEL_NAME variants.
  • Property mode set to 100644
File size: 2.1 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup ScoreCPU
5 *
6 * @brief ARM assembler support API.
7 */
8
9/*
10 *  $Id$
11 *
12 *  COPYRIGHT (c) 2000 Canon Research Centre France SA.
13 *  Emmanuel Raguet, mailto:raguet@crf.canon.fr
14 *
15 *  Copyright (c) 2002 Advent Networks, Inc.
16 *       Jay Monkman <jmonkman@adventnetworks.com>
17 *
18 *  The license and distribution terms for this file may be
19 *  found in the file LICENSE in this distribution or at
20 *  http://www.rtems.com/license/LICENSE.
21 *
22 */
23
24#ifndef _RTEMS_SCORE_ARM_H
25#define _RTEMS_SCORE_ARM_H
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31/**
32 * @addtogroup ScoreCPU
33 *
34 * @{
35 */
36
37/*
38 *  This file contains the information required to build
39 *  RTEMS for a particular member of the "arm"
40 *  family when executing in protected mode.  It does
41 *  this by setting variables to indicate which implementation
42 *  dependent features are present in a particular member
43 *  of the family.
44 */
45#if defined(__ARM_ARCH_4__)
46#  define CPU_MODEL_NAME  "ARMv4"
47
48#elif defined(__ARM_ARCH_4T__)
49#  define CPU_MODEL_NAME  "ARMv4T"
50
51#elif defined(__ARM_ARCH_5__)
52#  define CPU_MODEL_NAME  "ARMv5"
53
54#elif defined(__ARM_ARCH_5T__)
55#  define CPU_MODEL_NAME  "ARMv5T"
56
57#elif defined(__ARM_ARCH_5E__)
58#  define CPU_MODEL_NAME  "ARMv5E"
59
60#elif defined(__ARM_ARCH_5TE__)
61#  define CPU_MODEL_NAME  "ARMv5TE"
62
63#elif defined(__ARM_ARCH_5TEJ__)
64#  define CPU_MODEL_NAME  "ARMv5TEJ"
65
66#elif defined(__ARM_ARCH_6J__)
67#  define CPU_MODEL_NAME  "ARMv6J"
68
69#elif defined(__ARM_ARCH_6M__)
70#  define CPU_MODEL_NAME  "ARMv6M"
71
72#elif defined(__ARM_ARCH_7__)
73#  define CPU_MODEL_NAME  "ARMv7"
74
75#elif defined(__ARM_ARCH_7M__)
76#  define CPU_MODEL_NAME  "ARMv7M"
77
78#elif defined(__ARM_ARCH_7A__)
79#  define CPU_MODEL_NAME  "ARMv7A"
80
81#else
82#  error "Unsupported CPU Model"
83
84#endif
85
86/* All ARM CPUs are assumed to not have floating point units */
87#if defined(__SOFTFP__)
88#define ARM_HAS_FPU     0
89#else
90#define ARM_HAS_FPU     1
91#warning "FPU-support not yet implemented for the arm"
92#endif
93
94
95/*
96 *  Define the name of the CPU family.
97 */
98
99#define CPU_NAME "ARM"
100
101/** @} */
102
103#ifdef __cplusplus
104}
105#endif
106
107#endif /* _RTEMS_SCORE_ARM_H */
Note: See TracBrowser for help on using the repository browser.