AVR-LibC's setjmp preserves the callee-saved regs, hence let
TARGET_SETJMP_PRESERVES_NONVOLATILE_REGS_P return true.
Ok for trunk?
Johann
--
AVR: AVR-LibC's setjmp preserves callee-saved regs.
gcc/
* config/avr/avr.cc (TARGET_SETJMP_PRESERVES_NONVOLATILE_REGS_P)
Return true when WITH_AVRLIBC.
diff --git a/gcc/config/avr/avr.cc b/gcc/config/avr/avr.cc
index 52e63cdff89..b0e9d9000e4 100644
--- a/gcc/config/avr/avr.cc
+++ b/gcc/config/avr/avr.cc
@@ -16967,6 +16967,11 @@ avr_unwind_word_mode ()
#undef TARGET_C_MODE_FOR_FLOATING_TYPE
#define TARGET_C_MODE_FOR_FLOATING_TYPE avr_c_mode_for_floating_type
+#if defined WITH_AVRLIBC
+#undef TARGET_SETJMP_PRESERVES_NONVOLATILE_REGS_P
+#define TARGET_SETJMP_PRESERVES_NONVOLATILE_REGS_P hook_bool_void_true
+#endif // WITH_AVRLIBC
+
gcc_target targetm = TARGET_INITIALIZER;
^L