This is the mail archive of the gcc-patches@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: [patch] Cleanup and improvement of if-conversion for vectorization


On 30/05/2010 16:23, Richard Guenther wrote:
> On Sat, 29 May 2010, Sebastian Pop wrote:
> 
>> On Thu, May 27, 2010 at 04:48, Richard Guenther <rguenther@suse.de> wrote:
>>> On Wed, 26 May 2010, Sebastian Pop wrote:
>>>
>>>> On Wed, May 26, 2010 at 04:19, Richard Guenther <rguenther@suse.de> wrote:
>>>>> I still do not at all understand #3 and #4.  Please explain.
>>>> 0002-Predicate-all-the-memory-writes.patch
>>>> 0003-Fix-creation-of-temp-variables.patch
>>>>
>>>> Before #2 the only variables that were created by the if-conversion
>>>> pass were scalar SSA names.  #2 allows reads and writes to memory.
>>> What do you mean?  In
>>>
>>>> D.2757_29 != 0 ? _ifc_.11 : _ifc_.12;
>>> I see non-SSA names _ifc_.11 and _ifc_.12 - that is not valid gimple.
>>>
>>> Neither would a COND_EXPR RHS with a memory store on the LHS be
>>> valid gimple.  I suppose I have to fix the verifier to barf on you
>>> here.
>>>
>>> A COND_EXPR RHS is not a memory load, so the statement should never
>>> get a VOP and thus the alias-oracle need not to care about it.
>> Ok, please fix verify_ssa ().
> 
> Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.

  Hey, you guys are talking about SSA and if-cvt?  Could this be related to
the ICE I'm seeing at r.159965 on trunk, when this assertion:

> static void
> execute_todo (unsigned int flags)
> {
> #if defined ENABLE_CHECKING
>   if (cfun
>       && need_ssa_update_p (cfun))
>     gcc_assert (flags & TODO_update_ssa_any);
> #endif

... is firing in gcc.c-torture/compile/20040304-1.c at -O3?  I added
-fdump-tree-all to the command line from the failing command in gcc.log, and
20040304-1.c.109t.ifcvt is the highest numbered dumpfile that gets generated
before the ICE.

    cheers,
      DaveK



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