[PATCH 08/30] [arm] Split CPU, architecture and tuning data tables.

Richard Earnshaw (lists) Richard.Earnshaw@arm.com
Tue Jun 13 17:17:00 GMT 2017


On 09/06/17 13:53, Richard Earnshaw wrote:
> 
> The driver really needs to handle some canonicalization of the new
> -mcpu and -march options in order to make multilib selection
> tractable.  This will require moving much of the logic to parse the
> new options into the common code file.  However, the tuning data
> definitely does not want to be there as it is very specific to the
> compiler passes.  To facilitate this we need to split up the generated
> configuration data into architectural and tuning related tables.
> 
> This patch starts that process, but does not yet move any code out of
> the compiler backend.  Since I'm reworking all that code I took the
> opportunity to also separate out the CPU data tables from the
> architecture data tables.  Although they are related, there is a lot
> of redundancy in the CPU options that is best handled by simply
> indirecting to the architecture entry.
> 
> 	* config/arm/arm-protos.h (arm_build_target): Remove arch_core.
> 	(cpu_arch_extension): New structure.
> 	(cpu_arch_option, arch_option, cpu_option): New structures.
> 	* config/arm/parsecpu.awk (gen_headers): Build an enumeration of
> 	architecture types.
> 	(gen_data): Generate new format data tables.
> 	* config/arm/arm.c (cpu_tune): New structure.
> 	(cpu_option, processors): Delete.
> 	(arm_print_hint_for_core_or_arch): Delete.  Replace with ...
> 	(arm_print_hint_for_cpu_option): ... this and ...
> 	(arm_print_hint_for_arch_option): ... this.
> 	(arm_parse_arch_cpu_name): Delete.  Replace with ...
> 	(arm_parse_cpu_option_name): ... this and ...
> 	(arm_parse_arch_option_name): ... this.
> 	(arm_unrecognized_feature): Change type of target parameter to
> 	cpu_arch_option.
> 	(arm_parse_arch_cpu_features): Delete.  Replace with ...
> 	(arm_parse_option_features): ... this.
> 	(arm_configure_build_target): Rework to use new configuration data
> 	tables.
> 	(arm_print_tune_info): Rework for new configuration data tables.
> 	* config/arm/arm-cpu-data.h: Regenerated.
> 	* config/arm/arm-cpu.h: Regenerated.
> ---

Fix for using quirk bits when -mcpu and -march match up.

R.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: p3.patch
Type: text/x-patch
Size: 102417 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20170613/0ccb8e05/attachment.bin>


More information about the Gcc-patches mailing list