From b19ea8d28b1c06c2973738c1cda076f895ac3ad0 Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Fri, 4 Nov 2016 16:24:59 +0000 Subject: [PATCH] Add support for ARM Cortex-M33 processor 2016-11-04 Thomas Preud'homme gas/ * config/tc-arm.c (cortex-m33): Declare new processor. * doc/c-arm.texi (-mcpu ARM command line option): Document new Cortex-M33 processor. * NEWS: Mention ARM Cortex-M33 support. --- gas/ChangeLog | 7 +++++++ gas/NEWS | 2 +- gas/config/tc-arm.c | 2 ++ gas/doc/c-arm.texi | 1 + include/opcode/arm.h | 4 ++++ 5 files changed, 15 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 4e98cda001f..e83132f553e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2016-11-04 Thomas Preud'homme + + * config/tc-arm.c (cortex-m33): Declare new processor. + * doc/c-arm.texi (-mcpu ARM command line option): Document new + Cortex-M33 processor. + * NEWS: Mention ARM Cortex-M33 support. + 2016-11-04 Thomas Preud'homme * config/tc-arm.c (cortex-m23): Declare new processor. diff --git a/gas/NEWS b/gas/NEWS index cb47be02755..48cfa9be72d 100644 --- a/gas/NEWS +++ b/gas/NEWS @@ -2,7 +2,7 @@ * Add support for the RISC-V architecture. -* Add support for the ARM Cortex-M23 processor. +* Add support for the ARM Cortex-M23 and Cortex-M33 processors. Changes in 2.27: diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 011701befdb..9a12bcc44d9 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -25459,6 +25459,8 @@ static const struct arm_cpu_option_table arm_cpus[] = ARM_CPU_OPT ("cortex-r8", ARM_ARCH_V7R_IDIV, FPU_ARCH_VFP_V3D16, "Cortex-R8"), + ARM_CPU_OPT ("cortex-m33", ARM_ARCH_V8M_MAIN_DSP, + FPU_NONE, "Cortex-M33"), ARM_CPU_OPT ("cortex-m23", ARM_ARCH_V8M_BASE, FPU_NONE, "Cortex-M23"), ARM_CPU_OPT ("cortex-m7", ARM_ARCH_V7EM, FPU_NONE, "Cortex-M7"), diff --git a/gas/doc/c-arm.texi b/gas/doc/c-arm.texi index f08f6eb4381..547950a81ba 100644 --- a/gas/doc/c-arm.texi +++ b/gas/doc/c-arm.texi @@ -131,6 +131,7 @@ recognized: @code{cortex-r5}, @code{cortex-r7}, @code{cortex-r8}, +@code{cortex-m33}, @code{cortex-m23}, @code{cortex-m7}, @code{cortex-m4}, diff --git a/include/opcode/arm.h b/include/opcode/arm.h index feace5cd654..3b0d061cb14 100644 --- a/include/opcode/arm.h +++ b/include/opcode/arm.h @@ -151,8 +151,10 @@ #define ARM_AEXT2_V8_2A (ARM_AEXT2_V8_1A | ARM_EXT2_V8_2A | ARM_EXT2_RAS) #define ARM_AEXT_V8M_BASE (ARM_AEXT_V6SM | ARM_EXT_DIV) #define ARM_AEXT_V8M_MAIN ARM_AEXT_V7M +#define ARM_AEXT_V8M_MAIN_DSP ARM_AEXT_V7EM #define ARM_AEXT2_V8M (ARM_EXT2_V8M | ARM_EXT2_ATOMICS | ARM_EXT2_V6T2_V8M) #define ARM_AEXT2_V8M_MAIN (ARM_AEXT2_V8M | ARM_EXT2_V8M_MAIN) +#define ARM_AEXT2_V8M_MAIN_DSP ARM_AEXT2_V8M_MAIN /* Processors with specific extensions in the co-processor space. */ #define ARM_ARCH_XSCALE ARM_FEATURE_LOW (ARM_AEXT_V5TE, ARM_CEXT_XSCALE) @@ -272,6 +274,8 @@ #define ARM_ARCH_V8M_BASE ARM_FEATURE_CORE (ARM_AEXT_V8M_BASE, ARM_AEXT2_V8M) #define ARM_ARCH_V8M_MAIN ARM_FEATURE_CORE (ARM_AEXT_V8M_MAIN, \ ARM_AEXT2_V8M_MAIN) +#define ARM_ARCH_V8M_MAIN_DSP ARM_FEATURE_CORE (ARM_AEXT_V8M_MAIN_DSP, \ + ARM_AEXT2_V8M_MAIN_DSP) /* Some useful combinations: */ #define ARM_ARCH_NONE ARM_FEATURE_LOW (0, 0) -- 2.30.2