On Mon, 25 Oct 2021 00:30:16 +0200 Bernhard Reutner-Fischer <rep.dot....@gmail.com> wrote:
> Hi! > > Quickly skimming through the frontend headers. I'm also attaching the other view for the fortran FE after the header cleanup: python3 $topsrc/contrib/unused_functions.py gcc/fortran/ \ grep -v "gt_" for a guesstimate list of Symbol 'foo' declared extern but never referenced externally Down to about 50 for f951 as we want to keep the debug ones of course. For other language frontends see the head of the script; Back then there was no D nor modula2, and a go sample is missing, too. Should be rather straight forward if anyone is curious. You can just abbreviate the list of objects that are used to link your frontend. Archives are supposedly handled fine, at least last time i tried. HTH,
gcc/fortran/match.o: Symbol 'type_param_spec_list' declared extern but never referenced externally gcc/fortran/openmp.o: Symbol 'gfc_free_expr_list(gfc_expr_list*)' declared extern but never referenced externally gcc/fortran/openmp.o: Symbol 'gfc_free_omp_declare_simd(gfc_omp_declare_simd*)' declared extern but never referenced externally gcc/fortran/openmp.o: Symbol 'gfc_match_omp_context_selector(gfc_omp_set_selector*)' declared extern but never referenced externally gcc/fortran/openmp.o: Symbol 'gfc_match_omp_context_selector_specification(gfc_omp_declare_variant*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_class_vtab_hash_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_class_vtab_extends_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_vptr_extends_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_class_vtab_def_init_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_vptr_def_init_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_class_vtab_copy_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_vptr_copy_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_vptr_final_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-expr.o: Symbol 'gfc_class_vtab_deallocate_get(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-decl.o: Symbol 'module_decl_hasher::hash(tree_node*)' declared extern but never referenced externally gcc/fortran/trans-decl.o: Symbol 'gfor_fndecl_set_args' declared extern but never referenced externally gcc/fortran/trans-decl.o: Symbol 'gfor_fndecl_set_convert' declared extern but never referenced externally gcc/fortran/trans-decl.o: Symbol 'gfor_fndecl_set_record_marker' declared extern but never referenced externally gcc/fortran/trans-decl.o: Symbol 'gfor_fndecl_set_max_subrecord_length' declared extern but never referenced externally gcc/fortran/simplify.o: Symbol 'gfc_simplify_get_team(gfc_expr*)' declared extern but never referenced externally gcc/fortran/simplify.o: Symbol 'simplify_ieee_selected_real_kind(gfc_expr*)' declared extern but never referenced externally gcc/fortran/simplify.o: Symbol 'simplify_ieee_support(gfc_expr*)' declared extern but never referenced externally gcc/fortran/decl.o: Symbol 'gfc_match_null(gfc_expr**)' declared extern but never referenced externally gcc/fortran/decl.o: Symbol 'gfc_insert_kind_parameter_exprs(gfc_expr*)' declared extern but never referenced externally gcc/fortran/decl.o: Symbol 'check_bind_name_identifier(char**)' declared extern but never referenced externally gcc/fortran/decl.o: Symbol 'gfc_mod_pointee_as(gfc_array_spec*)' declared extern but never referenced externally gcc/fortran/module.o: Symbol 'mio_symbol_ref(gfc_symbol**)' declared extern but never referenced externally gcc/fortran/module.o: Symbol 'mio_interface_rest(gfc_interface**)' declared extern but never referenced externally gcc/fortran/trans-intrinsic.o: Symbol 'specific_intrinsic_symbol(gfc_expr*)' declared extern but never referenced externally gcc/fortran/resolve.o: Symbol 'gfc_elemental(gfc_symbol*)' declared extern but never referenced externally gcc/fortran/trans-openmp.o: Symbol 'gfc_trans_oacc_declare(gfc_code*)' declared extern but never referenced externally gcc/fortran/primary.o: Symbol 'matching_actual_arglist' declared extern but never referenced externally gcc/fortran/symbol.o: Symbol 'gfc_drop_last_undo_checkpoint()' declared extern but never referenced externally gcc/fortran/symbol.o: Symbol 'gfc_restore_last_undo_checkpoint()' declared extern but never referenced externally gcc/fortran/symbol.o: Symbol 'gfc_get_ultimate_derived_super_type(gfc_symbol*)' declared extern but never referenced externally gcc/fortran/gfortranspec.o: Symbol 'lang_specific_pre_link()' declared extern but never referenced externally gcc/fortran/gfortranspec.o: Symbol 'lang_specific_extra_outfiles' declared extern but never referenced externally gcc/fortran/class.o: Symbol 'gfc_intrinsic_hash_value(gfc_typespec*)' declared extern but never referenced externally gcc/fortran/trans-array.o: Symbol 'gfc_conv_descriptor_attribute(tree_node*)' declared extern but never referenced externally gcc/fortran/cpp.o: Symbol 'gfc_cpp_option' declared extern but never referenced externally gcc/fortran/error.o: Symbol 'notify_std_msg(int)' declared extern but never referenced externally gcc/fortran/frontend-passes.o: Symbol 'n_vars' declared extern but never referenced externally gcc/fortran/frontend-passes.o: Symbol 'stack_top' declared extern but never referenced externally gcc/fortran/frontend-passes.o: Symbol 'evec' declared extern but never referenced externally gcc/fortran/interface.o: Symbol 'maybe_dummy_array_arg(gfc_expr*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(symbol_attribute*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_formal_arglist*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(symbol_attribute)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_expr*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_typespec*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_typespec)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_ref*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'gfc_debug_expr(gfc_expr*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'gfc_debug_code(gfc_code*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_symbol*)' declared extern but never referenced externally gcc/fortran/dump-parse-tree.o: Symbol 'debug(gfc_array_ref*)' declared extern but never referenced externally