This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: LTO bootstrap compare errors for ARM64
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: Venkataramanan Kumar <venkataramanan dot kumar at linaro dot org>
- Cc: Jan Hubicka <hubicka at ucw dot cz>, gcc at gcc dot gnu dot org, Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>, Richard Beiner <richard dot guenther at gmail dot com>
- Date: Wed, 13 Aug 2014 20:55:36 +0200
- Subject: Re: LTO bootstrap compare errors for ARM64
- Authentication-results: sourceware.org; auth=none
- References: <CAJK_mQ2sEES1-+Wi5YCZX1PT45VJQtgxar-wbDmW4OWjR3jjdg at mail dot gmail dot com> <20140807134451 dot GB30656 at atrey dot karlin dot mff dot cuni dot cz> <CAJK_mQ17Q=y6TBSmsiX0o7n4-fRhF2rMmgvkoXf3JyX-qCTZWA at mail dot gmail dot com>
> Hi Honza,
>
> I did not find any differences in tree level dumps. These are the dump
> differences in IPA
>
> In gimple-fold.c.000i.cgraph
>
> (--Snip--)
> < _Z25gimple_build_omp_continueP9tree_nodeS0_/761 (gimple_build_omp_continue(tree_node*, tree_node*)) @0x3ff7ebda548
> ---
> > _Z25gimple_build_omp_continueP9tree_nodeS0_/761 (gimple_build_omp_continue(tree_node*, tree_node*)) @0x3ff92b5a548
> 28865c28865
> < _Z26gimple_build_omp_taskgroupP21gimple_statement_base/760
> (gimple_build_omp_taskgroup(gimple_statement_base*)) @0x3ff7ebda400
> ---
> > _Z26gimple_build_omp_taskgroupP21gimple_statement_base/760 (gimple_build_omp_taskgroup(gimple_statement_base*)) @0x3ff92b5a400
> 28875c28875
> < _Z23gimple_build_omp_masterP21gimple_statement_base/759
> (gimple_build_omp_master(gimple_statement_base*)) @0x3ff7ebda2b8
> ---
> > _Z23gimple_build_omp_masterP21gimple_statement_base/759 (gimple_build_omp_master(gimple_statement_base*)) @0x3ff92b5a2b8
> 28885c28885
> < _Z24gimple_build_omp_sectionP21gimple_statement_base/758
> (gimple_build_omp_section(gimple_statement_base*)) @0x3ff7ebda170
> ---
> > _Z24gimple_build_omp_sectionP21gimple_statement_base/758 (gimple_build_omp_section(gimple_statement_base*)) @0x3ff92b5a170
> (--Snip--)
Those are only differences in addesses that is possible in between stages...
>
>
> In gimple.c.044i.profile_estimate
>
> (--Snip--)
>
> 1987c1987
> < vec<tree_node*, va_heap, vl_ptr>::qsort(int (*)(void const*, void const*)) (struct vec * const this, int (*<T10f9>) (const void *, const void *) cmp)
> ---
> > vec<tree_node*, va_heap, vl_ptr>::qsort(int (*)(void const*, void const*)) (struct vec * const this, int (*<T10fb>) (const void *, const void *) cmp)
> (--Snip--)
>
> gimple.c.048i.inline
>
> (--Snip--)
>
> < min size: 6
> ---
> > min size: 0
> 6590c6590
> < min size: 14
> ---
> > min size: 0
> 6607c6607
> < min size: 28
> (--Snip--)
This may actually be the problem. Differences in min_size may cause different optimization results.
Can I have both inline dumps with -fdump-ipa-inline-details?
I will double check the min size compiltatuion. it is kind of odd it is 0 in your case.
Honza