MSP432_LAUNCHPAD: keep interruptVectors symbol in LTO builds

Add a "used" attribute to interruptVectors to fix ARMC6 build with
the "-flto" flag.
(Error: L6236E: No section matches selector - no section to be FIRST/LAST. )

This attribute, attached to a function/variable, means that code must be emitted
for the function even if it appears that the function is not referenced.
pull/11874/head
Maciej Bocianski 2019-12-04 09:38:58 +01:00
parent 5fdacc4fb3
commit ec839f0931
1 changed files with 1 additions and 1 deletions

View File

@ -156,7 +156,7 @@ WEAK_ALIAS_FUNC(EUSCIB3_SPI_IRQHandler, Default_Handler)
// to ensure that it ends up at physical address 0x0000.0000 or at the start of the
// program if located at a start address other than 0.
#if defined(__CC_ARM) || (defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050))
void (* const interruptVectors[])(void) __attribute__((section("RESET"))) = {
void (* const interruptVectors[])(void) __attribute__((section("RESET"), used)) = {
(pFunc) &Image$$ARM_LIB_STACK$$ZI$$Limit, // The initial stack pointer
#elif defined(__ICCARM__)
void (* const __vector_table[])(void) @ ".intvec" = {