[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