[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avr-libc-commit] [2421] bug #40206: write to SPL and then SPH for xmega
From: |
Pitchumani |
Subject: |
[avr-libc-commit] [2421] bug #40206: write to SPL and then SPH for xmega SP initialization ( consistent with what compiler does for function prologues) |
Date: |
Tue, 29 Apr 2014 06:21:43 +0000 |
Revision: 2421
http://svn.sv.gnu.org/viewvc/?view=rev&root=avr-libc&revision=2421
Author: pitchumani
Date: 2014-04-29 06:21:42 +0000 (Tue, 29 Apr 2014)
Log Message:
-----------
bug #40206: write to SPL and then SPH for xmega SP initialization (consistent
with what compiler does for function prologues)
Ticket Links:
------------
http://savannah.gnu.org/bugs/?40206
Modified Paths:
--------------
trunk/avr-libc/ChangeLog
trunk/avr-libc/NEWS
trunk/avr-libc/crt1/gcrt1.S
Modified: trunk/avr-libc/ChangeLog
===================================================================
--- trunk/avr-libc/ChangeLog 2014-04-28 14:05:10 UTC (rev 2420)
+++ trunk/avr-libc/ChangeLog 2014-04-29 06:21:42 UTC (rev 2421)
@@ -1,3 +1,8 @@
+2014-04-29 Senthil Kumar Selvaraj <address@hidden>
+
+ Fix for bug #40206: incorrect SP init in startup code for xmegas
+ * crt1/gcrt1.S: write to SPL and then SPH for xmega SP initialization
+
2014-04-28 Pitchumani Sivanupandi <address@hidden>
Fix for bug #42024: build break regarding avrtiny10
Modified: trunk/avr-libc/NEWS
===================================================================
--- trunk/avr-libc/NEWS 2014-04-28 14:05:10 UTC (rev 2420)
+++ trunk/avr-libc/NEWS 2014-04-29 06:21:42 UTC (rev 2421)
@@ -18,6 +18,7 @@
[#38516] Missing TWI and UCSR1D definitions for ATmega16/32 U4
[#39783] CRC missing definitions and incorrect power macros for xmega D3
[#40003] Integer type promotion leads to inefficent code in wdt.h
+ [#40206] incorrect SP init in startup code for xmegas
[#40567] Invalid names in iotn13a.h (EEPE/EEMPE/BODS/BODSE)
[#40595] iotn2313a.h: wrong fuses definitions for High Fuse Byte
[#41519] wrong SPM_PAGESIZE definition in iotn[48]8.h
Modified: trunk/avr-libc/crt1/gcrt1.S
===================================================================
--- trunk/avr-libc/crt1/gcrt1.S 2014-04-28 14:05:10 UTC (rev 2420)
+++ trunk/avr-libc/crt1/gcrt1.S 2014-04-29 06:21:42 UTC (rev 2421)
@@ -218,11 +218,19 @@
clr __zero_reg__
out AVR_STATUS_ADDR, __zero_reg__
ldi r28,lo8(__stack)
+#ifdef __AVR_XMEGA__
+ out AVR_STACK_POINTER_LO_ADDR, r28
#ifdef _HAVE_AVR_STACK_POINTER_HI
ldi r29,hi8(__stack)
out AVR_STACK_POINTER_HI_ADDR, r29
#endif /* _HAVE_AVR_STACK_POINTER_HI */
+#else
+#ifdef _HAVE_AVR_STACK_POINTER_HI
+ ldi r29,hi8(__stack)
+ out AVR_STACK_POINTER_HI_ADDR, r29
+#endif /* _HAVE_AVR_STACK_POINTER_HI */
out AVR_STACK_POINTER_LO_ADDR, r28
+#endif /* __AVR_XMEGA__ */
#ifdef __AVR_3_BYTE_PC__
ldi r16, hh8(pm(__vectors))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [avr-libc-commit] [2421] bug #40206: write to SPL and then SPH for xmega SP initialization ( consistent with what compiler does for function prologues),
Pitchumani <=