#include "bfd.h"#include "sysdep.h"#include "bfdlink.h"#include "libbfd.h"#include "objalloc.h"#include "aout/stab_gnu.h"#include "coff/internal.h"#include "coff/sym.h"#include "coff/symconst.h"#include "coff/ecoff.h"#include "libcoff.h"#include "libecoff.h"

Go to the source code of this file.
Referenced by bfd_ecoff_debug_size(), and process_command().
| #define ALLOC_SIZE (4064) |
Value:
sec = bfd_get_section_by_name (input_bfd, name); \ if (sec != NULL) \ section_adjust[indx] = (sec->output_section->vma \ + sec->output_offset \ - sec->vma);
Referenced by _bfd_generic_link_add_one_symbol(), a29k_set_memflags_1(), add_stores(), addr_generation_dependency_p(), adjust_insn_length(), alpha_adjust_cost(), alpha_set_memflags_1(), annotate_constant_pool_refs(), apply_args_size(), apply_result_size(), arc_final_prescan_insn(), arm_cannot_copy_insn_p(), arm_const_double_inline_cost(), arm_debugger_arg_offset(), arm_final_prescan_insn(), arm_gen_constant(), arm_memory_load_p(), arm_rtx_costs(), arm_rtx_costs_1(), arm_size_rtx_costs(), arm_split_constant(), asm_noperands(), avr_reorg(), bfd_ecoff_debug_accumulate(), bfin_rtx_costs(), block_move_sequence(), broken_move(), bypass_conditional_jumps(), can_combine_p(), can_hoist_insn_p(), canonicalize_condition(), check_defs(), check_return_regs(), cirrus_reorg(), classic_gcse(), classify_insn(), coalesce_regs_in_copies(), combinable_i3pat(), combine_instructions(), combine_simplify_rtx(), complete_mode(), compress_float_constant(), compute_hash_table(), compute_kill_rd(), compute_ld_motion_mems(), compute_store_table(), computed_jump_p(), conditionalize_block(), condjump_in_parallel_p(), condjump_p(), const_costs(), construct_dispose_instruction(), construct_prepare_instruction(), construct_restore_jr(), construct_save_jarl(), convert_set_attr(), convert_set_attr_alternative(), convex_adjust_cost(), copy_rtx_and_substitute(), count_occurrences(), count_one_set(), count_reg_usage(), count_tst_insns(), cprop_insn(), create_new_invariant(), cris_movem_load_rest_p(), cris_notice_update_cc(), cris_store_multiple_op_p(), cse_around_loop(), cse_end_of_basic_block(), cse_insn(), cse_set_around_loop(), cselib_record_sets(), d30v_emit_comparison(), dead_or_set_regno_p(), dead_register_here(), decode_asm_operands(), def_reaches_here_p(), default_rtx_costs(), delete_dead_insn(), delete_prior_computation(), df_def_record_1(), df_defs_record(), df_uses_record(), diagnostic_for_asm(), discover_flags_reg(), distribute_and_simplify_rtx(), ecoff_write_symhdr(), eligible_for_epilogue_delay(), eligible_for_return_delay(), eligible_for_sibcall_delay(), eliminate_partially_redundant_loads(), eliminate_regs(), eliminate_regs_1(), eliminate_regs_in_insn(), elimination_effects(), emit_input_reload_insns(), emit_link_insn(), emit_no_conflict_block(), equiv_init_movable_p(), errata_emit_nops(), expand_compound_operation(), expand_mult(), expand_smod_pow2(), extract_insn(), file_and_line_for_asm(), final_prescan_insn(), final_scan_insn(), find_avail_set(), find_bypass_set(), find_equiv_reg(), find_loads(), find_moveable_store(), find_reloads(), find_set_regmode_weight(), find_single_use_1(), find_single_use_in_loop(), find_split_point(), fix_crossing_conditional_branches(), fixup_var_refs_1(), fixup_var_refs_insn(), flags_set_1(), force_to_mode(), fr30_expand_prologue(), frv_optimize_membar_local(), frv_registers_conflict_p_1(), gen_block_redirect(), gen_expand(), gen_reload_insi(), gen_reload_outsi(), gen_rtx_next(), gen_split(), general_induction_var(), get_condition(), global_conflicts(), gt_ggc_mx_rtx_def(), h8300_adjust_insn_length(), h8300_ldm_stm_parallel(), h8300_ldm_stm_regno(), h8300_rtx_costs(), hard_reg_set_here_p(), hash_scan_insn(), hoist_insn_after(), hppa_rtx_costs(), hypersparc_adjust_cost(), i960_bypass(), ia64_rtx_costs(), ia64_single_set(), ia64_spec_check_p(), ia64_speculate_insn(), identify_call_return_value(), if_test_bypass_p(), init_alias_analysis(), init_expmed(), init_optabs(), insert_set_in_table(), insn_dead_p(), insn_invalid_p(), insn_live_p(), insn_rtx_cost(), insn_stack_adjust_offset_pre_post(), instantiate_virtual_regs_1(), ip2k_reorg(), ip2k_rtx_costs(), iq2000_expand_prologue(), is_cond_candidate(), is_load_insn1(), is_predicable(), is_store_insn1(), iv_add_mult_cost(), ix86_agi_dependant(), ix86_agi_dependent(), ix86_attr_length_address_default(), ix86_check_movabs(), ix86_flags_dependant(), ix86_flags_dependent(), ix86_match_ccmode(), legitimize_pic_address(), libcall_dead_p(), lmw_operation(), load_mems(), load_multiple_operation(), location_for_asm(), loop_regs_scan(), loop_regs_update(), lshift_cheap_p(), m32c_compare_redundant(), m32c_rtx_costs(), m68hc11_check_z_replacement(), m68hc11_emit_logical(), m68hc11_notice_update_cc(), m68hc11_reassign_regs(), m68hc11_reload_operands(), m68hc11_reorg(), m68hc11_rtx_costs(), m68hc11_shift_cost(), m68hc11_z_replacement(), machine_dependent_reorg(), machopic_indirect_data_reference(), machopic_legitimize_pic_address(), make_compound_operation(), make_extraction(), make_insn_raw(), mark_effect(), mark_loop_jump(), mark_not_eliminable(), mark_oprs_set(), mark_phi_and_copy_regs(), mark_referenced_regs(), mark_referenced_resources(), mark_references(), mark_set_regs(), mark_set_resources(), mark_use(), mark_used_regs(), mark_used_regs_combine(), maybe_eliminate_biv_1(), mcore_expand_insv(), mcore_gen_compare_reg(), mcore_load_multiple_operation(), mcore_store_multiple_operation(), memref_referenced_p(), merge_outer_ops(), mfcr_operation(), mips16_optimize_gp(), mips_expand_prologue(), mips_output_function_prologue(), mips_rtx_costs(), mn10300_rtx_costs(), mostly_false_jump(), mova_p(), move2add_note_store(), move_deaths(), move_movables(), mt_get_attr_type(), mt_reorg_loops(), mt_set_memflags_1(), mtcrf_operation(), multi_register_push(), multiple_sets(), next_cc_user_code(), next_cc_user_is_unsigned(), no_conflict_move_test(), noce_get_alt_condition(), noce_try_sign_mask(), noncall_uses_reg(), nonlocal_referenced_p_1(), nonlocal_set_p_1(), noop_move_p(), note_stores(), note_uses(), notice_update_cc(), ns32k_notice_update_cc(), output_fpop(), output_fpops(), output_restore(), output_sibcall(), pa_adjust_cost(), pa_adjust_insn_length(), pattern_is_ok_for_dispose(), pattern_is_ok_for_epilogue(), pattern_is_ok_for_prepare(), pattern_is_ok_for_prologue(), pc_set(), peephole(), peephole2_1(), peephole2_2(), peephole2_insns(), pj_machine_dependent_reorg(), pop_multiple_operation(), pre_insert_copy_insn(), precompute_register_parameters(), prepare_scc_operands(), print_pattern(), process_for_unwind_directive(), product_cheap_p(), propagate_one_insn(), purge_addressof_1(), purge_hard_subreg_sets(), push_multiple_operation(), ra_print_rtx(), recog(), recog_10(), recog_11(), recog_22(), recog_23(), recog_24(), recog_25(), recog_26(), recog_27(), recog_28(), recog_29(), recog_30(), recog_31(), recog_32(), recog_33(), recog_34(), recog_35(), recog_36(), recog_37(), recog_38(), recog_5(), recog_6(), recog_7(), recog_8(), recog_9(), recog_for_combine(), record_dead_and_set_regs_1(), redirect_exp_1(), refers_to_regno_for_reload_p(), refers_to_regno_p(), reg_bitfield_target_p(), reg_clobbered_p(), reg_referenced_p(), reg_scan_mark_refs(), reg_set_last(), reg_used_in_mem_p(), regno_clobbered_p(), regs_used(), reload(), reload_combine_note_store(), reload_combine_note_use(), reload_cse_move2add(), reload_cse_simplify(), reload_cse_simplify_operands(), reload_cse_simplify_set(), remove_useless_addtr_insns(), rename_insn_1(), replace_constant_pool_ref(), replace_regs(), restore_world_operation(), returnjump_p_1(), reverse_comparison(), reversed_comparison_code_parts(), rs6000_adjust_cost(), rs6000_emit_vector_compare(), rs6000_emit_vector_select(), rs6000_frame_related(), rs6000_rtx_costs(), rtx_equiv_p(), rtx_needs_barrier(), s390_adjust_cost(), s390_agen_dep_p(), s390_chunkify_cancel(), s390_chunkify_pool(), s390_chunkify_start(), s390_emit_prologue(), s390_expand_atomic(), s390_mainpool_start(), s390_match_ccmode(), s390_match_ccmode_set(), s390_optimize_prologue(), s390_split_branches(), save_gprs(), save_world_operation(), scan_loop(), scan_rtx(), sched_analyze_1(), sched_analyze_2(), sched_analyze_insn(), sched_analyze_reg(), score_rtx_costs(), see_merge_one_def_extension(), see_want_to_be_merged_with_extension(), seq_cost(), set_dest_equiv_p(), set_label_offsets(), sets_function_arg_p(), sfunc_uses_reg(), sh_adjust_cost(), sh_cannot_copy_insn_p(), sh_reorg(), sh_rtx_costs(), simplejump_p(), simplify_binary_operation(), simplify_binary_operation_1(), simplify_comparison(), simplify_if_then_else(), simplify_set(), simplify_shift_const(), simplify_shift_const_1(), simplify_subreg(), single_set_2(), single_set_for_csa(), single_set_pattern(), sparc_check_64(), sparc_nonflat_function_epilogue(), spe_func_has_64bit_regs_p(), spe_synthesize_frame_save(), split_2(), split_3(), split_4(), split_branches(), split_insns(), stmw_operation(), store_data_bypass_p(), store_killed_in_insn(), store_multiple_operation(), subst(), subst_constants(), substitute_ep_register(), summarize_insn(), supersparc_adjust_cost(), thumb_rtx_costs(), tls_call_delay(), try_combine(), ultra_find_type(), ultra_fpmode_conflict_exists(), ultrasparc_adjust_cost(), unique_src_operand(), unsigned_jump_follows_p(), validate_pattern(), validate_replace_rtx_1(), validate_simplify_insn(), vax_notice_update_cc(), verify_rtx_sharing(), vr4130_avoid_branch_rt_conflict(), vrsave_operation(), walk_insn_part(), wipe_dead_reg(), and xtensa_rtx_costs().
| #define string_hash_lookup | ( | t, | |||
| string, | |||||
| create, | |||||
| copy | ) |
Value:
((struct string_hash_entry *) \ bfd_hash_lookup (&(t)->table, (string), (create), (copy)))
Definition at line 340 of file ecofflink.c.
Referenced by bfd_ecoff_debug_accumulate(), and ecoff_add_string().
Value:
BFD_ASSERT (symhdr->offset == 0 \ || (bfd_vma) bfd_tell (abfd) == symhdr->offset); \ if (bfd_bwrite ((PTR) debug->ptr, (bfd_size_type) size * symhdr->count, abfd)\ != size * symhdr->count) \ return FALSE;
Referenced by __OPN(), OPT_STAB::Add_nested_call_mu_chi(), ALIAS_RULE::Aliased_with_Call(), bfd_ecoff_write_debug(), CG_DEP_Call_Aliases(), Exp_Node_Varies_In_Loop(), OPT_STAB::Generate_asm_mu_chi(), OPT_STAB::Generate_call_mu_chi_by_ref(), OPT_STAB::Generate_call_mu_chi_by_value(), Maybe_Assigned(), and WRITE().
Definition at line 2499 of file ecofflink.c.
References ecoff_collect_shuffle(), and accumulate::pdr.
Referenced by mips_elf_create_procedure_table().
Definition at line 2523 of file ecofflink.c.
References BFD_ASSERT, len, memcpy, string_hash_entry::next, NULL, PTR, string_hash_entry::root, accumulate::ss, accumulate::ss_hash, bfd_hash_entry::string, strlen(), TRUE, and string_hash_entry::val.
Referenced by mips_elf_create_procedure_table().
Definition at line 2511 of file ecofflink.c.
References ecoff_collect_shuffle(), and accumulate::sym.
Referenced by mips_elf_create_procedure_table().
| bfd_boolean _bfd_ecoff_locate_line | ( | bfd * | abfd, | |
| asection * | section, | |||
| bfd_vma | offset, | |||
| struct ecoff_debug_info * const | debug_info, | |||
| const struct ecoff_debug_swap * const | debug_swap, | |||
| struct ecoff_find_line * | line_info, | |||
| const char ** | filename_ptr, | |||
| const char ** | functionname_ptr, | |||
| unsigned int * | retline_ptr | |||
| ) |
Definition at line 2421 of file ecofflink.c.
References ecoff_find_line::cache, FALSE, ecoff_find_line::filename, ecoff_find_line::functionname, ecoff_find_line::line_num, lookup_line(), NULL, ecoff_find_line::sect, ecoff_find_line::start, ecoff_find_line::stop, TRUE, and bfd_section::vma.
Referenced by _bfd_ecoff_find_nearest_line(), _bfd_mips_elf_find_nearest_line(), and elf64_alpha_find_nearest_line().
Definition at line 183 of file ecofflink.c.
References abort, RNDXR::index, memcmp, RNDXR::rfd, RNDX_BITS0_RFD_SH_LEFT_BIG, RNDX_BITS0_RFD_SH_LEFT_LITTLE, RNDX_BITS1_INDEX_BIG, RNDX_BITS1_INDEX_LITTLE, RNDX_BITS1_INDEX_SH_LEFT_BIG, RNDX_BITS1_INDEX_SH_LITTLE, RNDX_BITS1_RFD_BIG, RNDX_BITS1_RFD_LITTLE, RNDX_BITS1_RFD_SH_BIG, RNDX_BITS1_RFD_SH_LEFT_LITTLE, RNDX_BITS2_INDEX_SH_LEFT_BIG, RNDX_BITS2_INDEX_SH_LEFT_LITTLE, RNDX_BITS3_INDEX_SH_LEFT_BIG, and RNDX_BITS3_INDEX_SH_LEFT_LITTLE.
Referenced by ecoff_type_to_string().
Definition at line 222 of file ecofflink.c.
References abort, RNDXR::index, intern, memcmp, rndx_ext::r_bits, RNDXR::rfd, RNDX_BITS0_RFD_SH_LEFT_BIG, RNDX_BITS0_RFD_SH_LEFT_LITTLE, RNDX_BITS1_INDEX_BIG, RNDX_BITS1_INDEX_LITTLE, RNDX_BITS1_INDEX_SH_LEFT_BIG, RNDX_BITS1_INDEX_SH_LITTLE, RNDX_BITS1_RFD_BIG, RNDX_BITS1_RFD_LITTLE, RNDX_BITS1_RFD_SH_BIG, RNDX_BITS1_RFD_SH_LEFT_LITTLE, RNDX_BITS2_INDEX_SH_LEFT_BIG, RNDX_BITS2_INDEX_SH_LEFT_LITTLE, RNDX_BITS3_INDEX_SH_LEFT_BIG, and RNDX_BITS3_INDEX_SH_LEFT_LITTLE.
Definition at line 70 of file ecofflink.c.
References abort, TIR::bt, TIR::continued, TIR::fBitfield, memcmp, TIR_BITS1_BT_BIG, TIR_BITS1_BT_LITTLE, TIR_BITS1_BT_SH_BIG, TIR_BITS1_BT_SH_LITTLE, TIR_BITS1_CONTINUED_BIG, TIR_BITS1_CONTINUED_LITTLE, TIR_BITS1_FBITFIELD_BIG, TIR_BITS1_FBITFIELD_LITTLE, TIR_BITS_TQ0_BIG, TIR_BITS_TQ0_LITTLE, TIR_BITS_TQ0_SH_BIG, TIR_BITS_TQ0_SH_LITTLE, TIR_BITS_TQ1_BIG, TIR_BITS_TQ1_LITTLE, TIR_BITS_TQ1_SH_BIG, TIR_BITS_TQ1_SH_LITTLE, TIR_BITS_TQ2_BIG, TIR_BITS_TQ2_LITTLE, TIR_BITS_TQ2_SH_BIG, TIR_BITS_TQ2_SH_LITTLE, TIR_BITS_TQ3_BIG, TIR_BITS_TQ3_LITTLE, TIR_BITS_TQ3_SH_BIG, TIR_BITS_TQ3_SH_LITTLE, TIR_BITS_TQ4_BIG, TIR_BITS_TQ4_LITTLE, TIR_BITS_TQ4_SH_BIG, TIR_BITS_TQ4_SH_LITTLE, TIR_BITS_TQ5_BIG, TIR_BITS_TQ5_LITTLE, TIR_BITS_TQ5_SH_BIG, TIR_BITS_TQ5_SH_LITTLE, TIR::tq0, TIR::tq1, TIR::tq2, TIR::tq3, TIR::tq4, and TIR::tq5.
Referenced by ecoff_type_to_string().
Definition at line 127 of file ecofflink.c.
References abort, TIR::bt, TIR::continued, TIR::fBitfield, intern, memcmp, tir_ext::t_bits1, tir_ext::t_tq01, tir_ext::t_tq23, tir_ext::t_tq45, TIR_BITS1_BT_BIG, TIR_BITS1_BT_LITTLE, TIR_BITS1_BT_SH_BIG, TIR_BITS1_BT_SH_LITTLE, TIR_BITS1_CONTINUED_BIG, TIR_BITS1_CONTINUED_LITTLE, TIR_BITS1_FBITFIELD_BIG, TIR_BITS1_FBITFIELD_LITTLE, TIR_BITS_TQ0_BIG, TIR_BITS_TQ0_LITTLE, TIR_BITS_TQ0_SH_BIG, TIR_BITS_TQ0_SH_LITTLE, TIR_BITS_TQ1_BIG, TIR_BITS_TQ1_LITTLE, TIR_BITS_TQ1_SH_BIG, TIR_BITS_TQ1_SH_LITTLE, TIR_BITS_TQ2_BIG, TIR_BITS_TQ2_LITTLE, TIR_BITS_TQ2_SH_BIG, TIR_BITS_TQ2_SH_LITTLE, TIR_BITS_TQ3_BIG, TIR_BITS_TQ3_LITTLE, TIR_BITS_TQ3_SH_BIG, TIR_BITS_TQ3_SH_LITTLE, TIR_BITS_TQ4_BIG, TIR_BITS_TQ4_LITTLE, TIR_BITS_TQ4_SH_BIG, TIR_BITS_TQ4_SH_LITTLE, TIR_BITS_TQ5_BIG, TIR_BITS_TQ5_LITTLE, TIR_BITS_TQ5_SH_BIG, TIR_BITS_TQ5_SH_LITTLE, TIR::tq0, TIR::tq1, TIR::tq2, TIR::tq3, TIR::tq4, and TIR::tq5.
| static bfd_boolean add_file_shuffle | ( | struct accumulate * | ainfo, | |
| struct shuffle ** | head, | |||
| struct shuffle ** | tail, | |||
| bfd * | input_bfd, | |||
| file_ptr | offset, | |||
| unsigned long | size | |||
| ) | [static] |
Definition at line 413 of file ecofflink.c.
References bfd_error_no_memory, bfd_set_error(), FALSE, shuffle::file, shuffle::filep, n, shuffle::next, NULL, objalloc_alloc, shuffle::size, TRUE, and shuffle::u.
Referenced by bfd_ecoff_debug_accumulate().
| static bfd_boolean add_memory_shuffle | ( | struct accumulate * | ainfo, | |
| struct shuffle ** | head, | |||
| struct shuffle ** | tail, | |||
| bfd_byte * | data, | |||
| unsigned long | size | |||
| ) | [static] |
Definition at line 464 of file ecofflink.c.
References bfd_error_no_memory, bfd_set_error(), FALSE, shuffle::filep, shuffle::memory, n, shuffle::next, NULL, objalloc_alloc, PTR, shuffle::size, TRUE, and shuffle::u.
Referenced by bfd_ecoff_debug_accumulate(), bfd_ecoff_debug_accumulate_other(), and ecoff_add_string().
| bfd_boolean bfd_ecoff_debug_accumulate | ( | PTR | handle, | |
| bfd * | output_bfd, | |||
| struct ecoff_debug_info * | output_debug, | |||
| const struct ecoff_debug_swap * | output_swap, | |||
| bfd * | input_bfd, | |||
| struct ecoff_debug_info * | input_debug, | |||
| const struct ecoff_debug_swap * | input_swap, | |||
| struct bfd_link_info * | info | |||
| ) |
Definition at line 583 of file ecofflink.c.
References add_file_shuffle(), add_memory_shuffle(), fdr::adr, accumulate::aux, accumulate::aux_end, bfd_alloc(), BFD_ASSERT, bfd_error_no_memory, bfd_malloc(), bfd_set_error(), fdr::caux, HDRR::cbAuxOffset, HDRR::cbLine, fdr::cbLine, HDRR::cbLineOffset, fdr::cbLineOffset, HDRR::cbOptOffset, HDRR::cbPdOffset, fdr::cbSs, HDRR::cbSsOffset, fdr::cline, fdr::copt, fdr::cpd, fdr::crfd, HDRR::crfd, fdr::csym, ECOFF_IS_STAB, end, ecoff_debug_info::external_fdr, ecoff_debug_swap::external_fdr_size, ecoff_debug_info::external_opt, ecoff_debug_swap::external_opt_size, ecoff_debug_info::external_pdr, ecoff_debug_swap::external_pdr_size, ecoff_debug_info::external_rfd, ecoff_debug_swap::external_rfd_size, ecoff_debug_info::external_sym, ecoff_debug_swap::external_sym_size, FALSE, ecoff_debug_info::fdr, accumulate::fdr, accumulate::fdr_end, accumulate::fdr_hash, fdr::fMerge, for(), free(), bfd_target::header_byteorder, i, fdr::iauxBase, HDRR::iauxMax, ecoff_debug_info::ifdmap, HDRR::ifdMax, fdr::ilineBase, HDRR::ilineMax, in, fdr::ioptBase, HDRR::ioptMax, fdr::ipdFirst, HDRR::ipdMax, SYMR::iss, fdr::issBase, HDRR::issMax, fdr::isymBase, HDRR::isymMax, accumulate::line, accumulate::line_end, lookup(), accumulate::memory, memset, string_hash_entry::next, NULL, objalloc_alloc, opt, accumulate::opt, accumulate::opt_end, out, PARAMS, accumulate::pdr, accumulate::pdr_end, pos(), PTR, bfd_link_info::relocatable, accumulate::rfd, accumulate::rfd_end, fdr::rfdBase, fdr::rss, SYMR::sc, scBss, scCommon, scData, scFini, scInit, scMax, scRConst, scRData, scSBss, scSCommon, scSData, scText, sec, SET, size, sprintf(), accumulate::ss, ecoff_debug_info::ss, accumulate::ss_end, accumulate::ss_hash, accumulate::ss_hash_end, SYMR::st, stGlobal, stLabel, stNil, stProc, accumulate::str_hash, string_hash_lookup, strlen(), stStatic, stStaticProc, ecoff_debug_swap::swap_fdr_in, ecoff_debug_swap::swap_fdr_out, ecoff_debug_swap::swap_opt_in, ecoff_debug_swap::swap_opt_out, ecoff_debug_swap::swap_pdr_in, ecoff_debug_swap::swap_pdr_out, ecoff_debug_swap::swap_rfd_in, ecoff_debug_swap::swap_rfd_out, ecoff_debug_swap::swap_sym_in, ecoff_debug_swap::swap_sym_out, accumulate::sym, accumulate::sym_end, ecoff_debug_info::symbolic_header, sz(), TRUE, string_hash_entry::val, SYMR::value, void, and bfd::xvec.
| bfd_boolean bfd_ecoff_debug_accumulate_other | ( | PTR | handle, | |
| bfd * | output_bfd, | |||
| struct ecoff_debug_info * | output_debug, | |||
| const struct ecoff_debug_swap * | output_swap, | |||
| bfd * | input_bfd, | |||
| struct bfd_link_info * | info | |||
| ) |
Definition at line 1125 of file ecofflink.c.
References add_memory_shuffle(), bfd_alloc(), bfd_canonicalize_symtab, bfd_error_no_memory, bfd_get_section_by_name(), bfd_get_symtab_upper_bound, bfd_is_com_section, bfd_is_und_section, bfd_release(), bfd_set_error(), BSF_EXPORT, ecoff_add_string(), ecoff_debug_swap::external_fdr_size, ecoff_debug_swap::external_sym_size, FALSE, accumulate::fdr, accumulate::fdr_end, bfd::filename, HDRR::ifdMax, indexNil, HDRR::issMax, HDRR::isymMax, accumulate::memory, memset, NULL, objalloc_alloc, bfd_section::output_offset, bfd_section::output_section, PARAMS, PTR, scUndefined, sec, stNil, ecoff_debug_swap::swap_fdr_out, ecoff_debug_swap::swap_sym_out, accumulate::sym, accumulate::sym_end, ecoff_debug_info::symbolic_header, symbols, symcount, TRUE, bfd_section::vma, and void.
| bfd_boolean bfd_ecoff_debug_externals | ( | bfd * | abfd, | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap, | |||
| bfd_boolean | relocatable, | |||
| bfd_boolean * | get_extr, | |||
| void * | set_index | |||
| ) |
Definition at line 1249 of file ecofflink.c.
References ecoff_extr::asym, bfd_ecoff_debug_one_external(), bfd_get_outsymbols, bfd_get_symcount, bfd_is_com_section, bfd_is_und_section, c, FALSE, HDRR::iextMax, NULL, bfd_section::output_offset, bfd_section::output_section, SYMR::sc, scBss, scCommon, scSBss, scSCommon, scSUndefined, bfd_symbol::section, set_index, ecoff_debug_info::symbolic_header, TRUE, bfd_symbol::value, SYMR::value, and bfd_section::vma.
| void bfd_ecoff_debug_free | ( | PTR | handle, | |
| output_bfd | , | |||
| output_debug | , | |||
| output_swap | , | |||
| struct bfd_link_info * | info | |||
| ) |
Definition at line 555 of file ecofflink.c.
References bfd_hash_table_free(), accumulate::fdr_hash, free(), accumulate::memory, objalloc_free(), bfd_link_info::relocatable, accumulate::str_hash, and string_hash_table::table.
| PTR bfd_ecoff_debug_init | ( | output_bfd | , | |
| struct ecoff_debug_info * | output_debug, | |||
| output_swap | , | |||
| struct bfd_link_info * | info | |||
| ) |
Definition at line 496 of file ecofflink.c.
References accumulate::aux, accumulate::aux_end, bfd_error_no_memory, bfd_hash_table_init(), bfd_hash_table_init_n(), bfd_malloc(), bfd_set_error(), accumulate::fdr, accumulate::fdr_end, accumulate::fdr_hash, HDRR::issMax, accumulate::largest_file_shuffle, accumulate::line, accumulate::line_end, accumulate::memory, NULL, objalloc_create(), accumulate::opt, accumulate::opt_end, accumulate::pdr, accumulate::pdr_end, PTR, bfd_link_info::relocatable, accumulate::rfd, accumulate::rfd_end, accumulate::ss, accumulate::ss_end, accumulate::ss_hash, accumulate::ss_hash_end, accumulate::str_hash, string_hash_newfunc(), accumulate::sym, accumulate::sym_end, ecoff_debug_info::symbolic_header, and string_hash_table::table.
| bfd_boolean bfd_ecoff_debug_one_external | ( | bfd * | abfd, | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap, | |||
| const char * | name, | |||
| EXTR * | esym | |||
| ) |
Definition at line 1318 of file ecofflink.c.
References ecoff_extr::asym, ecoff_add_bytes(), ecoff_debug_info::external_ext, ecoff_debug_info::external_ext_end, ecoff_debug_swap::external_ext_size, FALSE, HDRR::iextMax, SYMR::iss, HDRR::issExtMax, PARAMS, PTR, ecoff_debug_info::ssext, ecoff_debug_info::ssext_end, strcpy, strlen(), ecoff_debug_swap::swap_ext_out, ecoff_debug_info::symbolic_header, TRUE, and void.
Referenced by _bfd_mips_elf_final_link(), bfd_ecoff_debug_externals(), ecoff_link_write_external(), elf64_alpha_final_link(), elf64_alpha_output_extsym(), and mips_elf_output_extsym().
| bfd_size_type bfd_ecoff_debug_size | ( | bfd * | abfd, | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap | |||
| ) |
Definition at line 1429 of file ecofflink.c.
References ADD, ecoff_align_debug(), ecoff_debug_swap::external_dnr_size, ecoff_debug_swap::external_ext_size, ecoff_debug_swap::external_fdr_size, ecoff_debug_swap::external_hdr_size, ecoff_debug_swap::external_opt_size, ecoff_debug_swap::external_pdr_size, ecoff_debug_swap::external_rfd_size, and ecoff_debug_swap::external_sym_size.
Referenced by _bfd_mips_elf_final_link(), and elf64_alpha_final_link().
| bfd_boolean bfd_ecoff_write_accumulated_debug | ( | PTR | handle, | |
| bfd * | abfd, | |||
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap, | |||
| struct bfd_link_info * | info, | |||
| file_ptr | where | |||
| ) |
Definition at line 1627 of file ecofflink.c.
References accumulate::aux, BFD_ASSERT, bfd_bwrite(), bfd_malloc(), bfd_tell(), bfd_zmalloc(), HDRR::cbExtOffset, ecoff_debug_swap::debug_align, ecoff_write_shuffle(), ecoff_write_symhdr(), ecoff_debug_info::external_ext, ecoff_debug_swap::external_ext_size, FALSE, accumulate::fdr, free(), i, HDRR::iextMax, HDRR::issExtMax, accumulate::largest_file_shuffle, len, accumulate::line, string_hash_entry::next, NULL, accumulate::opt, accumulate::pdr, PTR, bfd_link_info::relocatable, accumulate::rfd, string_hash_entry::root, s, accumulate::ss, accumulate::ss_hash, ecoff_debug_info::ssext, bfd_hash_entry::string, strlen(), accumulate::sym, ecoff_debug_info::symbolic_header, TRUE, and string_hash_entry::val.
| bfd_boolean bfd_ecoff_write_debug | ( | bfd * | abfd, | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap, | |||
| file_ptr | where | |||
| ) |
Definition at line 1531 of file ecofflink.c.
References ecoff_write_symhdr(), ecoff_debug_swap::external_dnr_size, ecoff_debug_swap::external_ext_size, ecoff_debug_swap::external_fdr_size, ecoff_debug_swap::external_opt_size, ecoff_debug_swap::external_pdr_size, ecoff_debug_swap::external_rfd_size, ecoff_debug_swap::external_sym_size, FALSE, ss, ecoff_debug_info::symbolic_header, TRUE, and WRITE.
Referenced by _bfd_ecoff_write_object_contents().
Definition at line 1758 of file ecofflink.c.
References ecoff_fdrtab_entry::base_addr.
Referenced by mk_fdrtab().
| static bfd_boolean ecoff_add_bytes | ( | char ** | buf, | |
| char ** | bufend, | |||
| size_t | need | |||
| ) | [static] |
Definition at line 262 of file ecofflink.c.
References ALLOC_SIZE, bfd_realloc(), FALSE, NULL, and TRUE.
Referenced by bfd_ecoff_debug_one_external().
| static long ecoff_add_string | ( | struct accumulate * | ainfo, | |
| struct bfd_link_info * | info, | |||
| struct ecoff_debug_info * | debug, | |||
| FDR * | fdr, | |||
| const char * | string | |||
| ) | [static] |
Definition at line 1076 of file ecofflink.c.
References add_memory_shuffle(), fdr::cbSs, HDRR::issMax, len, string_hash_entry::next, NULL, PTR, bfd_link_info::relocatable, ret, string_hash_lookup, strlen(), ecoff_debug_info::symbolic_header, TRUE, and string_hash_entry::val.
Referenced by bfd_ecoff_debug_accumulate_other().
| static void ecoff_align_debug | ( | abfd | , | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap | |||
| ) | [static] |
Definition at line 1368 of file ecofflink.c.
References HDRR::cbLine, HDRR::crfd, ecoff_debug_swap::debug_align, ecoff_debug_info::external_aux, ecoff_debug_info::external_rfd, ecoff_debug_swap::external_rfd_size, HDRR::iauxMax, HDRR::issExtMax, HDRR::issMax, ecoff_debug_info::line, memset, NULL, PTR, ecoff_debug_info::ss, ecoff_debug_info::ssext, and ecoff_debug_info::symbolic_header.
Referenced by bfd_ecoff_debug_size(), and ecoff_write_symhdr().
Definition at line 2471 of file ecofflink.c.
References bfd_bread(), bfd_seek(), FALSE, memcpy, NULL, SEEK_SET, and TRUE.
Referenced by _bfd_ecoff_get_accumulated_pdr(), and _bfd_ecoff_get_accumulated_sym().
| static bfd_boolean ecoff_write_shuffle | ( | bfd * | abfd, | |
| const struct ecoff_debug_swap * | swap, | |||
| struct shuffle * | shuffle, | |||
| PTR | space | |||
| ) | [static] |
Definition at line 1573 of file ecofflink.c.
References bfd_bread(), bfd_bwrite(), bfd_seek(), bfd_zmalloc(), ecoff_debug_swap::debug_align, FALSE, shuffle::file, shuffle::filep, free(), i, shuffle::memory, shuffle::next, NULL, PTR, s, SEEK_SET, shuffle::size, TRUE, and shuffle::u.
Referenced by bfd_ecoff_write_accumulated_debug().
| static bfd_boolean ecoff_write_symhdr | ( | bfd * | abfd, | |
| struct ecoff_debug_info * | debug, | |||
| const struct ecoff_debug_swap * | swap, | |||
| file_ptr | where | |||
| ) | [static] |
Definition at line 1464 of file ecofflink.c.
References bfd_bwrite(), bfd_malloc(), bfd_seek(), ecoff_align_debug(), ecoff_debug_swap::external_dnr_size, ecoff_debug_swap::external_ext_size, ecoff_debug_swap::external_fdr_size, ecoff_debug_swap::external_hdr_size, ecoff_debug_swap::external_opt_size, ecoff_debug_swap::external_pdr_size, ecoff_debug_swap::external_rfd_size, ecoff_debug_swap::external_sym_size, FALSE, free(), HDRR::magic, NULL, PTR, SEEK_SET, SET, ecoff_debug_swap::swap_hdr_out, ecoff_debug_swap::sym_magic, ecoff_debug_info::symbolic_header, and TRUE.
Referenced by bfd_ecoff_write_accumulated_debug(), and bfd_ecoff_write_debug().
| static long fdrtab_lookup | ( | struct ecoff_find_line * | line_info, | |
| bfd_vma | offset | |||
| ) | [static] |
Definition at line 1873 of file ecofflink.c.
References ecoff_fdrtab_entry::base_addr, high, len, low, and tab.
Referenced by lookup_line().
| static bfd_boolean lookup_line | ( | bfd * | abfd, | |
| struct ecoff_debug_info * const | debug_info, | |||
| const struct ecoff_debug_swap * const | debug_swap, | |||
| struct ecoff_find_line * | line_info | |||
| ) | [static] |
Definition at line 1923 of file ecofflink.c.
References pdr::adr, ecoff_extr::asym, bfd_malloc(), ecoff_find_line::cache, fdr::cbLine, pdr::cbLineOffset, fdr::cbLineOffset, colon, count, fdr::cpd, fdr::csym, current_file_name, ECOFF_IS_STAB, ECOFF_UNMARK_STAB, ecoff_debug_info::external_ext, ecoff_debug_swap::external_ext_size, ecoff_debug_info::external_pdr, ecoff_debug_swap::external_pdr_size, ecoff_debug_info::external_sym, ecoff_debug_swap::external_sym_size, FALSE, ecoff_fdrtab_entry::fdr, ecoff_find_line::fdrtab, fdrtab_lookup(), ecoff_find_line::filename, ecoff_find_line::find_buffer, free(), ecoff_find_line::functionname, i, ilineNil, SYMR::index, indexNil, fdr::ipdFirst, SYMR::iss, fdr::issBase, pdr::isym, fdr::isymBase, len, ecoff_debug_info::line, ecoff_find_line::line_num, line_ptr, lineno, pdr::lnLow, mk_fdrtab(), NULL, offset, pdr::prof, PTR, fdr::rss, sprintf(), ecoff_debug_info::ss, ecoff_debug_info::ssext, SYMR::st, STABS_SYMBOL, ecoff_find_line::start, stLabel, ecoff_find_line::stop, strchr, strcmp(), strcpy, strlen(), ecoff_debug_swap::swap_ext_in, ecoff_debug_swap::swap_pdr_in, ecoff_debug_swap::swap_sym_in, sym, tab, TRUE, and SYMR::value.
Referenced by _bfd_ecoff_locate_line(), _cpp_warn_if_unused_macro(), and print_location().
| static bfd_boolean mk_fdrtab | ( | bfd * | abfd, | |
| struct ecoff_debug_info * const | debug_info, | |||
| const struct ecoff_debug_swap * const | debug_swap, | |||
| struct ecoff_find_line * | line_info | |||
| ) | [static] |
Definition at line 1781 of file ecofflink.c.
References fdr::adr, ecoff_fdrtab_entry::base_addr, bfd_zalloc(), cmp_fdrtab_entry(), fdr::cpd, fdr::csym, ecoff_debug_info::external_sym, ecoff_debug_swap::external_sym_size, FALSE, ecoff_fdrtab_entry::fdr, ecoff_debug_info::fdr, ecoff_find_line::fdrtab, ecoff_find_line::fdrtab_len, HDRR::ifdMax, SYMR::iss, fdr::issBase, fdr::isymBase, len, NULL, PTR, qsort(), ecoff_debug_info::ss, STABS_SYMBOL, strcmp(), ecoff_debug_swap::swap_sym_in, sym, ecoff_debug_info::symbolic_header, tab, and TRUE.
Referenced by lookup_line().
| static bfd_boolean ecoff_write_shuffle PARAMS | ( | (bfd *, const struct ecoff_debug_swap *, struct shuffle *, PTR space) | ) | [static] |
| static long ecoff_add_string PARAMS | ( | (struct accumulate *, struct bfd_link_info *, struct ecoff_debug_info *, FDR *fdr, const char *string) | ) | [static] |
| static bfd_boolean add_memory_shuffle PARAMS | ( | (struct accumulate *, struct shuffle **head, struct shuffle **tail, bfd_byte *data, unsigned long size) | ) | [static] |
| static bfd_boolean add_file_shuffle PARAMS | ( | (struct accumulate *, struct shuffle **, struct shuffle **, bfd *, file_ptr, unsigned long) | ) | [static] |
| static long fdrtab_lookup PARAMS | ( | (struct ecoff_find_line *, bfd_vma) | ) | [static] |
| static bfd_boolean mk_fdrtab PARAMS | ( | (bfd *, struct ecoff_debug_info *const, const struct ecoff_debug_swap *const, struct ecoff_find_line *) | ) | [static] |
| static bfd_boolean ecoff_write_symhdr PARAMS | ( | (bfd *, struct ecoff_debug_info *, const struct ecoff_debug_swap *, file_ptr where) | ) | [static] |
| static void ecoff_align_debug PARAMS | ( | (bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap) | ) | [static] |
| static struct bfd_hash_entry* string_hash_newfunc PARAMS | ( | (struct bfd_hash_entry *, struct bfd_hash_table *, const char *) | ) | [static, read] |
| static struct bfd_hash_entry* string_hash_newfunc | ( | struct bfd_hash_entry * | entry, | |
| struct bfd_hash_table * | table, | |||
| const char * | string | |||
| ) | [static, read] |
Definition at line 309 of file ecofflink.c.
References bfd_hash_allocate(), bfd_hash_newfunc(), string_hash_entry::next, NULL, ret, and string_hash_entry::val.
Referenced by bfd_ecoff_debug_init().
1.5.6