diff options
author | Georg-Johann Lay <gjl@gcc.gnu.org> | 2014-10-22 10:40:30 +0000 |
---|---|---|
committer | Georg-Johann Lay <gjl@gcc.gnu.org> | 2014-10-22 10:40:30 +0000 |
commit | 18a3415e239132c0273e306421147d79a7d3ae28 (patch) | |
tree | 837d2c93cac1bcce0f8f79f2912cf4abf40baadd /libgcc/config/avr | |
parent | 8584f1c4910165d1ba7d5d3aa37af2834041e03e (diff) | |
download | gcc-18a3415e239132c0273e306421147d79a7d3ae28.zip gcc-18a3415e239132c0273e306421147d79a7d3ae28.tar.gz gcc-18a3415e239132c0273e306421147d79a7d3ae28.tar.bz2 |
lib1funcs.S (__do_global_dtors): Fix wrong code introduced with 2014-10-21 trunk r216525.
* config/avr/lib1funcs.S (__do_global_dtors): Fix wrong code
introduced with 2014-10-21 trunk r216525.
From-SVN: r216550
Diffstat (limited to 'libgcc/config/avr')
-rw-r--r-- | libgcc/config/avr/lib1funcs.S | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libgcc/config/avr/lib1funcs.S b/libgcc/config/avr/lib1funcs.S index 0205d83..51cdbf1 100644 --- a/libgcc/config/avr/lib1funcs.S +++ b/libgcc/config/avr/lib1funcs.S @@ -2502,14 +2502,16 @@ DEFUN __do_global_dtors #endif /* HAVE_EIJMP */ rjmp .L__do_global_dtors_start .L__do_global_dtors_loop: - waddi 28, 1 #ifdef __AVR_HAVE_EIJMP_EICALL__ - adc r16, __zero_reg__ mov r24, r16 #endif /* HAVE_EIJMP */ mov_h r31, r29 mov_l r30, r28 XCALL __tablejump2__ + waddi 28, 1 +#ifdef __AVR_HAVE_EIJMP_EICALL__ + adc r16, __zero_reg__ +#endif /* HAVE_EIJMP */ .L__do_global_dtors_start: cpi r28, pm_lo8(__dtors_end) cpc r29, cdtors_tst_reg @@ -2521,6 +2523,8 @@ DEFUN __do_global_dtors ENDF __do_global_dtors #endif /* L_dtors */ +#undef cdtors_tst_reg + .section .text.libgcc, "ax", @progbits #if !defined (__AVR_TINY__) |