boards/mips Linker Scripts: The PIC32M* start-up code initializes .bss by writing 16 bytes at a time in a loop. The start (_sbss) alignment is only required to be 4 bytes since the write is done with 4 store instructions. In a previous change, the end address, _ebss, was aligned to 16 byte to prevent initializing past the end off the .bss region. However, that does not work unless the start address, _sbss, is also aligned to 16 bytes.
This commit is contained in:
parent
ec4a7be5c2
commit
5995714cfd
@ -253,6 +253,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -255,6 +255,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -253,6 +253,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -255,6 +255,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -253,6 +253,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -255,6 +255,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -257,6 +257,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
@ -276,6 +276,7 @@ SECTIONS
|
||||
|
||||
.sbss :
|
||||
{
|
||||
. = ALIGN(16);
|
||||
_sbss = ABSOLUTE(.);
|
||||
*(.dynsbss)
|
||||
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||
|
Loading…
Reference in New Issue
Block a user