diff options
Diffstat (limited to 'gcc/config/nios2/nios2.c')
-rw-r--r-- | gcc/config/nios2/nios2.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/config/nios2/nios2.c b/gcc/config/nios2/nios2.c index a0fb435f5a1..7c97a02b521 100644 --- a/gcc/config/nios2/nios2.c +++ b/gcc/config/nios2/nios2.c @@ -1078,6 +1078,19 @@ nios2_option_override (void) if (!TARGET_HAS_MUL && TARGET_HAS_MULX) target_flags &= ~MASK_HAS_MULX; + /* Optional BMX and CDX instructions only make sense for R2. */ + if (!TARGET_ARCH_R2) + { + if (TARGET_HAS_BMX) + error ("BMX instructions are only supported with R2 architecture"); + if (TARGET_HAS_CDX) + error ("CDX instructions are only supported with R2 architecture"); + } + + /* R2 is little-endian only. */ + if (TARGET_ARCH_R2 && TARGET_BIG_ENDIAN) + error ("R2 architecture is little-endian only"); + /* Initialize default FPU configurations. */ nios2_init_fpu_configs (); |