Variables are not getting correctly placesed. In V8.2.2 for windows building for a LPC11C24, variables are getting placed directly AFTER the RAM section. If I enlarge the RAM section (which is larger than physically on the chip), the variable moves, and if I shrink the section to half the chip RAM, the variable again moves to the memory immediately following the defined RAM section. I am using the NewlibNano nohost. Also, it looks like the memcpy operations in the Chip_UART_SendRB function are wiping out vtables so the next polymorphic function call causes a fault. I stepped through and everything looks correctly written with enough RAM, so have no idea why variables are getting placed outside of RAM and obviously not working. This is a statically located global variable. Does the NewlibNano have problems with C++ or memcpy? Why would variables get placed in RAM outside of the defined RAM segment?
The same code works fine for a Newlib nohost built binary running on an LPC1837.