http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52461

--- Comment #3 from Markus Faust <saturn at quantentunnel dot de> 2012-03-06 
07:55:39 UTC ---
(In reply to comment #1)
> Eric, would you confirm this is actually a problem and set bug status to NEW?

For me this seems to be a really severe problem, because as soon as my code
size reaches 65536 bytes, RAMPZ seems to be set to 1. On the other hand, I/O
register access is (sometimes) done via STD with Z register and will go wrong
if RAMPZ is not 0. This is mostly the same behaviour as described by
darkdragon2000 in bug 44940, except that it also happens in the application
section if code size is >=65536 bytes.

device: ATxmega128A1
gcc version 4.5.1 (AVR_8_bit_GNU_Toolchain_3.2.3_314) (from Atmel)
Windows 2000

It would be very helpful if someone could provide a fix, as I am stuck at work
because of this problem.

I have put a "RAMPZ=0;" at the very beginning of main(), which seems to do the
trick for the moment, but I think this is a very ugly hack and potentially
dangerous.

Reply via email to