Open64 (mfef90, whirl2f, and IR tools)
TAG: version-openad; SVN changeset: 916
|
#include <stdlib.h>
#include <stdio.h>
#include <elf.h>
#include <elfaccess.h>
#include <libelf.h>
#include <libdwarf.h>
#include "targ_em_dwarf.h"
#include <assert.h>
#include "defs.h"
Go to the source code of this file.
Classes | |
struct | UINT32_unaligned |
struct | UINT64_unaligned |
Defines | |
#define | USE_STANDARD_TYPES 1 |
Functions | |
struct UINT32_unaligned | __attribute__ ((aligned(1))) |
static Elf32_Rel * | translate_reloc32 (Dwarf_Relocation_Data rentry, Cg_Dwarf_Sym_To_Elfsym_Ofst translate_symndx, Dwarf_Ptr buffer, Dwarf_Unsigned bufsize) |
static Elf64_Rel * | translate_reloc64 (Dwarf_Relocation_Data rentry, Cg_Dwarf_Sym_To_Elfsym_Ofst translate_symndx, Dwarf_Ptr buffer, Dwarf_Unsigned bufsize) |
Dwarf_Ptr | Em_Dwarf_Symbolic_Relocs_To_Elf (next_buffer_retriever get_buffer, next_bufsize_retriever get_bufsize, advancer_to_next_stream advance_stream, Dwarf_Signed buffer_scndx, Dwarf_Relocation_Data reloc_buf, Dwarf_Unsigned entry_count, int is_64bit, Cg_Dwarf_Sym_To_Elfsym_Ofst translate_symndx, Dwarf_Unsigned *result_buf_size) |
Variables | |
UINT32 | val |
#define USE_STANDARD_TYPES 1 |
Definition at line 44 of file targ_em_dwarf.cxx.
struct UINT32_unaligned __attribute__ | ( | (aligned(1)) | ) |
Dwarf_Ptr Em_Dwarf_Symbolic_Relocs_To_Elf | ( | next_buffer_retriever | get_buffer, |
next_bufsize_retriever | get_bufsize, | ||
advancer_to_next_stream | advance_stream, | ||
Dwarf_Signed | buffer_scndx, | ||
Dwarf_Relocation_Data | reloc_buf, | ||
Dwarf_Unsigned | entry_count, | ||
int | is_64bit, | ||
Cg_Dwarf_Sym_To_Elfsym_Ofst | translate_symndx, | ||
Dwarf_Unsigned * | result_buf_size | ||
) |
Definition at line 127 of file targ_em_dwarf.cxx.
References Dwarf_Relocation_Data_s::drd_offset, Dwarf_Relocation_Data_s::drd_symbol_index, Dwarf_Relocation_Data_s::drd_type, dwarf_drt_first_of_length_pair, dwarf_drt_none, dwarf_drt_second_of_length_pair, exit(), FALSE, fprintf(), NULL, TFile, translate_reloc32(), and translate_reloc64().
Referenced by Em_Dwarf_Write_Scns().
static Elf32_Rel* translate_reloc32 | ( | Dwarf_Relocation_Data | rentry, |
Cg_Dwarf_Sym_To_Elfsym_Ofst | translate_symndx, | ||
Dwarf_Ptr | buffer, | ||
Dwarf_Unsigned | bufsize | ||
) | [static] |
Definition at line 56 of file targ_em_dwarf.cxx.
References Dwarf_Relocation_Data_s::drd_offset, Dwarf_Relocation_Data_s::drd_symbol_index, Dwarf_Relocation_Data_s::drd_type, dwarf_drt_data_reloc, dwarf_drt_segment_rel, exit(), fprintf(), R_IA_64_DIR32LSB, R_IA_64_SEGREL32LSB, REL32_offset, Set_REL32_sym, and Set_REL32_type.
Referenced by Em_Dwarf_Symbolic_Relocs_To_Elf().
static Elf64_Rel* translate_reloc64 | ( | Dwarf_Relocation_Data | rentry, |
Cg_Dwarf_Sym_To_Elfsym_Ofst | translate_symndx, | ||
Dwarf_Ptr | buffer, | ||
Dwarf_Unsigned | bufsize | ||
) | [static] |
Definition at line 89 of file targ_em_dwarf.cxx.
References Dwarf_Relocation_Data_s::drd_length, Dwarf_Relocation_Data_s::drd_offset, Dwarf_Relocation_Data_s::drd_symbol_index, Dwarf_Relocation_Data_s::drd_type, dwarf_drt_data_reloc, dwarf_drt_segment_rel, exit(), fprintf(), R_IA_64_DIR32LSB, R_IA_64_DIR64LSB, R_IA_64_SEGREL64LSB, REL_offset, Set_REL64_sym, and Set_REL64_type.
Referenced by Em_Dwarf_Symbolic_Relocs_To_Elf().
Definition at line 50 of file targ_em_dwarf.cxx.
Referenced by Actual_data_size(), CFG_NODE_INFO::Add_array_may_reduc(), CFG_NODE_INFO::Add_array_reduc(), CFG_NODE_INFO::Add_scalar_def(), CFG_NODE_INFO::Add_scalar_may_def(), CFG_NODE_INFO::Add_scalar_may_reduc(), CFG_NODE_INFO::Add_scalar_may_use(), CFG_NODE_INFO::Add_scalar_reduc(), CFG_NODE_INFO::Add_scalar_ref_may_passed(), CFG_NODE_INFO::Add_scalar_ref_passed(), CFG_NODE_INFO::Add_scalar_use(), Append_ST_String(), ar_cflt128(), ar_cflt64(), ar_iflt128(), ar_iflt32(), ar_iflt64(), Can_Do_Fast_Multiply(), Check_Range(), ir_a2b::CheckEnumTable(), ir_a2b::CheckFlagTable(), Configure_Alias_Options(), data_element_s::create_initv(), cwh_stats_print_details(), cwh_stmt_append_truebr(), cwh_stmt_select_case_char(), data_element_s::data_element_s(), DST_preorder_visit(), DaVinci::Emit_Attr(), fei_free(), fei_mfree(), Get_Numeric_Flag(), EnumToStr_t::getEnumVal(), FlagToStr_t::getFlagVal(), INITV2C_struct_fill(), Is_Power_Of_2(), l_convert(), ir_a2b::MapEnumToStr(), New_INITO(), prieee32(), prieee64(), Process_Command_Line_Group(), Process_Feedback_Options(), ARB::Set_lbnd_val(), ARB::Set_stride_val(), Set_Tcon_Value(), ARB::Set_ubnd_val(), Set_Verbose_Info(), setstat32(), setstat64(), data_info_s::sort_data(), ST_ATTR::ST_ATTR(), ST_ATTR_Init(), Targ_IntrinsicOp(), TI_ASM_Get_Bundle_Comp(), TI_ASM_Get_Bundle_Reloc_Value(), TI_ASM_Unpack_Inst(), Update_Pointer_Value(), Update_Scalar_Value(), utoa(), WN_ConstPowerOf2(), and WN_CreateReturn_Val().