aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMircea Namolaru <namolaru@il.ibm.com>2006-05-30 07:53:02 +0000
committerOlga Golovanevsky <olga@gcc.gnu.org>2006-05-30 07:53:02 +0000
commit5f431007f1a4d5a23578bbef6cbe7b4402bbb40e (patch)
tree1bb4924799172a87305974be9521497fb6a0ad2b
parent55b2de7516de84ee94926fd4466ceb34c49a93c3 (diff)
downloadgcc-5f431007f1a4d5a23578bbef6cbe7b4402bbb40e.zip
gcc-5f431007f1a4d5a23578bbef6cbe7b4402bbb40e.tar.gz
gcc-5f431007f1a4d5a23578bbef6cbe7b4402bbb40e.tar.bz2
fix for see
From-SVN: r114230
-rw-r--r--gcc/see.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/see.c b/gcc/see.c
index 12c71d3..d20cdf4 100644
--- a/gcc/see.c
+++ b/gcc/see.c
@@ -674,6 +674,10 @@ see_get_extension_reg (rtx extension, bool return_dest_reg)
rtx reg1 = NULL;
rtx reg2 = NULL;
+ /* Parallel pattern for extension not supported for the moment. */
+ if (GET_CODE (PATTERN (extension)) == PARALLEL)
+ return NULL;
+
set = single_set (extension);
if (!set)
return NULL;
@@ -719,6 +723,10 @@ see_get_extension_data (rtx extension, enum machine_mode *source_mode)
if (!extension || !INSN_P (extension))
return UNKNOWN;
+ /* Parallel pattern for extension not supported for the moment. */
+ if (GET_CODE (PATTERN (extension)) == PARALLEL)
+ return NOT_RELEVANT;
+
set = single_set (extension);
if (!set)
return NOT_RELEVANT;
@@ -3462,8 +3470,8 @@ see_analyze_one_def (rtx insn, enum machine_mode *source_mode,
relevant. Handling this extension as relevant would make things much
more complicated. */
next_insn = NEXT_INSN (insn);
- if (prev_insn
- && INSN_P (prev_insn)
+ if (next_insn
+ && INSN_P (next_insn)
&& (see_get_extension_data (next_insn, &next_source_mode) !=
NOT_RELEVANT))
{