This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: loop_latch_edge is NULL during jump threading
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Kugan <kugan dot vivekanandarajah at linaro dot org>,Jeff Law <law at redhat dot com>,gcc at gcc dot gnu dot org
- Date: Mon, 02 Mar 2015 08:08:03 +0100
- Subject: Re: loop_latch_edge is NULL during jump threading
- Authentication-results: sourceware.org; auth=none
- References: <54F3A189 dot 2050102 at linaro dot org> <54F3E727 dot 60701 at redhat dot com> <54F3E7DB dot 2010400 at linaro dot org>
On March 2, 2015 5:32:27 AM CET, Kugan <kugan.vivekanandarajah@linaro.org> wrote:
>On 02/03/15 15:29, Jeff Law wrote:
>> On 03/01/15 16:32, Kugan wrote:
>>> In linaro-4.9-branch, with the following (reduced) test case, I run
>into
>>> a situation where loop_latch_edge is NULL during jump threading. I
>am
>>> wondering if this a possible during jump threading or the error
>lies
>>> some where else? I can't reproduce it with the trunk.
>> There's really no way to tell without a lot more information. If you
>> can't reproduce on the 4.9 branch or the trunk, then you're likely
>going
>> to have to do the real digging.
>>
>> THe first thing I tend to do with these things is to draw the CFG and
>> annotate it with all the jump threading paths. Then I look at how
>the
>> jump threading paths interact with each other and the loop structure,
>> then reconcile that with the constraints placed on threading in
>> tree-ssa-threadupdate.c.
>
>Thanks Jeff. I will do the same.
You might want to look at trunk fixes to loop preserving code. Istr some cfg hook fixes. The loop latch test is definitely wrong.
Richard.
>Kugan