[patch][arm] (respin) auto-generate arm-isa.h from CPU descriptions

Ramana Radhakrishnan ramana.radhakrishnan@arm.com
Fri Sep 22 15:57:00 GMT 2017


On 22/09/17 16:54, Vidya Praveen wrote:
> Hello,
> 
> This patch by Richard Earnshaw was reverted earlier as it was breaking
> cross-native builds. Respinning now with a minor change that fixes the build
> issue - adding arm-isa.h to GTM_H. Also remove a redundant dependency (TM_H
> includes GTM_H).
> 
> Tested by building cross/cross-native arm-none-linux-gnueabihf and baremetal
> cross build (arm-none-eabi) on x86_64.
> 
> OK for trunk?

Ok, please apply.

Ramana

> 
> Regards
> VP.
> 
> gcc/ChangeLog:
> 
> [arm] auto-generate arm-isa.h from CPU descriptions
> 
> This patch autogenerates arm-isa.h from new entries in arm-cpus.in.
> This has the primary advantage that it makes the description file more
> self-contained, but it also solves the 'array dimensioning' problem
> that Tamar recently encountered.  It adds two new constructs to
> arm-cpus.in: features and fgroups.  Fgroups are simply a way of naming
> a group of feature bits so that they can be referenced together.  We
> follow the convention that feature bits are all lower case, while
> fgroups are (predominantly) upper case. This is helpful as in some
> contexts they share the same namespace. Most of the minor changes in
> this patch are related to adopting this new naming convention.
> 
> 2017-09-22  Richard Earnshaw  <richard.earnshaw@arm.com>
> 
> 	* config.gcc (arm*-*-*): Don't add arm-isa.h to tm_p_file.
> 	* config/arm/arm-isa.h: Delete.  Move definitions to ...
> 	* arm-cpus.in: ... here.  Use new feature and fgroup values.
> 	* config/arm/arm.c (arm_option_override): Use lower case for feature
> 	bit names.
> 	* config/arm/arm.h (TARGET_HARD_FLOAT): Likewise.
> 	(TARGET_VFP3, TARGET_VFP5, TARGET_FMA): Likewise.
> 	* config/arm/parsecpu.awk (END): Add new command 'isa'.
> 	(isa_pfx): Delete.
> 	(print_isa_bits_for): New function.
> 	(gen_isa): New function.
> 	(gen_comm_data): Use print_isa_bits_for.
> 	(define feature): New keyword.
> 	(define fgroup): New keyword.
> 	* config/arm/t-arm (TM_H): Remove.
> 	(GTM_H): Add arm-isa.h.
> 	(arm-isa.h): Add rule to generate file.
> 	* common/config/arm/arm-common.c: (arm_canon_arch_option): Use lower
> 	case for feature bit names.
> 
> 




More information about the Gcc-patches mailing list