Hi Jakub,

On Wed, Aug 12, 2020 at 10:20:12AM +0200, Jakub Jelinek wrote:
> This patch moves the unrolling related handling from process_options into
> finish_options which is invoked whenever the options are being finalized,
> and the rs6000 specific parts into the override_options_after_change hook
> which is called for optimize attribute handling (and unfortunately also
> th cfun changes, but what the hook does is cheap) and I've added a call to
> that from rs6000_override_options_internal, so it is also called on cmdline
> processing and for target attribute.

The rs6000 parts look fine, thank you for working on this!

One tiny thing:

> +/* This target function is similar to the hook TARGET_OPTION_OVERRIDE
> +   but is called when the optimize level is changed via an attribute or
> +   pragma or when it is reset at the end of the code affected by the
> +   attribute or pragma.  It is not called at the beginning of compilation
> +   when TARGET_OPTION_OVERRIDE is called so if you want to perform these
> +   actions then, you should have TARGET_OPTION_OVERRIDE call
> +   TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE.  */

That is generic documentation.  The second half isn't relevant (you did
that already :-) )


Segher

Reply via email to