Honza,

On 10 March 2015 at 20:09, Yvan Roux <yvan.r...@linaro.org> wrote:
> On 10 March 2015 at 19:18, Jan Hubicka <hubi...@ucw.cz> wrote:
>>> Hi
>>>
>>> On 9 March 2015 at 17:07, Yvan Roux <yvan.r...@linaro.org> wrote:
>>> > Hi,
>>> >
>>> > As added in the PR, this issue is also present on 4.9 branch and
>>> > affects at least arm-linux-gnueabihf target (as reported in PR61207).
>>> >
>>> > I've backported it in the 4.9 branch with the attached patch.  The
>>> > difference with the trunk code is due the code introduced by PR63587
>>> > fix (I didn't checked on power7, on which the PR was initially
>>> > reported, but I didn't managed to reproduce the issue for arm targets
>>> > on 4.9 branch).
>>> >
>>> > Boostrapped on x86_64, and tested on arm/aarch64 targets (regression
>>> > testing is ongoing). is ok for 4.9 branch when  validation is done ?
>>>
>>> So bootstrapped/regtested on x86_64 and cross-compiled/regtested on
>>> aarch64-linux-gnu
>>> arm-linux-gnueabihf
>>> armeb-linux-gnueabihf
>>> i686-linux-gnu
>>
>> This is OK. note that cgraph_node::expand_thunk has gathered quite few
>> extra fixes that may be resonable for backporting.  Looking across
>> changes after ipa-icf was enabled I think we should look into
>> these:
>>
>>         PR ipa/65236
>>         * cgraphunit.c (cgraph_node::expand_thunk): Enable return slot
>>         opt.

This bugfix adds ipa-icf-6.C test which failed on 4.9 branch as
ipa-icf is not backported on that branch.  Is the bugfix still
relevant and we can dropped the testcase ?

>>         PR ipa/64813
>>         * cgraphunit.c (cgraph_node::expand_thunk): Do not create
>>         a return value for call to a function that is noreturn.
>>
>>         PR ipa/63595
>>         * cgraphunit.c (cgraph_node::expand_thunk): DECL_BY_REFERENCE
>>         is correctly handled for thunks created by IPA ICF.
>>
>>         PR ipa/63587
>>         * cgraphunit.c (cgraph_node::expand_thunk): Only VAR_DECLs are put
>>         to local declarations.
>>         * function.c (add_local_decl): Implementation moved from header
>>         file, assert introduced for tree type.
>>         * function.h: Likewise.
>>
>> While these bugs was triggered by ipa-icf, they all IMO can be reproduced by
>> thunks on targets that do not define assembler thunks.
>> (most are about return values and those are not excercised on main targets 
>> with
>> MI thunks because covariant thunks always returns pointer)
>
> Thanks Honza.  I can backport all of them and pass the same validation
> I did for this one if you want.

The test introduced


> Yvan

Reply via email to