gcc/
* config/nds32/nds32-opts.h (nds32_arch_type): Add ARCH_V3J.
* config/nds32/nds32.c (nds32_option_override): Consider ARCH_V3J.
* config/nds32/nds32.h (TARGET_ISA_V3): Add ARCH_V3J checking.
* config/nds32/nds32.opt (march): Add enum value Value(ARCH_V3J).
From-SVN: r261123
+2018-06-03 Chung-Ju Wu <jasonwucj@gmail.com>
+
+ * config/nds32/nds32-opts.h (nds32_arch_type): Add ARCH_V3J.
+ * config/nds32/nds32.c (nds32_option_override): Consider ARCH_V3J.
+ * config/nds32/nds32.h (TARGET_ISA_V3): Add ARCH_V3J checking.
+ * config/nds32/nds32.opt (march): Add enum value Value(ARCH_V3J).
+
2018-06-03 Chung-Ju Wu <jasonwucj@gmail.com>
* common/config/nds32/nds32-common.c (nds32_option_optimization_table):
{
ARCH_V2,
ARCH_V3,
+ ARCH_V3J,
ARCH_V3M,
ARCH_V3F,
ARCH_V3S
}
if (TARGET_ISA_V3)
{
- /* Under V3 ISA, currently nothing should be strictly set. */
+ /* If this is ARCH_V3J, we need to enable TARGET_REDUCED_REGS. */
+ if (nds32_arch_option == ARCH_V3J)
+ target_flags |= MASK_REDUCED_REGS;
}
if (TARGET_ISA_V3M)
{
#define TARGET_ISA_V3 \
(nds32_arch_option == ARCH_V3 \
+ || nds32_arch_option == ARCH_V3J \
|| nds32_arch_option == ARCH_V3F \
|| nds32_arch_option == ARCH_V3S)
#define TARGET_ISA_V3M (nds32_arch_option == ARCH_V3M)
EnumValue
Enum(nds32_arch_type) String(v3) Value(ARCH_V3)
+EnumValue
+Enum(nds32_arch_type) String(v3j) Value(ARCH_V3J)
+
EnumValue
Enum(nds32_arch_type) String(v3m) Value(ARCH_V3M)