This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Shouldn't convert_scalars_to_vector call free_dominance_info?


On Thu, Mar 10, 2016 at 5:49 AM, Jakub Jelinek <jakub@redhat.com> wrote:
> On Thu, Mar 10, 2016 at 05:43:27AM -0800, H.J. Lu wrote:
>> > free_dominance_info (CDI_DOMINATORS);
>>
>> Since convert_scalars_to_vector may add instructions, dominance
>> info is no longer up to date.
>
> Adding instructions doesn't change anything on the dominance info, just
> cfg manipulations that don't keep the dominators updated.
> You can try to verify the dominance info at the end of the stv pass,

I added

verify_dominators (CDI_DOMINATORS);
'
It did trigger assert in my 64-bit STV pass in 64-bit libgcc build:

/export/gnu/import/git/sources/gcc/libgcc/config/libbid/bid128_fma.c:
In function \u2018add_and_round.constprop\u2019:
/export/gnu/import/git/sources/gcc/libgcc/config/libbid/bid128_fma.c:629:1:
error: dominator of 158 should be 107, not 101

I will investigate.

> if it passes there, the bug is elsewhere, in whatever breaks the dominance
> info.  See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68730#c7
> and the related gcc-patches thread for more info.
>
>         Jakub



-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]