summaryrefslogtreecommitdiffstats
path: root/backends/alpha_symbol.c
diff options
context:
space:
mode:
Diffstat (limited to 'backends/alpha_symbol.c')
-rw-r--r--backends/alpha_symbol.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/backends/alpha_symbol.c b/backends/alpha_symbol.c
index 4bd8793a..5d25d3e4 100644
--- a/backends/alpha_symbol.c
+++ b/backends/alpha_symbol.c
@@ -141,3 +141,13 @@ alpha_check_special_symbol (Elf *elf __attribute__ ((unused)),
return false;
}
+
+/* Check whether only valid bits are set on the st_other symbol flag.
+ Standard ST_VISIBILITY have already been masked off. */
+bool
+alpha_check_st_other_bits (unsigned char st_other)
+{
+ return ((((st_other & STO_ALPHA_STD_GPLOAD) == STO_ALPHA_NOPV)
+ || ((st_other & STO_ALPHA_STD_GPLOAD) == STO_ALPHA_STD_GPLOAD))
+ && (st_other &~ STO_ALPHA_STD_GPLOAD) == 0);
+}