]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
xtensa.md (set_frame_ptr): Change rtl to set reg a7.
authorBob Wilson <bob.wilson@acm.org>
Tue, 11 Feb 2003 22:18:53 +0000 (22:18 +0000)
committerBob Wilson <bwilson@gcc.gnu.org>
Tue, 11 Feb 2003 22:18:53 +0000 (22:18 +0000)
        * config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7.
        * config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP
        as a SET pattern.

From-SVN: r62737

gcc/ChangeLog
gcc/config/xtensa/xtensa.c
gcc/config/xtensa/xtensa.md

index ece8df5528e5a4996563c756be565ed812b8d00f..0bb53a754ec0af51676ef9cc44dd10a3dc1848c2 100644 (file)
@@ -1,3 +1,13 @@
+2003-02-11  Bob Wilson  <bob.wilson@acm.org>
+
+       Backport following patch:
+
+       2003-02-11  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.md (set_frame_ptr): Change rtl to set reg a7.
+       * config/xtensa/xtensa.c (xtensa_reorg): Search for UNSPECV_SET_FP
+       as a SET pattern.
+       
 2003-02-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
             Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>
 
index 6beb6745626e897ec9e1d1af8b16b5da4cf4e436..40d914f45c9adc7dab3d71d59073146c9ef539d9 100644 (file)
@@ -2245,8 +2245,9 @@ xtensa_reorg (first)
        continue;
 
       pat = PATTERN (insn);
-      if (GET_CODE (pat) == UNSPEC_VOLATILE
-         && (XINT (pat, 1) == UNSPECV_SET_FP))
+      if (GET_CODE (pat) == SET
+         && GET_CODE (SET_SRC (pat)) == UNSPEC_VOLATILE
+         && (XINT (SET_SRC (pat), 1) == UNSPECV_SET_FP))
        {
          set_frame_ptr_insn = insn;
          break;
index b0cf9a1724ff71736cd6060598d12edccbe4a01b..55bfd0b8377f153eb2ed273f3d92ce41b02bc09b 100644 (file)
 ;; to set up the frame pointer.
 
 (define_insn "set_frame_ptr"
-  [(unspec_volatile [(const_int 0)] UNSPECV_SET_FP)]
+  [(set (reg:SI A7_REG) (unspec_volatile [(const_int 0)] UNSPECV_SET_FP))]
   ""
   "*
 {
 
 ;; Post-reload splitter to remove fp assignment when it's not needed.
 (define_split
-  [(unspec_volatile [(const_int 0)] UNSPECV_SET_FP)]
+  [(set (reg:SI A7_REG) (unspec_volatile [(const_int 0)] UNSPECV_SET_FP))]
   "reload_completed && !frame_pointer_needed"
   [(unspec [(const_int 0)] UNSPEC_NOP)]
   "")