Gentle ping this:

https://gcc.gnu.org/pipermail/gcc-patches/2022-January/587635.html

BR,
Kewen

>> on 2022/1/5 下午3:34, Kewen.Lin via Gcc-patches wrote:
>>> Hi,
>>>
>>> This patch is to fix the inconsistent behaviors for non-LTO mode
>>> and LTO mode.  As Martin pointed out, currently the function
>>> rs6000_can_inline_p simply makes it inlinable if callee_tree is
>>> NULL, but it's unexpected, we should use the command line options
>>> from target_option_default_node as default.
>>>
>>> It replaces rs6000_isa_flags with target_option_default_node when
>>> caller_tree is NULL since it's more straightforward and doesn't
>>> suffer from some bug not to keep rs6000_isa_flags as default.
>>>
>>> It also extends the scope of the check for the case that callee
>>> has explicit set options, inlining in test case pr102059-5.c can
>>> happen unexpectedly before, it's fixed accordingly.
>>>
>>> As Richi/Mike pointed out, some tuning flags like MASK_P8_FUSION
>>> can be neglected for always inlining, this patch also takes some
>>> flags when the callee is attributed by always_inline.
>>>
>>> v1: https://gcc.gnu.org/pipermail/gcc-patches/2021-September/578552.html
>>> v2: https://gcc.gnu.org/pipermail/gcc-patches/2021-December/586112.html
>>>
>>> This patch is one re-post of this updated version[1] and also
>>> rebased and adjusted on top of the related commit r12-6219.
>>>
>>> Bootstrapped and regtested on powerpc64-linux-gnu P8 and
>>> powerpc64le-linux-gnu P9 and P10.
>>>
>>> Is it ok for trunk?
>>>
>>> [1] https://gcc.gnu.org/pipermail/gcc-patches/2021-December/586296.html
>>>
>>> BR,
>>> Kewen
>>> -----
>>> gcc/ChangeLog:
>>>
>>>     PR target/102059
>>>     * config/rs6000/rs6000.c (rs6000_can_inline_p): Adjust with
>>>     target_option_default_node and consider always_inline_safe flags.
>>>
>>> gcc/testsuite/ChangeLog:
>>>
>>>     PR target/102059
>>>     * gcc.target/powerpc/pr102059-4.c: New test.
>>>     * gcc.target/powerpc/pr102059-5.c: New test.
>>>     * gcc.target/powerpc/pr102059-6.c: New test.
>>>     * gcc.target/powerpc/pr102059-7.c: New test.
>>>     * gcc.target/powerpc/pr102059-8.c: New test.
>>>     * gcc.dg/lto/pr102059-1_0.c: Remove unneeded option.
>>>
>>>

Reply via email to