diff options
author | Andrew Pinski <apinski@cavium.com> | 2015-08-24 09:56:48 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2015-08-24 02:56:48 -0700 |
commit | a339a01c961e4a059214830d83acab6033dfe757 (patch) | |
tree | 38ce6c7802f27e5a9b4a83833e9cee59ab3b4bf6 /gcc | |
parent | 4fe3a2a110f1e9086313c54a152a033ec0adcee4 (diff) | |
download | gcc-a339a01c961e4a059214830d83acab6033dfe757.zip gcc-a339a01c961e4a059214830d83acab6033dfe757.tar.gz gcc-a339a01c961e4a059214830d83acab6033dfe757.tar.bz2 |
Remove the hack for AARCH64_EXTRA_TUNE_ALL.
2015-08-24 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64-tuning-flags.def: Remove all index to
AARCH64_EXTRA_TUNING_OPTION.
* config/aarch64/aarch64-protos.h (aarch64_extra_tuning_flags_index): New enum.
(aarch64_extra_tuning_flags): Base the shifted value on the index instead
of the argument to AARCH64_EXTRA_TUNING_OPTION.
* config/aarch64/aarch64.c: Remove the last argument to
AARCH64_EXTRA_TUNING_OPTION.
From-SVN: r227117
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-protos.h | 24 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-tuning-flags.def | 8 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.c | 2 |
4 files changed, 28 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d52be70..b1a7f9c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2015-08-24 Andrew Pinski <apinski@cavium.com> + + * config/aarch64/aarch64-tuning-flags.def: Remove all index to + AARCH64_EXTRA_TUNING_OPTION. + * config/aarch64/aarch64-protos.h (aarch64_extra_tuning_flags_index): New enum. + (aarch64_extra_tuning_flags): Base the shifted value on the index instead + of the argument to AARCH64_EXTRA_TUNING_OPTION. + * config/aarch64/aarch64.c: Remove the last argument to + AARCH64_EXTRA_TUNING_OPTION. + 2015-08-23 Nathan Sidwell <nathan@acm.org> * config/nvptx/nvptx.c (walk_args_for_param): Promote arg reg diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h index be3cbe1..4b3cbed 100644 --- a/gcc/config/aarch64/aarch64-protos.h +++ b/gcc/config/aarch64/aarch64-protos.h @@ -222,21 +222,25 @@ enum aarch64_fusion_pairs }; #undef AARCH64_FUSION_PAIR -#define AARCH64_EXTRA_TUNING_OPTION(x, name, index) \ - AARCH64_EXTRA_TUNE_##name = (1 << index), +#define AARCH64_EXTRA_TUNING_OPTION(x, name) \ + AARCH64_EXTRA_TUNE_##name##_index, +/* Supported tuning flags indexes. */ +enum aarch64_extra_tuning_flags_index +{ +#include "aarch64-tuning-flags.def" + AARCH64_EXTRA_TUNE_index_END +}; +#undef AARCH64_EXTRA_TUNING_OPTION + + +#define AARCH64_EXTRA_TUNING_OPTION(x, name) \ + AARCH64_EXTRA_TUNE_##name = (1u << AARCH64_EXTRA_TUNE_##name##_index), /* Supported tuning flags. */ enum aarch64_extra_tuning_flags { AARCH64_EXTRA_TUNE_NONE = 0, #include "aarch64-tuning-flags.def" - -/* Hacky macro to build the "all" flag mask. - Expands to 0 | AARCH64_TUNE_index0 | AARCH64_TUNE_index1 , etc. */ -#undef AARCH64_EXTRA_TUNING_OPTION -#define AARCH64_EXTRA_TUNING_OPTION(x, name, y) \ - | AARCH64_EXTRA_TUNE_##name - AARCH64_EXTRA_TUNE_ALL = 0 -#include "aarch64-tuning-flags.def" + AARCH64_EXTRA_TUNE_ALL = (1u << AARCH64_EXTRA_TUNE_index_END) - 1 }; #undef AARCH64_EXTRA_TUNING_OPTION diff --git a/gcc/config/aarch64/aarch64-tuning-flags.def b/gcc/config/aarch64/aarch64-tuning-flags.def index 01aaca8..628386b 100644 --- a/gcc/config/aarch64/aarch64-tuning-flags.def +++ b/gcc/config/aarch64/aarch64-tuning-flags.def @@ -20,15 +20,13 @@ /* Additional control over certain tuning parameters. Before including this file, define a macro: - AARCH64_EXTRA_TUNING_OPTION (name, internal_name, index_bit) + AARCH64_EXTRA_TUNING_OPTION (name, internal_name) Where: NAME is a string giving a friendly name for the tuning flag. INTERNAL_NAME gives the internal name suitable for appending to - AARCH64_TUNE_ to give an enum name. - INDEX_BIT is the bit to set in the bitmask of supported tuning - flags. */ + AARCH64_TUNE_ to give an enum name. */ -AARCH64_EXTRA_TUNING_OPTION ("rename_fma_regs", RENAME_FMA_REGS, 0) +AARCH64_EXTRA_TUNING_OPTION ("rename_fma_regs", RENAME_FMA_REGS) diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index c666dce..87bbf6e 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -182,7 +182,7 @@ static const struct aarch64_flag_desc aarch64_fusible_pairs[] = }; #undef AARCH64_FUION_PAIR -#define AARCH64_EXTRA_TUNING_OPTION(name, internal_name, y) \ +#define AARCH64_EXTRA_TUNING_OPTION(name, internal_name) \ { name, AARCH64_EXTRA_TUNE_##internal_name }, static const struct aarch64_flag_desc aarch64_tuning_flags[] = { |