On 8/28/23 01:47, Fei Gao wrote:
no functional changes but allow targets to check shrink-wrap-separate enabled
or not.
gcc/ChangeLog:
* shrink-wrap.cc (try_shrink_wrapping_separate):call
use_shrink_wrapping_separate.
(use_shrink_wrapping_separate): wrap the condition
check in use_shrink_wrapping_separate.
* shrink-wrap.h (use_shrink_wrapping_separate): add to extern
So as I mentioned earlier today in the older thread, can we use
override_options to do this?
If we look at aarch64_override_options we have this:
/* The pass to insert speculation tracking runs before
shrink-wrapping and the latter does not know how to update the
tracking status. So disable it in this case. */
if (aarch64_track_speculation)
flag_shrink_wrap = 0;
We kind of want this instead
if (flag_shrink_wrap)
{
turn off whatever target bits enable the cm.push/cm.pop insns
}
This does imply that we have a distinct target flag to enable/disable
those instructions. But that seems like a good thing to have anyway.
jeff