aboutsummaryrefslogtreecommitdiffstats
path: root/os
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2018-07-11 09:22:42 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2018-07-11 09:22:42 +0000
commitd02831550ee82869d06800e36454b3423faa95ad (patch)
treeb4518c311ec9b6079fdc86481760484e83f1336b /os
parent476c11c7be9e5914e99e51e06ac5865fce2b970f (diff)
downloadChibiOS-d02831550ee82869d06800e36454b3423faa95ad.tar.gz
ChibiOS-d02831550ee82869d06800e36454b3423faa95ad.tar.bz2
ChibiOS-d02831550ee82869d06800e36454b3423faa95ad.zip
Fixed some alignment rules.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@12159 110e8d01-0319-4d1e-a829-52ad28d1bb01
Diffstat (limited to 'os')
-rw-r--r--os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld2
-rw-r--r--os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld2
-rw-r--r--os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld16
-rw-r--r--os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld1
4 files changed, 2 insertions, 19 deletions
diff --git a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld
index f61a59f17..0b2baa7ab 100644
--- a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld
+++ b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld
@@ -35,7 +35,7 @@ SECTIONS
__fini_array_end = .;
} > XTORS_FLASH AT > XTORS_FLASH_LMA
- .text : ALIGN(16)
+ .text : ALIGN(4)
{
__text_base = .;
*(.text)
diff --git a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld
index 55d2ca2df..2ba14c703 100644
--- a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld
+++ b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld
@@ -18,7 +18,6 @@ SECTIONS
{
.data : ALIGN(4)
{
- . = ALIGN(4);
PROVIDE(_textdata = LOADADDR(.data));
PROVIDE(_data = .);
_textdata_start = LOADADDR(.data);
@@ -33,7 +32,6 @@ SECTIONS
.bss (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
_bss_start = .;
*(.bss)
*(.bss.*)
diff --git a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld
index 6eab83b61..1576f76a2 100644
--- a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld
+++ b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld
@@ -68,7 +68,6 @@ SECTIONS
{
.ram0_init : ALIGN(4)
{
- . = ALIGN(4);
__ram0_init_text__ = LOADADDR(.ram0_init);
__ram0_init__ = .;
KEEP(*(.ram0_init))
@@ -78,7 +77,6 @@ SECTIONS
.ram0 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram0_clear__ = .;
*(.ram0_clear)
*(.ram0_clear.*)
@@ -92,7 +90,6 @@ SECTIONS
.ram1_init : ALIGN(4)
{
- . = ALIGN(4);
__ram1_init_text__ = LOADADDR(.ram1_init);
__ram1_init__ = .;
KEEP(*(.ram1_init))
@@ -102,7 +99,6 @@ SECTIONS
.ram1 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram1_clear__ = .;
*(.ram1_clear)
*(.ram1_clear.*)
@@ -116,7 +112,6 @@ SECTIONS
.ram2_init : ALIGN(4)
{
- . = ALIGN(4);
__ram2_init_text__ = LOADADDR(.ram2_init);
__ram2_init__ = .;
KEEP(*(.ram2_init))
@@ -126,7 +121,6 @@ SECTIONS
.ram2 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram2_clear__ = .;
*(.ram2_clear)
*(.ram2_clear.*)
@@ -140,7 +134,6 @@ SECTIONS
.ram3_init : ALIGN(4)
{
- . = ALIGN(4);
__ram3_init_text__ = LOADADDR(.ram3_init);
__ram3_init__ = .;
KEEP(*(.ram3_init))
@@ -150,7 +143,6 @@ SECTIONS
.ram3 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram3_clear__ = .;
*(.ram3_clear)
*(.ram3_clear.*)
@@ -164,7 +156,6 @@ SECTIONS
.ram4_init : ALIGN(4)
{
- . = ALIGN(4);
__ram4_init_text__ = LOADADDR(.ram4_init);
__ram4_init__ = .;
KEEP(*(.ram4_init))
@@ -174,7 +165,6 @@ SECTIONS
.ram4 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram4_clear__ = .;
*(.ram4_clear)
*(.ram4_clear.*)
@@ -188,7 +178,6 @@ SECTIONS
.ram5_init : ALIGN(4)
{
- . = ALIGN(4);
__ram5_init_text__ = LOADADDR(.ram5_init);
__ram5_init__ = .;
KEEP(*(.ram5_init))
@@ -198,7 +187,6 @@ SECTIONS
.ram5 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram5_clear__ = .;
*(.ram5_clear)
*(.ram5_clear.*)
@@ -212,7 +200,6 @@ SECTIONS
.ram6_init : ALIGN(4)
{
- . = ALIGN(4);
__ram6_init_text__ = LOADADDR(.ram6_init);
__ram6_init__ = .;
KEEP(*(.ram6_init))
@@ -222,7 +209,6 @@ SECTIONS
.ram6 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram6_clear__ = .;
*(.ram6_clear)
*(.ram6_clear.*)
@@ -236,7 +222,6 @@ SECTIONS
.ram7_init : ALIGN(4)
{
- . = ALIGN(4);
__ram7_init_text__ = LOADADDR(.ram7_init);
__ram7_init__ = .;
KEEP(*(.ram7_init))
@@ -246,7 +231,6 @@ SECTIONS
.ram7 (NOLOAD) : ALIGN(4)
{
- . = ALIGN(4);
__ram7_clear__ = .;
*(.ram7_clear)
*(.ram7_clear.*)
diff --git a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld
index 087f913fa..1c64a442e 100644
--- a/os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld
+++ b/os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld
@@ -29,6 +29,7 @@ SECTIONS
/* Special section for process stack.*/
.pstack (NOLOAD) :
{
+ . = ALIGN(8);
__process_stack_base__ = .;
__main_thread_stack_base__ = .;
. += __process_stack_size__;