[Bug tree-optimization/79529] [7 Regression] ICE in is_maybe_undefined (tree-ssa-loop-unswitch.c:162)

2017-02-17 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79529

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Martin Liška  ---
Fixed.

[Bug tree-optimization/79529] [7 Regression] ICE in is_maybe_undefined (tree-ssa-loop-unswitch.c:162)

2017-02-17 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79529

--- Comment #3 from Martin Liška  ---
Author: marxin
Date: Fri Feb 17 14:36:08 2017
New Revision: 245530

URL: https://gcc.gnu.org/viewcvs?rev=245530=gcc=rev
Log:
Introduce ssa_defined_default_def_p function (PR tree-optimization/79529).

2017-02-17  Martin Liska  

PR tree-optimization/79529
* tree-ssa-loop-unswitch.c (is_maybe_undefined): Use
ssa_defined_default_def_p to handle cases which are implicitly
defined.
* tree-ssa.c (ssa_defined_default_def_p): New function.
(ssa_undefined_value_p): Use ssa_defined_default_def_p to handle cases
which are implicitly defined.
* tree-ssa.h (ssa_defined_default_def_p): Declare.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-ssa-loop-unswitch.c
trunk/gcc/tree-ssa.c
trunk/gcc/tree-ssa.h

[Bug tree-optimization/79529] [7 Regression] ICE in is_maybe_undefined (tree-ssa-loop-unswitch.c:162)

2017-02-16 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79529

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1
Version|unknown |7.0
   Target Milestone|--- |7.0

[Bug tree-optimization/79529] [7 Regression] ICE in is_maybe_undefined (tree-ssa-loop-unswitch.c:162)

2017-02-15 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79529

--- Comment #2 from Martin Liška  ---
(In reply to Aldy Hernandez from comment #1)
> Looks reasonable, thanks.
> 
> I would probably check for def == NULL too, just in case:
> 
> if (!def || gimple_nop_p (def))
>   return true;
> 
> ...since I see that replace_ssa_name can set it to NULL:
> 
>  /* Now that we've used the def stmt to define new_name, make sure it
>  doesn't define name anymore.  */
>   SSA_NAME_DEF_STMT (name) = NULL;
> 
> Would you care to test and submit a patch to the list?

Ok, I'll include that check and re-test the patch and send to ML.

Thanks for hint.

[Bug tree-optimization/79529] [7 Regression] ICE in is_maybe_undefined (tree-ssa-loop-unswitch.c:162)

2017-02-15 Thread aldyh at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79529

--- Comment #1 from Aldy Hernandez  ---
Looks reasonable, thanks.

I would probably check for def == NULL too, just in case:

if (!def || gimple_nop_p (def))
  return true;

...since I see that replace_ssa_name can set it to NULL:

 /* Now that we've used the def stmt to define new_name, make sure it
 doesn't define name anymore.  */
  SSA_NAME_DEF_STMT (name) = NULL;

Would you care to test and submit a patch to the list?