cm3: Only inline asm is allowed in naked functions
According to: https://gcc.gnu.org/onlinedocs/gcc-6.2.0/gcc/ARM-Function-Attributes.html "Only basic asm statements can safely be included in naked functions (see Basic Asm). While using extended asm or a mixture of basic asm and C code may appear to work, they cannot be depended upon to work reliably and are not supported."
This commit is contained in:
parent
f2589bc7d8
commit
f53e12d2da
@ -437,11 +437,11 @@ struct scb_exception_stack_frame {
|
||||
: [frameptr]"=r" (f)); \
|
||||
} while (0)
|
||||
|
||||
void scb_reset_system(void) __attribute__((noreturn, naked));
|
||||
void scb_reset_system(void) __attribute__((noreturn));
|
||||
|
||||
/* Those defined only on ARMv7 and above */
|
||||
#if defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__)
|
||||
void scb_reset_core(void) __attribute__((noreturn, naked));
|
||||
void scb_reset_core(void) __attribute__((noreturn));
|
||||
void scb_set_priority_grouping(uint32_t prigroup);
|
||||
#endif
|
||||
|
||||
|
@ -59,7 +59,7 @@ vector_table_t vector_table = {
|
||||
}
|
||||
};
|
||||
|
||||
void __attribute__ ((weak, naked)) reset_handler(void)
|
||||
void __attribute__ ((weak)) reset_handler(void)
|
||||
{
|
||||
volatile unsigned *src, *dest;
|
||||
funcp_t *fp;
|
||||
|
Loading…
x
Reference in New Issue
Block a user