Changeset 25804b60 in rtems


Ignore:
Timestamp:
Mar 20, 1998, 5:38:53 PM (22 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, master
Children:
db4aaf8
Parents:
22393efc
Message:

Patch from Eric Norum <eric@…>:

Here is my attempt at bringing m68k.h into line with the predefined
symbols provided by egcs-1.0.2-prerelease (with R. Kirkham's patch so
that -mcpu32, etc. implies -msoft-float).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/exec/score/cpu/m68k/m68k.h

    r22393efc r25804b60  
    3030 *
    3131 *  Currently recognized:
    32  *     m68000        (no FP)
    33  *     m68020        (implies FP)
    34  *     m68020_nofp   (no FP)
    35  *     m68030        (implies FP)
    36  *     m68040        (implies FP)
    37  *     m68lc040      (no FP)
    38  *     m68ec040      (no FP)
    39  *     m68302        (no FP)
    40  *     m68332        (no FP)
    41  *     mcpu32        (no FP)  (includes m68360)
    42  *
    43  *  Primary difference (for RTEMS) between m68040, m680lc040, and
    44  *  m68ec040 is the presence or absence of the FPU.
     32 *     -m68000
     33 *     -m68000 -msoft-float
     34 *     -m68020
     35 *     -m68020 -msoft-float
     36 *     -m68030
     37 *     -m68040 -msoft-float
     38 *     -m68040
     39 *     -m68040 -msoft-float
     40 *     -m68302        (no FP)
     41 *     -m68332        (no FP)
     42 *     -mcpu32        (no FP)
    4543 *
    4644 *  Here is some information on the 040 variants (courtesy of Doug McBride,
     
    6260 *  up and the cpu32 based models. 
    6361 *
     62 *  M68K_HAS_MISALIGNED is non-zero if the CPU allows byte-misaligned
     63 *  data access (68020, 68030, 68040, 68060, CPU32+).
     64 *
    6465 *  NOTE:
    6566 *    Eventually it would be nice to evaluate doing a lot of this section
     
    6768 */
    6869
    69 #if defined(m68000)
    70  
    71 #define CPU_MODEL_NAME         "m68000"
     70#if defined(__mc68020__)
     71 
     72#define CPU_MODEL_NAME          "m68020"
     73#define M68K_HAS_VBR             1
     74#define M68K_HAS_SEPARATE_STACKS 1
     75#define M68K_HAS_BFFFO           1
     76#define M68K_HAS_PREINDEXING     1
     77#define M68K_HAS_EXTB_L          1
     78#define M68K_HAS_MISALIGNED      1
     79# if defined (__HAVE_68881__)
     80# define M68K_HAS_FPU            1
     81# define M68K_HAS_FPSP_PACKAGE   0
     82# else
     83# define M68K_HAS_FPU            0
     84# define M68K_HAS_FPSP_PACKAGE   0
     85# endif
     86 
     87#elif defined(__mc68030__)
     88 
     89#define CPU_MODEL_NAME          "m68030"
     90#define M68K_HAS_VBR             1
     91#define M68K_HAS_SEPARATE_STACKS 1
     92#define M68K_HAS_BFFFO           1
     93#define M68K_HAS_PREINDEXING     1
     94#define M68K_HAS_EXTB_L          1
     95#define M68K_HAS_MISALIGNED      1
     96# if defined (__HAVE_68881__)
     97# define M68K_HAS_FPU            1
     98# define M68K_HAS_FPSP_PACKAGE   0
     99# else
     100# define M68K_HAS_FPU            0
     101# define M68K_HAS_FPSP_PACKAGE   0
     102# endif
     103 
     104#elif defined(__mc68040__)
     105
     106#define CPU_MODEL_NAME          "m68040"
     107#define M68K_HAS_VBR             1
     108#define M68K_HAS_SEPARATE_STACKS 1
     109#define M68K_HAS_BFFFO           1
     110#define M68K_HAS_PREINDEXING     1
     111#define M68K_HAS_EXTB_L          1
     112#define M68K_HAS_MISALIGNED      1
     113# if defined (__HAVE_68881__)
     114# define M68K_HAS_FPU            1
     115# define M68K_HAS_FPSP_PACKAGE   1
     116# else
     117# define M68K_HAS_FPU            0
     118# define M68K_HAS_FPSP_PACKAGE   0
     119# endif
     120 
     121#elif defined(__mc68302__)
     122#define CPU_MODEL_NAME          "m68302"
    72123#define M68K_HAS_VBR             0
    73124#define M68K_HAS_SEPARATE_STACKS 0
    74 #define M68K_HAS_FPU             0
    75125#define M68K_HAS_BFFFO           0
    76126#define M68K_HAS_PREINDEXING     0
    77127#define M68K_HAS_EXTB_L          0
     128#define M68K_HAS_MISALIGNED      0
     129#define M68K_HAS_FPU             0
    78130#define M68K_HAS_FPSP_PACKAGE    0
    79131
    80 #elif defined(m68020)
    81  
    82 #define CPU_MODEL_NAME         "m68020"
    83 #define M68K_HAS_VBR             1
    84 #define M68K_HAS_SEPARATE_STACKS 1
    85 #define M68K_HAS_FPU             1
    86 #define M68K_HAS_BFFFO           1
    87 #define M68K_HAS_PREINDEXING     1
    88 #define M68K_HAS_EXTB_L          1
     132#elif defined(__mc68332__)
     133 
     134#define CPU_MODEL_NAME          "mcpu32"
     135#define M68K_HAS_VBR             1
     136#define M68K_HAS_SEPARATE_STACKS 0
     137#define M68K_HAS_BFFFO           0
     138#define M68K_HAS_PREINDEXING     1
     139#define M68K_HAS_EXTB_L          1
     140#define M68K_HAS_MISALIGNED      0
     141#define M68K_HAS_FPU             0
    89142#define M68K_HAS_FPSP_PACKAGE    0
    90  
    91 #elif defined(m68020_nofp)
    92  
    93 #define CPU_MODEL_NAME         "m68020 w/o fp"
    94 #define M68K_HAS_VBR             1
    95 #define M68K_HAS_SEPARATE_STACKS 1
     143
     144#elif defined(__mcpu32__)
     145 
     146#define CPU_MODEL_NAME          "mcpu32+"
     147#define M68K_HAS_VBR             1
     148#define M68K_HAS_SEPARATE_STACKS 0
     149#define M68K_HAS_BFFFO           0
     150#define M68K_HAS_PREINDEXING     1
     151#define M68K_HAS_EXTB_L          1
     152#define M68K_HAS_MISALIGNED      1
    96153#define M68K_HAS_FPU             0
    97 #define M68K_HAS_BFFFO           1
    98 #define M68K_HAS_PREINDEXING     1
    99 #define M68K_HAS_EXTB_L          1
    100154#define M68K_HAS_FPSP_PACKAGE    0
    101  
    102 #elif defined(m68030)
    103  
    104 #define CPU_MODEL_NAME         "m68030"
    105 #define M68K_HAS_VBR             1
    106 #define M68K_HAS_SEPARATE_STACKS 1
    107 #define M68K_HAS_FPU             1
    108 #define M68K_HAS_BFFFO           1
    109 #define M68K_HAS_PREINDEXING     1
    110 #define M68K_HAS_EXTB_L          1
    111 #define M68K_HAS_FPSP_PACKAGE    0
    112  
    113 #elif defined(m68040)
    114 
    115 #define CPU_MODEL_NAME         "m68040"
    116 #define M68K_HAS_VBR             1
    117 #define M68K_HAS_SEPARATE_STACKS 1
    118 #define M68K_HAS_FPU             1
    119 #define M68K_HAS_BFFFO           1
    120 #define M68K_HAS_PREINDEXING     1
    121 #define M68K_HAS_EXTB_L          1
    122 #define M68K_HAS_FPSP_PACKAGE    1
    123  
    124 #elif defined(m68lc040)
    125 
    126 #define CPU_MODEL_NAME         "m68lc040"
    127 #define M68K_HAS_VBR             1
    128 #define M68K_HAS_SEPARATE_STACKS 1
    129 #define M68K_HAS_FPU             0
    130 #define M68K_HAS_BFFFO           1
    131 #define M68K_HAS_PREINDEXING     1
    132 #define M68K_HAS_EXTB_L          1
    133 #define M68K_HAS_FPSP_PACKAGE    0
    134  
    135 #elif defined(m68ec040)
    136 
    137 #define CPU_MODEL_NAME         "m68ec040"
    138 #define M68K_HAS_VBR             1
    139 #define M68K_HAS_SEPARATE_STACKS 1
    140 #define M68K_HAS_FPU             0
    141 #define M68K_HAS_BFFFO           1
    142 #define M68K_HAS_PREINDEXING     1
    143 #define M68K_HAS_EXTB_L          1
    144 #define M68K_HAS_FPSP_PACKAGE    0
    145 
    146 #elif defined(m68302)
    147  /* essentially a m68000 with onboard peripherals */
    148 #define CPU_MODEL_NAME         "m68302"
     155
     156#elif defined(__mc68000__)
     157 
     158#define CPU_MODEL_NAME          "m68000"
    149159#define M68K_HAS_VBR             0
    150160#define M68K_HAS_SEPARATE_STACKS 0
    151 #define M68K_HAS_FPU             0
    152161#define M68K_HAS_BFFFO           0
    153162#define M68K_HAS_PREINDEXING     0
    154163#define M68K_HAS_EXTB_L          0
    155 #define M68K_HAS_FPSP_PACKAGE    0
    156 
    157 #elif defined(m68332)
    158  
    159 #define CPU_MODEL_NAME         "m68332"
    160 #define M68K_HAS_VBR             1
    161 #define M68K_HAS_SEPARATE_STACKS 0
    162 #define M68K_HAS_FPU             0
    163 #define M68K_HAS_BFFFO           0
    164 #define M68K_HAS_PREINDEXING     0
    165 #define M68K_HAS_EXTB_L          1
    166 #define M68K_HAS_FPSP_PACKAGE    0
    167 
    168 #elif defined(mcpu32)
    169  
    170 #define CPU_MODEL_NAME         "mcpu32"
    171 #define M68K_HAS_VBR             1
    172 #define M68K_HAS_SEPARATE_STACKS 0
    173 #define M68K_HAS_FPU             0
    174 #define M68K_HAS_BFFFO           0
    175 #define M68K_HAS_PREINDEXING     1
    176 #define M68K_HAS_EXTB_L          1
    177 #define M68K_HAS_FPSP_PACKAGE    0
     164#define M68K_HAS_MISALIGNED      0
     165# if defined (__HAVE_68881__)
     166# define M68K_HAS_FPU            1
     167# define M68K_HAS_FPSP_PACKAGE   0
     168# else
     169# define M68K_HAS_FPU            0
     170# define M68K_HAS_FPSP_PACKAGE   0
     171# endif
    178172
    179173#else
    180174
    181 #error "Unsupported CPU Model"
     175#error "Unsupported CPU model -- are you sure you're running a 68k compiler?"
    182176
    183177#endif
Note: See TracChangeset for help on using the changeset viewer.