On Tue, Oct 27, 2015 at 9:03 AM, Jakub Jelinek <ja...@redhat.com> wrote: > On Mon, Oct 26, 2015 at 03:32:45PM -0700, Nathan Sidwell wrote: >> Richard, Jakub, >> this updates patch 1 to use the target-insns.def mechanism of detecting >> conditionally-implemented instructions. Otherwise it's the same as >> yesterday's patch. To recap: >> >> 1) Moved the subcodes to an enumeration in internal-fn.h >> >> 2) Remove ECF_LEAF >> >> 3) Added check in initialize_ctrl_altering >> >> 4) tracer code now (continues) to only look in last stmt of block >> >> I looked at fnsplit and do not believe I need changes there. That's >> changing things like: >> if (cheap test) >> do cheap thing >> else >> do complex thing >> >> to break out the else part into a separate function. That's fine -- it'll >> copy the whole CFG of interest. > > The question is if some UNIQUE call could be ever considered as part of the > cheap test or do cheap thing. If not, everything is fine of course for > fnsplit. > >> ok? > > Ok for me, but please wait for Richi's ack too.
+ /* An IFN_UNIQUE call must be duplicated as part of its group, + or not at all. */ + if (is_gimple_call (g) && gimple_call_internal_p (g) + && gimple_call_internal_unique_p (g)) &&s always to the next line Otherwise looks ok to me now. Thanks, Richard. > Jakub