]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* caller-save.c (init_caller_save): Clear INSN_CODE each iteration.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 11 Jun 2002 22:16:51 +0000 (22:16 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 11 Jun 2002 22:16:51 +0000 (22:16 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54527 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/caller-save.c

index 9ca4c687f759c1b56193cc5e057b8dcb2df72c62..b765062cea10802b924f5ad98697054f9bf535ab 100644 (file)
@@ -1,3 +1,7 @@
+2002-06-11  Richard Henderson  <rth@redhat.com>
+
+       * caller-save.c (init_caller_save): Clear INSN_CODE each iteration.
+
 2002-06-11  Richard Henderson  <rth@redhat.com>
 
        * defaults.h (EH_FRAME_SECTION_NAME): Don't define if 
index 920bafd241b81399fd993143610b39428e8ae5d4..2c6e5ac79d1f12d2d5edf11d541a1c45052d9bd1 100644 (file)
@@ -208,6 +208,10 @@ init_caller_save ()
          PUT_MODE (test_reg, mode);
          PUT_MODE (test_mem, mode);
 
+         /* Force re-recognition of the modified insns.  */
+         INSN_CODE (saveinsn) = -1;
+         INSN_CODE (restinsn) = -1;
+
          reg_save_code[i][mode] = recog_memoized (saveinsn);
          reg_restore_code[i][mode] = recog_memoized (restinsn);
 
@@ -234,6 +238,7 @@ init_caller_save ()
          reg_save_code[i][mode] = -1;
          reg_restore_code[i][mode] = -1;
        }
+
   for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
     for (j = 1; j <= MOVE_MAX_WORDS; j++)
       if (reg_save_code [i][regno_save_mode[i][j]] == -1)