* target-def.h (TARGET_CXX_EXPORT_CLASS_DATA): Remove. (TARGET_CXX_DETERMINE_CLASS_VISIBILITY): New macro. (TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT): Likewise. (TARGET_CXX): Adjust accordingly. * target.h (struct gcc_target): Remove epxort_class_data. Add determine_class_data_visibility and class_data_always_comdat. * doc/tm.texi (TARGET_CXX_EXPORT_CLASS_DATA): Remove. (TARGET_CXX_DETERMINE_CLASS_DATA_VISIBILITY): Document. (TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT): Likewise. * config/arm/arm.c (arm_cxx_export_class_data): Remove. (arm_cxx_determine_class_data_visibility): New. (arm_cxx_class_data_always_comdat): Likewise. (TARGET_CXX_EXPORT_CLASS_DATA): Remove. (TARGET_CXX_DETERMINE_CLASS_DATA_VISIBILITY): Define. (TARGET_CXX_CLASS_DATA_ALWAYS_COMDAT): Likewise. * config/arm/arm.h (TARGET_ARM_DYNAMIC_VAGUE_LINKAGE_P): Define. * config/arm/symbian.h (TARGET_ARM_DYNAMIC_VAGUE_LINKAGE_P): Define. * decl2.c (determine_visibility): Don't use export_class_data. (import_export_decl): Honor TARGET_CXX_CLASS_DATA_ALWAYS_WEAK and TARGET_CXX_DETERMINE_CLASS_DATA_VISIBILITY. * testsuite/g++.dg/ext/visibility/arm2.C: New test. * testsuite/g++.dg/ext/visibility/arm3.C: Likewise. * testsuite/g++.dg/ext/visibility/symbian2.C: Likewise. From-SVN: r98010
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
ChangeLog | Loading commit data... | |
ChangeLog.1 | Loading commit data... | |
ChangeLog.2 | Loading commit data... | |
ChangeLog.3 | Loading commit data... | |
ChangeLog.egcs | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
Make-lang.in | Loading commit data... | |
NEWS | Loading commit data... | |
call.c | Loading commit data... | |
cfns.gperf | Loading commit data... | |
cfns.h | Loading commit data... | |
class.c | Loading commit data... | |
config-lang.in | Loading commit data... | |
cp-gimplify.c | Loading commit data... | |
cp-lang.c | Loading commit data... | |
cp-objcp-common.c | Loading commit data... | |
cp-objcp-common.h | Loading commit data... | |
cp-tree.def | Loading commit data... | |
cp-tree.h | Loading commit data... | |
cvt.c | Loading commit data... | |
cxx-pretty-print.c | Loading commit data... | |
cxx-pretty-print.h | Loading commit data... | |
decl.c | Loading commit data... | |
decl.h | Loading commit data... | |
decl2.c | Loading commit data... | |
dump.c | Loading commit data... | |
error.c | Loading commit data... | |
except.c | Loading commit data... | |
expr.c | Loading commit data... | |
friend.c | Loading commit data... | |
g++spec.c | Loading commit data... | |
init.c | Loading commit data... | |
lang-specs.h | Loading commit data... | |
lex.c | Loading commit data... | |
mangle.c | Loading commit data... | |
method.c | Loading commit data... | |
name-lookup.c | Loading commit data... | |
name-lookup.h | Loading commit data... | |
operators.def | Loading commit data... | |
optimize.c | Loading commit data... | |
parser.c | Loading commit data... | |
pt.c | Loading commit data... | |
ptree.c | Loading commit data... | |
repo.c | Loading commit data... | |
rtti.c | Loading commit data... | |
search.c | Loading commit data... | |
semantics.c | Loading commit data... | |
tree.c | Loading commit data... | |
typeck.c | Loading commit data... | |
typeck2.c | Loading commit data... |