If your machine description refers to a non-existent predicate genrecog
crashes.  This fixes it.

Is this okay for trunk?


Segher


2016-03-14  Segher Boeesenkool  <segher#kernel.crashing.org>

        * genrecog.c (safe_predicate_mode): If PRED is NULL, return false.

---
 gcc/genrecog.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gcc/genrecog.c b/gcc/genrecog.c
index f8b8ef4..65882f4 100644
--- a/gcc/genrecog.c
+++ b/gcc/genrecog.c
@@ -3378,6 +3378,9 @@ find_subroutines (routine_type type, state *s, vec <state 
*> &procs)
 static bool
 safe_predicate_mode (const struct pred_data *pred, machine_mode mode)
 {
+  if (!pred)
+    return false;
+
   /* Scalar integer constants have VOIDmode.  */
   if (GET_MODE_CLASS (mode) == MODE_INT
       && (pred->codes[CONST_INT]
-- 
1.9.3

Reply via email to