OSDN Git Service

* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Reserve arm frame
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Apr 2005 18:33:37 +0000 (18:33 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Apr 2005 18:33:37 +0000 (18:33 +0000)
pointer when thumb backtracing is on.

* config/fp-bit.c (abort): Revert change.

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

gcc/ChangeLog
gcc/config/arm/arm.h
gcc/config/fp-bit.c

index 944989e..7e2c452 100644 (file)
@@ -1,3 +1,10 @@
+2005-04-27  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Reserve arm frame
+       pointer when thumb backtracing is on.
+
+       * config/fp-bit.c (abort): Revert change.
+
 2005-04-27  Ian Lance Taylor  <ian@airs.com>
 
        * c-semantics.c (add_stmt): Don't test STATEMENT_CODE_P.
index e6a049b..b79e028 100644 (file)
@@ -926,7 +926,9 @@ extern const char * structure_size_string;
      _interwork_r11_call_via_rN().  Making the register global \
      is an easy way of ensuring that it remains valid for all  \
      calls.  */                                                        \
-  if (TARGET_APCS_FRAME || TARGET_CALLER_INTERWORKING)         \
+  if (TARGET_APCS_FRAME || TARGET_CALLER_INTERWORKING          \
+      || (target_flags & (THUMB_FLAG_LEAF_BACKTRACE            \
+                         | THUMB_FLAG_BACKTRACE)))             \
     {                                                          \
       fixed_regs[ARM_HARD_FRAME_POINTER_REGNUM] = 1;           \
       call_used_regs[ARM_HARD_FRAME_POINTER_REGNUM] = 1;       \
index 1229bf7..795e67a 100644 (file)
@@ -81,7 +81,7 @@ Boston, MA 02111-1307, USA.  */
 #endif
 
 #ifdef EXTENDED_FLOAT_STUBS
-extern __attribute__ ((__noreturn__)) void abort (void);
+extern void abort (void);
 void __extendsfxf2 (void) { abort(); }
 void __extenddfxf2 (void) { abort(); }
 void __truncxfdf2 (void) { abort(); }