re PR target/38991 (SH: ICE in extract_insn at recog.c:1990)
authorKaz Kojima <kkojima@gcc.gnu.org>
Fri, 6 Feb 2009 00:29:03 +0000 (00:29 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Fri, 6 Feb 2009 00:29:03 +0000 (00:29 +0000)
PR target/38991
* config/sh/predicates.md (general_movsrc_operand): Don't check
the subreg of system registers here.

From-SVN: r143978

gcc/ChangeLog
gcc/config/sh/predicates.md

index 92bb49c..f0822dc 100644 (file)
@@ -1,3 +1,9 @@
+2009-02-05  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/38991
+       * config/sh/predicates.md (general_movsrc_operand): Don't check
+       the subreg of system registers here.
+
 2009-02-05  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/39106
index ff6a1a2..bbd5fd4 100644 (file)
@@ -1,5 +1,5 @@
 ;; Predicate definitions for Renesas / SuperH SH.
-;; Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
+;; Copyright (C) 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
 ;;
 ;; This file is part of GCC.
 ;;
        return 0;
     }
 
-  if ((mode == QImode || mode == HImode)
-      && (GET_CODE (op) == SUBREG
-         && GET_CODE (XEXP (op, 0)) == REG
-         && system_reg_operand (XEXP (op, 0), mode)))
-    return 0;
-
   if (TARGET_SHMEDIA
       && (GET_CODE (op) == PARALLEL || GET_CODE (op) == CONST_VECTOR)
       && sh_rep_vec (op, mode))