From a9bf963db77181623f9af92f0928c1a2832998be Mon Sep 17 00:00:00 2001
From: rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed, 4 May 2005 01:38:14 +0000
Subject: [PATCH]         PR middle-end/21318         * function.c
 (instantiate_virtual_regs_in_insn): Use the mode         from recog_data
 instead of insn_data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99205 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog  | 6 ++++++
 gcc/function.c | 4 ++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5760eece2413..0ed638774710 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-05-03  Richard Henderson  <rth@redhat.com>
+
+	PR middle-end/21318
+	* function.c (instantiate_virtual_regs_in_insn): Use the mode
+	from recog_data instead of insn_data.
+
 2005-05-03  DJ Delorie  <dj@redhat.com>
 
 	* common.opt (fdiagnostics-show-option): No variable is needed.
diff --git a/gcc/function.c b/gcc/function.c
index 065c1244e9d6..6bc33442d7b5 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -1485,8 +1485,8 @@ instantiate_virtual_regs_in_insn (rtx insn)
 	      end_sequence ();
 	      emit_insn_before (seq, insn);
 	    }
-	  x = simplify_gen_subreg (insn_data[insn_code].operand[i].mode,
-				   new, GET_MODE (new), SUBREG_BYTE (x));
+	  x = simplify_gen_subreg (recog_data.operand_mode[i], new,
+				   GET_MODE (new), SUBREG_BYTE (x));
 	  break;
 
 	default:
-- 
GitLab