mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			NUVOTON: Fix undefined reference to Reset_Handler_Cascade
Add a "used" attribute to Reset_Handler_Cascade to fix GCC build with the "-flto" flag. This attribute, attached to a function, means that code must be emitted for the function even if it appears that the function is not referenced.pull/11874/head
							parent
							
								
									8fcb00cccd
								
							
						
					
					
						commit
						28b1169b7e
					
				| 
						 | 
				
			
			@ -24,11 +24,13 @@
 | 
			
		|||
#if defined(__CC_ARM)
 | 
			
		||||
#define WEAK            __attribute__ ((weak))
 | 
			
		||||
#define ALIAS(f)        __attribute__ ((weak, alias(#f)))
 | 
			
		||||
#define USED            __attribute__ ((used))
 | 
			
		||||
 | 
			
		||||
#define WEAK_ALIAS_FUNC(FUN, FUN_ALIAS) \
 | 
			
		||||
void FUN(void) __attribute__ ((weak, alias(#FUN_ALIAS)));
 | 
			
		||||
 | 
			
		||||
#elif defined(__ICCARM__)
 | 
			
		||||
#define USED            __root
 | 
			
		||||
//#define STRINGIFY(x) #x
 | 
			
		||||
//#define _STRINGIFY(x) STRINGIFY(x)
 | 
			
		||||
#define WEAK_ALIAS_FUNC(FUN, FUN_ALIAS) \
 | 
			
		||||
| 
						 | 
				
			
			@ -42,6 +44,7 @@ _Pragma(_STRINGIFY(_WEAK_ALIAS_FUNC(FUN, FUN_ALIAS)))
 | 
			
		|||
#elif defined(__GNUC__)
 | 
			
		||||
#define WEAK            __attribute__ ((weak))
 | 
			
		||||
#define ALIAS(f)        __attribute__ ((weak, alias(#f)))
 | 
			
		||||
#define USED            __attribute__ ((used))
 | 
			
		||||
 | 
			
		||||
#define WEAK_ALIAS_FUNC(FUN, FUN_ALIAS) \
 | 
			
		||||
void FUN(void) __attribute__ ((weak, alias(#FUN_ALIAS)));
 | 
			
		||||
| 
						 | 
				
			
			@ -77,7 +80,7 @@ void Default_Handler(void);
 | 
			
		|||
void Reset_Handler(void);
 | 
			
		||||
void Reset_Handler_1(void);
 | 
			
		||||
void Reset_Handler_2(void);
 | 
			
		||||
void Reset_Handler_Cascade(void *sp, void *pc);
 | 
			
		||||
USED void Reset_Handler_Cascade(void *sp, void *pc);
 | 
			
		||||
 | 
			
		||||
/* Cortex-M4 core handlers */
 | 
			
		||||
WEAK_ALIAS_FUNC(NMI_Handler, Default_Handler)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue