aboutsummaryrefslogtreecommitdiff
path: root/libtcc.c
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2014-04-14 03:33:50 +0200
committerMichael Matz <matz@suse.de>2014-04-14 03:33:50 +0200
commita9fda392a0d03d62f0bef0acd42ec82b29216ab3 (patch)
tree7cdbdd2db558d77235413fa16b8734fcd099bc59 /libtcc.c
parentfbda78aefeaaa97182658bb81b5a6f215cc24b17 (diff)
downloadtinycc-a9fda392a0d03d62f0bef0acd42ec82b29216ab3.tar.gz
tinycc-a9fda392a0d03d62f0bef0acd42ec82b29216ab3.tar.bz2
Parse assembler .hidden directive
This makes TCCs assembler understand the '.hidden symbol' directive (and emits a STV_HIDDEN ELF symbol then).
Diffstat (limited to 'libtcc.c')
-rw-r--r--libtcc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libtcc.c b/libtcc.c
index a24ef2d..05abaef 100644
--- a/libtcc.c
+++ b/libtcc.c
@@ -508,6 +508,9 @@ ST_FUNC void put_extern_sym2(Sym *sym, Section *section,
if (sym->type.t & VT_IMPORT)
other |= 4;
}
+#else
+ if (! (sym->type.t & VT_STATIC))
+ other = (sym->type.t & VT_VIS_MASK) >> VT_VIS_SHIFT;
#endif
if (tcc_state->leading_underscore && can_add_underscore) {
buf1[0] = '_';