lib: Modify SAM3X CMSIS files to work with GCC's lto feature

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2018-07-31 10:52:56 -04:00
parent dd240f6471
commit 8572cae9a0
3 changed files with 16 additions and 2 deletions

View File

@ -20,7 +20,8 @@ with gcc's LTO feature. See cmsis-sam3x8e.patch for the modifications.
The sam3x directory contains code from the
Atmel.SAM3X_DFP.1.0.50.atpack zip file found at:
http://packs.download.atmel.com/
version 1.0.50 (extracted on 20180725).
version 1.0.50 (extracted on 20180725). It has been modified to
compile with gcc's LTO feature. See sam3x.patch for the modifications.
The lpc176x directory contains code from the mbed project:
https://github.com/ARMmbed/mbed-os

View File

@ -132,7 +132,7 @@ void CAN0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler")));
void CAN1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler")));
/* Exception Table */
__attribute__ ((section(".vectors")))
__attribute__ ((section(".vectors"))) __attribute__((externally_visible))
const DeviceVectors exception_table = {
/* Configure Initial Stack Pointer, using linker-generated symbols */

13
lib/sam3x/sam3x.patch Normal file
View File

@ -0,0 +1,13 @@
diff --git a/lib/sam3x/gcc/gcc/startup_sam3xa.c b/lib/sam3x/gcc/gcc/startup_sam3xa.c
index 337a6d3c..dcf56447 100644
--- a/lib/sam3x/gcc/gcc/startup_sam3xa.c
+++ b/lib/sam3x/gcc/gcc/startup_sam3xa.c
@@ -132,7 +132,7 @@ void CAN0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler")));
void CAN1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler")));
/* Exception Table */
-__attribute__ ((section(".vectors")))
+__attribute__ ((section(".vectors"))) __attribute__((externally_visible))
const DeviceVectors exception_table = {
/* Configure Initial Stack Pointer, using linker-generated symbols */