https://gcc.gnu.org/g:cb6ce927ae0c084e9cfb4d73f07fef505026ca64

commit r16-6929-gcb6ce927ae0c084e9cfb4d73f07fef505026ca64
Author: Georg-Johann Lay <[email protected]>
Date:   Tue Jan 20 11:06:09 2026 +0100

    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:
---
 gcc/config/avr/avr.cc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gcc/config/avr/avr.cc b/gcc/config/avr/avr.cc
index 52e63cdff895..b0e9d9000e43 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;

Reply via email to