On 27/11/14 11:27, Renlin Li wrote:
Hi all,

We have the following code in aarch64_override_options() function.

/* The selected cpu may be an architecture, so lookup tuning by core ID. */
  if (!selected_tune)
    selected_tune = &all_cores[selected_cpu->core];

However, the logic here is not right any more according to our current code. selected_cpu will never be an architecture at this point.

This patch will correct the behaviour and use selected_cpu's tuning directly if selected_tune is still not decided at this point.


We have the following consequence after the change.
Previously we have the following tuning settings with the following command line options: -march=armv8-a --> selected_cpu = generic, aarch64_tune_params = cortexa53_tunings Nothing specified and selected_cpu == generic --> aarch64_tune_params = cortexa53_tunings

After the change, we got something different:
-march=armv8-a --> selected_cpu = generic, aarch64_tune_params = generic_tunings Nothing specified and selected_cpu == generic --> aarch64_tune_params = generic_tunings

All other configuration(-march, -mcpu, -mtune) combinations should be unaffected.


aarch64-none-elf has been built and tested on the model, no issue.

Is it Okay for trunk?


gcc/ChangeLog:

2014-11-27  Renlin Li  <renlin...@arm.com>

* config/aarch64/aarch64.c (aarch64_parse_cpu): Don't define selected_tune.
    (aarch64_override_options): Use selected_cpu's tuning.



PING~

Regards,
Renlin

Reply via email to