public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Patch for PR target/32218 (ice-on-valid-code, IA64 vectorization)
@ 2007-07-25 17:28 Steve Ellcey
  2007-07-25 19:49 ` Dorit Nuzman
  0 siblings, 1 reply; 2+ messages in thread
From: Steve Ellcey @ 2007-07-25 17:28 UTC (permalink / raw)
  To: gcc-patches

PR target/32218 is an ice-on-valid-code problem where we call TYPE_MODE
with the result of get_vectype_for_scalar_type.
get_vectype_for_scalar_type can return a NULL_TREE if there is no
vectype for a particular scalar type and if we call TYPE_MODE with
NULL_TREE we will get an ICE.  This patch checks the result of
get_vectype_for_scalar_type before using it.

OK for checkin?

Steve Ellcey
sje@cup.hp.com


2007-07-25  Steve Ellcey  <sje@cup.hp.com>

	* tree-vect-patterns.c (vect_pattern_recog_1): Check for valid type.


Index: tree-vect-patterns.c
===================================================================
--- tree-vect-patterns.c	(revision 126897)
+++ tree-vect-patterns.c	(working copy)
@@ -651,8 +651,9 @@ vect_pattern_recog_1 (
           || (icode = optab->handlers[(int) vec_mode].insn_code) ==
               CODE_FOR_nothing
           || (type_out
-              && (insn_data[icode].operand[0].mode !=
-                  TYPE_MODE (get_vectype_for_scalar_type (type_out)))))
+              && (!get_vectype_for_scalar_type (type_out)
+                  || (insn_data[icode].operand[0].mode !=
+                      TYPE_MODE (get_vectype_for_scalar_type (type_out))))))
 	return;
     }
 

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Patch for PR target/32218 (ice-on-valid-code, IA64 vectorization)
  2007-07-25 17:28 Patch for PR target/32218 (ice-on-valid-code, IA64 vectorization) Steve Ellcey
@ 2007-07-25 19:49 ` Dorit Nuzman
  0 siblings, 0 replies; 2+ messages in thread
From: Dorit Nuzman @ 2007-07-25 19:49 UTC (permalink / raw)
  To: sje; +Cc: gcc-patches

> PR target/32218 is an ice-on-valid-code problem where we call TYPE_MODE
> with the result of get_vectype_for_scalar_type.
> get_vectype_for_scalar_type can return a NULL_TREE if there is no
> vectype for a particular scalar type and if we call TYPE_MODE with
> NULL_TREE we will get an ICE.  This patch checks the result of
> get_vectype_for_scalar_type before using it.
>
> OK for checkin?
>

yes, this is ok.

thanks,
dorit

> Steve Ellcey
> sje@cup.hp.com
>
>
> 2007-07-25  Steve Ellcey  <sje@cup.hp.com>
>
>    * tree-vect-patterns.c (vect_pattern_recog_1): Check for valid type.
>
>
> Index: tree-vect-patterns.c
> ===================================================================
> --- tree-vect-patterns.c   (revision 126897)
> +++ tree-vect-patterns.c   (working copy)
> @@ -651,8 +651,9 @@ vect_pattern_recog_1 (
>            || (icode = optab->handlers[(int) vec_mode].insn_code) ==
>                CODE_FOR_nothing
>            || (type_out
> -              && (insn_data[icode].operand[0].mode !=
> -                  TYPE_MODE (get_vectype_for_scalar_type (type_out)))))
> +              && (!get_vectype_for_scalar_type (type_out)
> +                  || (insn_data[icode].operand[0].mode !=
> +                      TYPE_MODE (get_vectype_for_scalar_type
(type_out))))))
>     return;
>      }
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-07-25 19:40 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-25 17:28 Patch for PR target/32218 (ice-on-valid-code, IA64 vectorization) Steve Ellcey
2007-07-25 19:49 ` Dorit Nuzman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).