armv7: mark EABI compatibility symbols as used

These symbols are not used anywhere in our C code, so
when using GCC's link time optimization feature they
will be dropped even though they're needed by libgcc.
Hence we need to mark them as used so GCC does not stumble
and fall over its own guts.

BUG=none
BRANCH=none
TEST=boot tested on pit.

Change-Id: Ib2e9ea2610b57ab8244d5b699dd56025a4f08a01
Signed-off-by: Stefan Reinauer <reinauer@google.com>
Reviewed-on: https://chromium-review.googlesource.com/168773
diff --git a/src/arch/armv7/eabi_compat.c b/src/arch/armv7/eabi_compat.c
index c063c85..0c79cd5 100644
--- a/src/arch/armv7/eabi_compat.c
+++ b/src/arch/armv7/eabi_compat.c
@@ -12,7 +12,7 @@
 #include <console/console.h>
 
 /* FIXME(dhendrix): prototypes added for assembler */
-int raise (int signum);
+int raise (int signum) __attribute__((used));
 int raise (int signum)
 {
 	printk(BIOS_CRIT, "raise: Signal # %d caught\n", signum);
@@ -20,12 +20,12 @@
 }
 
 /* Dummy function to avoid linker complaints */
-void __aeabi_unwind_cpp_pr0(void);
+void __aeabi_unwind_cpp_pr0(void) __attribute__((used));
 void __aeabi_unwind_cpp_pr0(void)
 {
 };
 
-void __aeabi_unwind_cpp_pr1(void);
+void __aeabi_unwind_cpp_pr1(void) __attribute__((used));
 void __aeabi_unwind_cpp_pr1(void)
 {
 };