···25 * Start the thread running and terminate it if it returns
26 *---------------------------------------------------------------------------
27 */
28-void start_thread(void); /* Provide C access to ASM label */
29static void USED_ATTR __start_thread(void)
30{
31 /* a0=macsr, a1=context */
···25 * Start the thread running and terminate it if it returns
26 *---------------------------------------------------------------------------
27 */
28+void start_thread(void) USED_ATTR; /* Provide C access to ASM label */
29static void USED_ATTR __start_thread(void)
30{
31 /* a0=macsr, a1=context */
+1-1
firmware/asm/mips/thread-mips32.c
···26 *---------------------------------------------------------------------------
27 */
2829-void start_thread(void); /* Provide C access to ASM label */
30static void USED_ATTR _start_thread(void)
31{
32 /* t1 = context */
···26 *---------------------------------------------------------------------------
27 */
2829+void start_thread(void) USED_ATTR; /* Provide C access to ASM label */
30static void USED_ATTR _start_thread(void)
31{
32 /* t1 = context */
+1-1
firmware/firmware.make
···4950ifdef USE_LTO
51$(BUILDDIR)/firmware/asm/%.o: CFLAGS += -fno-lto
52-$(BUILDDIR)/firmware/kernel/%.o: CFLAGS += -fno-lto
53endif
5455# GNU make (at least) has a bug/feature that exported variable are not available
···4950ifdef USE_LTO
51$(BUILDDIR)/firmware/asm/%.o: CFLAGS += -fno-lto
52+$(BUILDDIR)/firmware/kernel/thread.o: CFLAGS += -fno-lto
53endif
5455# GNU make (at least) has a bug/feature that exported variable are not available
+2-2
firmware/panic.c
···47#define LINECHARS (LCD_WIDTH/SYSFONT_WIDTH) - 2
4849#if defined(CPU_ARM) && defined(HAVE_RB_BACKTRACE)
50-void panicf_f( const char *fmt, ...);
5152/* we wrap panicf() here with naked function to catch SP value */
53void __attribute__((naked)) panicf( const char *fmt, ...)
···60}
6162/*
63- * "Dude. This is pretty fucked-up, right here."
64 */
65void panicf_f( const char *fmt, ...)
66{
···47#define LINECHARS (LCD_WIDTH/SYSFONT_WIDTH) - 2
4849#if defined(CPU_ARM) && defined(HAVE_RB_BACKTRACE)
50+void panicf_f( const char *fmt, ...) USED_ATTR;
5152/* we wrap panicf() here with naked function to catch SP value */
53void __attribute__((naked)) panicf( const char *fmt, ...)
···60}
6162/*
63+ * "Dude. This is pretty fucked-up, right here."
64 */
65void panicf_f( const char *fmt, ...)
66{