OSDN Git Service

PR target/51050
authorgjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 15 Dec 2011 11:10:32 +0000 (11:10 +0000)
committergjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 15 Dec 2011 11:10:32 +0000 (11:10 +0000)
* config/avr/avr.c (expand_epilogue): Don't build SUBREG of fp.
(avr_prologue_setup_frame): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182363 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/avr/avr.c

index 40c9646..a12190f 100644 (file)
@@ -1,3 +1,9 @@
+2011-12-15  Georg-Johann Lay  <avr@gjlay.de>
+
+       PR target/51050
+       * config/avr/avr.c (expand_epilogue): Don't build SUBREG of fp.
+       (avr_prologue_setup_frame): Ditto.
+
 2011-12-15  Jakub Jelinek  <jakub@redhat.com>
 
        PR debug/51517
index af32551..367e76b 100644 (file)
@@ -994,7 +994,7 @@ avr_prologue_setup_frame (HOST_WIDE_INT size, HARD_REG_SET set)
               /* The high byte (r29) does not change:
                  Prefer SUBI (1 cycle) over ABIW (2 cycles, same size).  */
 
-              my_fp = simplify_gen_subreg (QImode, fp, Pmode, 0);
+              my_fp = all_regs_rtx[FRAME_POINTER_REGNUM];
             }
 
           /************  Method 1: Adjust frame pointer  ************/
@@ -1292,7 +1292,7 @@ expand_epilogue (bool sibcall_p)
           /* The high byte (r29) does not change:
              Prefer SUBI (1 cycle) over SBIW (2 cycles).  */
                   
-          my_fp = simplify_gen_subreg (QImode, fp, Pmode, 0);
+          my_fp = all_regs_rtx[FRAME_POINTER_REGNUM];
         }
               
       /********** Method 1: Adjust fp register  **********/