[AArch64][3/14] Refactor option override code
commit50021c32434979015dfe9624befb7d31bf423d5e
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 4 Aug 2015 09:52:52 +0000 (4 09:52 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 4 Aug 2015 09:52:52 +0000 (4 09:52 +0000)
treea4b781bbb05b0a75112f6fd7881a81d05559c02d
parent9356ca163ecc08cc8cd1c63ec8aa5e9ebc86ae69
[AArch64][3/14] Refactor option override code

* config/aarch64/aarch64.opt (aarch64_arch_string): Delete.
(aarch64_cpu_string): Likewise.
(aarch64_tune_string): Likewise.
* config/aarch64/aarch64.c (aarch64_parse_opt_result): New enum.
(aarch64_parse_extension): Return aarch64_parse_opt_result.
Add extra argument to put result into.
(aarch64_parse_arch): Likewise.  Do not set selected_cpu.
(aarch64_parse_cpu): Add arguments to put results into. Return
aarch64_parse_opt_result.
(aarch64_parse_tune): Likewise.
(aarch64_override_options_after_change_1): New function.
(aarch64_override_options_internal): New function.
(aarch64_validate_mcpu): Likewise.
(aarch64_validate_march): Likewise.
(aarch64_validate_mtune): Likewise.
(aarch64_override_options): Update to reflect above changes.
Move some logic into aarch64_override_options_internal.
Initialize target_option_default_node and target_option_current_node.
(aarch64_override_options_after_change): Move logic into
aarch64_override_options_after_change_1 and call it with global_options.
(initialize_aarch64_code_model): Take a gcc_options pointer and use the
flag values from that.

* gcc.target/aarch64/cpu-diagnostics-3.c: Update expected error
message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226554 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.opt
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/cpu-diagnostics-3.c