Remove libdwarf directory, ancient cruft.
authorRoland McGrath <roland@redhat.com>
Wed, 7 Jul 2010 20:59:37 +0000 (13:59 -0700)
committerRoland McGrath <roland@redhat.com>
Wed, 7 Jul 2010 20:59:37 +0000 (13:59 -0700)
Having this cruft in the tree led me astray one time too many in a mass
grep.  I ain't havin' it no more.  Anyone looking for hysterical raisins
can still find it in the git history.  It hasn't been in distribution
tarballs for a long time now.

90 files changed:
libdwarf/.cvsignore [deleted file]
libdwarf/AVAILABLE [deleted file]
libdwarf/ChangeLog [deleted file]
libdwarf/Makefile.am [deleted file]
libdwarf/dwarf.h [deleted file]
libdwarf/dwarf_abbrev_hash.c [deleted file]
libdwarf/dwarf_abbrev_hash.h [deleted file]
libdwarf/dwarf_arrayorder.c [deleted file]
libdwarf/dwarf_attr.c [deleted file]
libdwarf/dwarf_attrlist.c [deleted file]
libdwarf/dwarf_bitoffset.c [deleted file]
libdwarf/dwarf_bitsize.c [deleted file]
libdwarf/dwarf_bytesize.c [deleted file]
libdwarf/dwarf_child.c [deleted file]
libdwarf/dwarf_dealloc.c [deleted file]
libdwarf/dwarf_die_CU_offset.c [deleted file]
libdwarf/dwarf_diename.c [deleted file]
libdwarf/dwarf_dieoffset.c [deleted file]
libdwarf/dwarf_elf_init.c [deleted file]
libdwarf/dwarf_errmsg.c [deleted file]
libdwarf/dwarf_errno.c [deleted file]
libdwarf/dwarf_error.c [deleted file]
libdwarf/dwarf_find_macro_value_start.c [deleted file]
libdwarf/dwarf_finish.c [deleted file]
libdwarf/dwarf_form.c [deleted file]
libdwarf/dwarf_formaddr.c [deleted file]
libdwarf/dwarf_formblock.c [deleted file]
libdwarf/dwarf_formflag.c [deleted file]
libdwarf/dwarf_formref.c [deleted file]
libdwarf/dwarf_formsdata.c [deleted file]
libdwarf/dwarf_formstring.c [deleted file]
libdwarf/dwarf_formudata.c [deleted file]
libdwarf/dwarf_get_abbrev.c [deleted file]
libdwarf/dwarf_get_abbrev_children_flag.c [deleted file]
libdwarf/dwarf_get_abbrev_code.c [deleted file]
libdwarf/dwarf_get_abbrev_entry.c [deleted file]
libdwarf/dwarf_get_abbrev_tag.c [deleted file]
libdwarf/dwarf_get_address_size.c [deleted file]
libdwarf/dwarf_get_arange.c [deleted file]
libdwarf/dwarf_get_arange_info.c [deleted file]
libdwarf/dwarf_get_aranges.c [deleted file]
libdwarf/dwarf_get_cie_info.c [deleted file]
libdwarf/dwarf_get_cie_of_fde.c [deleted file]
libdwarf/dwarf_get_cu_die_offset.c [deleted file]
libdwarf/dwarf_get_elf.c [deleted file]
libdwarf/dwarf_get_fde_at_pc.c [deleted file]
libdwarf/dwarf_get_fde_instr_bytes.c [deleted file]
libdwarf/dwarf_get_fde_list_eh.c [deleted file]
libdwarf/dwarf_get_fde_n.c [deleted file]
libdwarf/dwarf_get_fde_range.c [deleted file]
libdwarf/dwarf_get_globals.c [deleted file]
libdwarf/dwarf_get_loclist_entry.c [deleted file]
libdwarf/dwarf_get_str.c [deleted file]
libdwarf/dwarf_getabbrev.c [deleted file]
libdwarf/dwarf_getconstant.c [deleted file]
libdwarf/dwarf_global_cu_offset.c [deleted file]
libdwarf/dwarf_global_die_offset.c [deleted file]
libdwarf/dwarf_global_formref.c [deleted file]
libdwarf/dwarf_global_name_offsets.c [deleted file]
libdwarf/dwarf_globname.c [deleted file]
libdwarf/dwarf_hasattr.c [deleted file]
libdwarf/dwarf_hasform.c [deleted file]
libdwarf/dwarf_highpc.c [deleted file]
libdwarf/dwarf_init.c [deleted file]
libdwarf/dwarf_lineaddr.c [deleted file]
libdwarf/dwarf_linebeginstatement.c [deleted file]
libdwarf/dwarf_lineblock.c [deleted file]
libdwarf/dwarf_lineendsequence.c [deleted file]
libdwarf/dwarf_lineepiloguebegin.c [deleted file]
libdwarf/dwarf_lineno.c [deleted file]
libdwarf/dwarf_lineoff.c [deleted file]
libdwarf/dwarf_lineprologueend.c [deleted file]
libdwarf/dwarf_linesrc.c [deleted file]
libdwarf/dwarf_loclist.c [deleted file]
libdwarf/dwarf_lowpc.c [deleted file]
libdwarf/dwarf_next_cu_header.c [deleted file]
libdwarf/dwarf_offdie.c [deleted file]
libdwarf/dwarf_seterrarg.c [deleted file]
libdwarf/dwarf_seterrhand.c [deleted file]
libdwarf/dwarf_siblingof.c [deleted file]
libdwarf/dwarf_srcfiles.c [deleted file]
libdwarf/dwarf_srclang.c [deleted file]
libdwarf/dwarf_srclines.c [deleted file]
libdwarf/dwarf_tag.c [deleted file]
libdwarf/dwarf_whatattr.c [deleted file]
libdwarf/dwarf_whatform.c [deleted file]
libdwarf/libdwarf.h [deleted file]
libdwarf/libdwarf.map [deleted file]
libdwarf/libdwarfP.h [deleted file]
libdwarf/memory-access.h [deleted file]

diff --git a/libdwarf/.cvsignore b/libdwarf/.cvsignore
deleted file mode 100644 (file)
index 70845e0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Makefile.in
diff --git a/libdwarf/AVAILABLE b/libdwarf/AVAILABLE
deleted file mode 100644 (file)
index 642dd27..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-Data Types:
-
-  Dwarf_Bool
-  Dwarf_Off
-  Dwarf_Unsigned
-  Dwarf_Half
-  Dwarf_Small
-  Dwarf_Signed
-  Dwarf_Addr
-  Dwarf_Ptr
-  Dwarf_Handler
-
-  Dwarf_Debug
-  Dwarf_Die
-  Dwarf_Line
-  Dwarf_Global
-  Dwarf_Loc
-  Dwarf_Locdesc
-  Dwarf_Block
-  Dwarf_Error
-  Dwarf_Attribute
-  Dwarf_Fde
-  Dwarf_Cie
-  Dwarf_Arange
-
- NOT!!!:
-
-  Dwarf_Frame_Op
-  Dwarf_Macro_Details
-
-  Dwarf_Weak
-  Dwarf_Func
-  Dwarf_Type
-  Dwarf_Var
-  Dwarf_Abbrev
-
-Functions:
-
-  dwarf_init()
-  dwarf_elf_init()
-  dwarf_get_elf()
-  dwarf_finish()
-  dwarf_next_cu_header()
-  dwarf_siblingof()
-  dwarf_child()
-  dwarf_offdie()
-  dwarf_tag()
-  dwarf_dieoffset()
-  dwarf_die_CU_offset()
-  dwarf_diename()
-  dwarf_attrlist()
-  dwarf_srclang()
-  dwarf_arrayorder()
-  dwarf_hasform()
-  dwarf_whatattr()
-  dwarf_formref()
-  dwarf_global_formref()
-  dwarf_formaddr()
-  dwarf_formflag()
-  dwarf_hasattr()
-  dwarf_attr()
-  dwarf_lowpc()
-  dwarf_highpc()
-  dwarf_bytesize()
-  dwarf_bitsize()
-  dwarf_bitoffset()
-  dwarf_formudata()
-  dwarf_formblock()
-  dwarf_formstring()
-  dwarf_loclist()
-  dwarf_srclines()
-  dwarf_srcfiles()
-  dwarf_linebeginstatement()
-  dwarf_lineendsequence()
-  dwarf_lineno()
-  dwarf_lineaddr()
-  dwarf_lineoff()
-  dwarf_linesrc()
-  dwarf_lineblock()
-  dwarf_get_globals()
-  dwarf_globname()
-  dwarf_global_die_offset()
-  dwarf_global_cu_offset()
-  dwarf_global_name_offsets()
-  dwarf_find_macro_value_start()
-  dwarf_get_fde_list_eh()
-  dwarf_get_fde_range()
-  dwarf_get_cie_of_fde()
-  dwarf_get_cie_info()
-  dwarf_get_fde_instr_bytes()
-  dwarf_get_fde_n()
-  dwarf_get_fde_at_pc()
-  dwarf_get_str()
-  dwarf_get_aranges()
-  dwarf_get_cu_die_offset()
-  dwarf_get_loclist_entry()
-  dwarf_get_abbrev()
-  dwarf_get_abbrev_tag()
-  dwarf_get_abbrev_code()
-  dwarf_get_abbrev_children_flag()
-  dwarf_get_abbrev_entry()
-  dwarf_get_arange_info()
-  dwarf_get_address_size()
-  dwarf_errno()
-  dwarf_errmsg()
-  dwarf_seterrhand()
-  dwarf_seterrarg()
-  dwarf_dealloc()
-
- NOT!!!:
-
-  dwarf_get_weaks()
-  dwarf_weakname()
-  dwarf_weak_die_offset()
-  dwarf_weak_cu_offset()
-  dwarf_weak_name_offsets()
-  dwarf_get_funcs()
-  dwarf_funcname()
-  dwarf_func_die_offset()
-  dwarf_func_cu_offset()
-  dwarf_func_name_offsets()
-  dwarf_get_types()
-  dwarf_typename()
-  dwarf_type_die_offset()
-  dwarf_type_cu_offset()
-  dwarf_type_name_offsets()
-  dwarf_get_vars()
-  dwarf_varname()
-  dwarf_var_die_offset()
-  dwarf_var_cu_offset()
-  dwarf_var_name_offsets()
-  dwarf_get_fde_list()
-  dwarf_get_fde_for_die()
-  dwarf_get_fde_info_for_reg()         <<-------
-  dwarf_get_fde_info_for_all_regs()
-  dwarf_expand_frame_instructions()    <<-------
diff --git a/libdwarf/ChangeLog b/libdwarf/ChangeLog
deleted file mode 100644 (file)
index 4c63735..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-2008-01-17  Nick Clifton  <nickc@redhat.com>
-
-       * libdwarf.h: Fix typo in comment.
-
-2003-08-11  Ulrich Drepper  <drepper@redhat.com>
-
-        * Moved to CVS archive.
diff --git a/libdwarf/Makefile.am b/libdwarf/Makefile.am
deleted file mode 100644 (file)
index 57cf567..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-## Process this file with automake to create Makefile.in -*-Makefile-*-
-## Configure input file for elfutils.
-##
-## Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-## This file is part of Red Hat elfutils.
-##
-## Red Hat elfutils is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by the
-## Free Software Foundation; version 2 of the License.
-##
-## Red Hat elfutils is distributed in the hope that it will be useful, but
-## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-## General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License along
-## with Red Hat elfutils; if not, write to the Free Software Foundation,
-## Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-##
-## Red Hat elfutils is an included package of the Open Invention Network.
-## An included package of the Open Invention Network is a package for which
-## Open Invention Network licensees cross-license their patents.  No patent
-## license is granted, either expressly or impliedly, by designation as an
-## included package.  Should you wish to participate in the Open Invention
-## Network licensing program, please visit www.openinventionnetwork.com
-## <http://www.openinventionnetwork.com>.
-##
-DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DDWARF_DEBUG
-AM_CFLAGS = -Wall -Werror
-INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../libelf -I.. -I$(srcdir)/../lib
-VERSION = 1
-
-lib_LIBRARIES = libdwarf.a
-noinst_LIBRARIES = libdwarf_pic.a
-noinst_PROGRAMS = $(noinst_LIBRARIES:_pic.a=.so)
-include_HEADERS = dwarf.h
-euincludedir = ${includedir}/elfutils
-euinclude_HEADERS = libdwarf.h
-
-libdwarf_a_SOURCES = dwarf_init.c dwarf_elf_init.c dwarf_get_elf.c \
-                    dwarf_finish.c \
-                    dwarf_next_cu_header.c dwarf_siblingof.c dwarf_child.c \
-                    dwarf_offdie.c \
-                    dwarf_tag.c dwarf_dieoffset.c dwarf_die_CU_offset.c \
-                    dwarf_diename.c dwarf_attrlist.c dwarf_hasattr.c \
-                    dwarf_attr.c dwarf_lowpc.c dwarf_highpc.c \
-                    dwarf_getconstant.c \
-                    dwarf_bytesize.c dwarf_bitsize.c dwarf_bitoffset.c \
-                    dwarf_srclang.c dwarf_whatattr.c dwarf_arrayorder.c \
-                    dwarf_hasform.c dwarf_whatform.c dwarf_formref.c \
-                    dwarf_global_formref.c dwarf_formaddr.c \
-                    dwarf_formstring.c dwarf_loclist.c \
-                    dwarf_formflag.c dwarf_formudata.c dwarf_formsdata.c \
-                    dwarf_formblock.c \
-                    dwarf_srclines.c dwarf_srcfiles.c \
-                    dwarf_linebeginstatement.c dwarf_lineendsequence.c \
-                    dwarf_lineno.c dwarf_lineaddr.c dwarf_lineoff.c \
-                    dwarf_linesrc.c dwarf_lineblock.c \
-                    dwarf_lineprologueend.c dwarf_lineepiloguebegin.c \
-                    dwarf_get_globals.c dwarf_globname.c \
-                    dwarf_global_die_offset.c dwarf_global_cu_offset.c \
-                    dwarf_global_name_offsets.c \
-                    dwarf_error.c dwarf_errno.c dwarf_errmsg.c \
-                    dwarf_abbrev_hash.c dwarf_getabbrev.c dwarf_form.c \
-                    dwarf_find_macro_value_start.c dwarf_get_str.c \
-                    dwarf_get_aranges.c dwarf_get_arange.c \
-                    dwarf_get_cu_die_offset.c dwarf_get_arange_info.c \
-                    dwarf_get_fde_list_eh.c dwarf_get_cie_of_fde.c \
-                    dwarf_get_cie_info.c dwarf_get_fde_instr_bytes.c \
-                    dwarf_get_fde_range.c dwarf_get_fde_n.c \
-                    dwarf_get_fde_at_pc.c  \
-                    dwarf_get_loclist_entry.c \
-                    dwarf_get_abbrev.c dwarf_get_abbrev_tag.c \
-                    dwarf_get_abbrev_code.c dwarf_get_abbrev_children_flag.c\
-                    dwarf_get_abbrev_entry.c \
-                    dwarf_get_address_size.c \
-                    dwarf_seterrhand.c dwarf_seterrarg.c \
-                    dwarf_dealloc.c
-
-libdwarf_pic_a_SOURCES =
-am_libdwarf_pic_a_OBJECTS = $(libdwarf_a_SOURCES:.c=.os)
-
-libdwarf_so_SOURCES =
-libdwarf.so: libdwarf_pic.a libdwarf.map
-       $(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \
-             -Wl,--version-script,$(srcdir)/libdwarf.map,--no-undefined \
-             -Wl,--soname,$@.$(VERSION),-z,defs \
-             ../libelf/libelf.so
-       ln -fs $@ $@.$(VERSION)
-
-
-%.os: %.c %.o
-       if $(COMPILE) -c -o $@ -fpic -DPIC -DSHARED -MT $@ -MD -MP \
-         -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \
-       then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \
-            rm -f "$(DEPDIR)/$*.Tpo"; \
-       else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
-       fi
-
-install: install-am libdwarf.so
-       $(mkinstalldirs) $(DESTDIR)$(libdir)
-       $(INSTALL_PROGRAM) libdwarf.so $(DESTDIR)$(libdir)/libdwarf-$(PACKAGE_VERSION).so
-       ln -fs libdwarf-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libdwarf.so.$(VERSION)
-       ln -fs libdwarf.so.$(VERSION) $(DESTDIR)$(libdir)/libdwarf.so
-
-uninstall: uninstall-am
-       rm -f $(DESTDIR)$(libdir)/libdwarf-$(PACKAGE_VERSION).so
-       rm -f $(DESTDIR)$(libdir)/libdwarf.so.$(VERSION)
-       rm -f $(DESTDIR)$(libdir)/libdwarf.so
-       rmdir --ignore-fail-on-non-empty $(DESTDIR)$(includedir)/elfutils
-
-noinst_HEADERS = libdwarfP.h memory-access.h dwarf_abbrev_hash.h
-EXTRA_DIST = AVAILABLE libdwarf.map
-
-CLEANFILES = $(am_libdwarf_pic_a_OBJECTS)
diff --git a/libdwarf/dwarf.h b/libdwarf/dwarf.h
deleted file mode 100644 (file)
index e9fc91c..0000000
+++ /dev/null
@@ -1,561 +0,0 @@
-/* This file defines standard DWARF types, structures, and macros.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifndef _DWARF_H
-#define        _DWARF_H 1
-
-/* DWARF tags.  */
-enum
-  {
-    DW_TAG_array_type = 0x01,
-    DW_TAG_class_type = 0x02,
-    DW_TAG_entry_point = 0x03,
-    DW_TAG_enumeration_type = 0x04,
-    DW_TAG_formal_parameter = 0x05,
-    DW_TAG_imported_declaration = 0x08,
-    DW_TAG_label = 0x0a,
-    DW_TAG_lexical_block = 0x0b,
-    DW_TAG_member = 0x0d,
-    DW_TAG_pointer_type = 0x0f,
-    DW_TAG_reference_type = 0x10,
-    DW_TAG_compile_unit = 0x11,
-    DW_TAG_string_type = 0x12,
-    DW_TAG_structure_type = 0x13,
-    DW_TAG_subroutine_type = 0x15,
-    DW_TAG_typedef = 0x16,
-    DW_TAG_union_type = 0x17,
-    DW_TAG_unspecified_parameters = 0x18,
-    DW_TAG_variant = 0x19,
-    DW_TAG_common_block = 0x1a,
-    DW_TAG_common_inclusion = 0x1b,
-    DW_TAG_inheritance = 0x1c,
-    DW_TAG_inlined_subroutine = 0x1d,
-    DW_TAG_module = 0x1e,
-    DW_TAG_ptr_to_member_type = 0x1f,
-    DW_TAG_set_type = 0x20,
-    DW_TAG_subrange_type = 0x21,
-    DW_TAG_with_stmt = 0x22,
-    DW_TAG_access_declaration = 0x23,
-    DW_TAG_base_type = 0x24,
-    DW_TAG_catch_block = 0x25,
-    DW_TAG_const_type = 0x26,
-    DW_TAG_constant = 0x27,
-    DW_TAG_enumerator = 0x28,
-    DW_TAG_file_type = 0x29,
-    DW_TAG_friend = 0x2a,
-    DW_TAG_namelist = 0x2b,
-    DW_TAG_namelist_item = 0x2c,
-    DW_TAG_packed_type = 0x2d,
-    DW_TAG_subprogram = 0x2e,
-    DW_TAG_template_type_param = 0x2f,
-    DW_TAG_template_value_param = 0x30,
-    DW_TAG_thrown_type = 0x31,
-    DW_TAG_try_block = 0x32,
-    DW_TAG_variant_part = 0x33,
-    DW_TAG_variable = 0x34,
-    DW_TAG_volatile_type = 0x35,
-    DW_TAG_lo_user = 0x4080,
-    DW_TAG_MIPS_loop = 0x4081,
-    DW_TAG_format_label = 0x4101,
-    DW_TAG_function_template = 0x4102,
-    DW_TAG_class_template = 0x4103,
-    DW_TAG_hi_user = 0xffff
-  };
-
-
-/* Children determination encodings.  */
-enum
-  {
-    DW_CHILDREN_no = 0,
-    DW_CHILDREN_yes = 1
-  };
-
-
-/* DWARF attributes encodings.  */
-enum
-  {
-    DW_AT_sibling = 0x01,
-    DW_AT_location = 0x02,
-    DW_AT_name = 0x03,
-    DW_AT_ordering = 0x09,
-    DW_AT_subscr_data = 0x0a,
-    DW_AT_byte_size = 0x0b,
-    DW_AT_bit_offset = 0x0c,
-    DW_AT_bit_size = 0x0d,
-    DW_AT_element_list = 0x0f,
-    DW_AT_stmt_list = 0x10,
-    DW_AT_low_pc = 0x11,
-    DW_AT_high_pc = 0x12,
-    DW_AT_language = 0x13,
-    DW_AT_member = 0x14,
-    DW_AT_discr = 0x15,
-    DW_AT_discr_value = 0x16,
-    DW_AT_visibility = 0x17,
-    DW_AT_import = 0x18,
-    DW_AT_string_length = 0x19,
-    DW_AT_common_reference = 0x1a,
-    DW_AT_comp_dir = 0x1b,
-    DW_AT_const_value = 0x1c,
-    DW_AT_containing_type = 0x1d,
-    DW_AT_default_value = 0x1e,
-    DW_AT_inline = 0x20,
-    DW_AT_is_optional = 0x21,
-    DW_AT_lower_bound = 0x22,
-    DW_AT_producer = 0x25,
-    DW_AT_prototyped = 0x27,
-    DW_AT_return_addr = 0x2a,
-    DW_AT_start_scope = 0x2c,
-    DW_AT_stride_size = 0x2e,
-    DW_AT_upper_bound = 0x2f,
-    DW_AT_abstract_origin = 0x31,
-    DW_AT_accessibility = 0x32,
-    DW_AT_address_class = 0x33,
-    DW_AT_artificial = 0x34,
-    DW_AT_base_types = 0x35,
-    DW_AT_calling_convention = 0x36,
-    DW_AT_count = 0x37,
-    DW_AT_data_member_location = 0x38,
-    DW_AT_decl_column = 0x39,
-    DW_AT_decl_file = 0x3a,
-    DW_AT_decl_line = 0x3b,
-    DW_AT_declaration = 0x3c,
-    DW_AT_discr_list = 0x3d,
-    DW_AT_encoding = 0x3e,
-    DW_AT_external = 0x3f,
-    DW_AT_frame_base = 0x40,
-    DW_AT_friend = 0x41,
-    DW_AT_identifier_case = 0x42,
-    DW_AT_macro_info = 0x43,
-    DW_AT_namelist_items = 0x44,
-    DW_AT_priority = 0x45,
-    DW_AT_segment = 0x46,
-    DW_AT_specification = 0x47,
-    DW_AT_static_link = 0x48,
-    DW_AT_type = 0x49,
-    DW_AT_use_location = 0x4a,
-    DW_AT_variable_parameter = 0x4b,
-    DW_AT_virtuality = 0x4c,
-    DW_AT_vtable_elem_location = 0x4d,
-    DW_AT_lo_user = 0x2000,
-    DW_AT_MIPS_fde = 0x2001,
-    DW_AT_MIPS_loop_begin = 0x2002,
-    DW_AT_MIPS_tail_loop_begin = 0x2003,
-    DW_AT_MIPS_epilog_begin = 0x2004,
-    DW_AT_MIPS_loop_unroll_factor = 0x2005,
-    DW_AT_MIPS_software_pipeline_depth = 0x2006,
-    DW_AT_MIPS_linkage_name = 0x2007,
-    DW_AT_MIPS_stride = 0x2008,
-    DW_AT_MIPS_abstract_name = 0x2009,
-    DW_AT_MIPS_clone_origin = 0x200a,
-    DW_AT_MIPS_has_inlines = 0x200b,
-    DW_AT_MIPS_stride_byte = 0x200c,
-    DW_AT_MIPS_stride_elem = 0x200d,
-    DW_AT_MIPS_ptr_dopetype = 0x200e,
-    DW_AT_MIPS_allocatable_dopetype = 0x200f,
-    DW_AT_MIPS_assumed_shape_dopetype = 0x2010,
-    DW_AT_MIPS_assumed_size = 0x2011,
-    DW_AT_sf_names = 0x2101,
-    DW_AT_src_info = 0x2102,
-    DW_AT_mac_info = 0x2103,
-    DW_AT_src_coords = 0x2104,
-    DW_AT_body_begin = 0x2105,
-    DW_AT_body_end = 0x2106,
-    DW_AT_hi_user = 0x3fff
-  };
-
-
-/* DWARF form encodings.  */
-enum
-  {
-    DW_FORM_addr = 0x01,
-    DW_FORM_block2 = 0x03,
-    DW_FORM_block4 = 0x04,
-    DW_FORM_data2 = 0x05,
-    DW_FORM_data4 = 0x06,
-    DW_FORM_data8 = 0x07,
-    DW_FORM_string = 0x08,
-    DW_FORM_block = 0x09,
-    DW_FORM_block1 = 0x0a,
-    DW_FORM_data1 = 0x0b,
-    DW_FORM_flag = 0x0c,
-    DW_FORM_sdata = 0x0d,
-    DW_FORM_strp = 0x0e,
-    DW_FORM_udata = 0x0f,
-    DW_FORM_ref_addr = 0x10,
-    DW_FORM_ref1 = 0x11,
-    DW_FORM_ref2 = 0x12,
-    DW_FORM_ref4 = 0x13,
-    DW_FORM_ref8 = 0x14,
-    DW_FORM_ref_udata = 0x15,
-    DW_FORM_indirect = 0x16
-  };
-
-
-/* DWARF location operation encodings.  */
-enum
-  {
-    DW_OP_addr = 0x03,         /* Constant address.  */
-    DW_OP_deref = 0x06,
-    DW_OP_const1u = 0x08,      /* Unsigned 1-byte constant.  */
-    DW_OP_const1s = 0x09,      /* Signed 1-byte constant.  */
-    DW_OP_const2u = 0x0a,      /* Unsigned 2-byte constant.  */
-    DW_OP_const2s = 0x0b,      /* Signed 2-byte constant.  */
-    DW_OP_const4u = 0x0c,      /* Unsigned 4-byte constant.  */
-    DW_OP_const4s = 0x0d,      /* Signed 4-byte constant.  */
-    DW_OP_const8u = 0x0e,      /* Unsigned 8-byte constant.  */
-    DW_OP_const8s = 0x0f,      /* Signed 8-byte constant.  */
-    DW_OP_constu = 0x10,       /* Unsigned LEB128 constant.  */
-    DW_OP_consts = 0x11,       /* Signed LEB128 constant.  */
-    DW_OP_dup = 0x12,
-    DW_OP_drop = 0x13,
-    DW_OP_over = 0x14,
-    DW_OP_pick = 0x15,         /* 1-byte stack index.  */
-    DW_OP_swap = 0x16,
-    DW_OP_rot = 0x17,
-    DW_OP_xderef = 0x18,
-    DW_OP_abs = 0x19,
-    DW_OP_and = 0x1a,
-    DW_OP_div = 0x1b,
-    DW_OP_minus = 0x1c,
-    DW_OP_mod = 0x1d,
-    DW_OP_mul = 0x1e,
-    DW_OP_neg = 0x1f,
-    DW_OP_not = 0x20,
-    DW_OP_or = 0x21,
-    DW_OP_plus = 0x22,
-    DW_OP_plus_uconst = 0x23,  /* Unsigned LEB128 addend.  */
-    DW_OP_shl = 0x24,
-    DW_OP_shr = 0x25,
-    DW_OP_shra = 0x26,
-    DW_OP_xor = 0x27,
-    DW_OP_bra = 0x28,          /* Signed 2-byte constant.  */
-    DW_OP_eq = 0x29,
-    DW_OP_ge = 0x2a,
-    DW_OP_gt = 0x2b,
-    DW_OP_le = 0x2c,
-    DW_OP_lt = 0x2d,
-    DW_OP_ne = 0x2e,
-    DW_OP_skip = 0x2f,         /* Signed 2-byte constant.  */
-    DW_OP_lit0 = 0x30,         /* Literal 0.  */
-    DW_OP_lit1 = 0x31,         /* Literal 1.  */
-    DW_OP_lit2 = 0x32,         /* Literal 2.  */
-    DW_OP_lit3 = 0x33,         /* Literal 3.  */
-    DW_OP_lit4 = 0x34,         /* Literal 4.  */
-    DW_OP_lit5 = 0x35,         /* Literal 5.  */
-    DW_OP_lit6 = 0x36,         /* Literal 6.  */
-    DW_OP_lit7 = 0x37,         /* Literal 7.  */
-    DW_OP_lit8 = 0x38,         /* Literal 8.  */
-    DW_OP_lit9 = 0x39,         /* Literal 9.  */
-    DW_OP_lit10 = 0x3a,                /* Literal 10.  */
-    DW_OP_lit11 = 0x3b,                /* Literal 11.  */
-    DW_OP_lit12 = 0x3c,                /* Literal 12.  */
-    DW_OP_lit13 = 0x3d,                /* Literal 13.  */
-    DW_OP_lit14 = 0x3e,                /* Literal 14.  */
-    DW_OP_lit15 = 0x3f,                /* Literal 15.  */
-    DW_OP_lit16 = 0x40,                /* Literal 16.  */
-    DW_OP_lit17 = 0x41,                /* Literal 17.  */
-    DW_OP_lit18 = 0x42,                /* Literal 18.  */
-    DW_OP_lit19 = 0x43,                /* Literal 19.  */
-    DW_OP_lit20 = 0x44,                /* Literal 20.  */
-    DW_OP_lit21 = 0x45,                /* Literal 21.  */
-    DW_OP_lit22 = 0x46,                /* Literal 22.  */
-    DW_OP_lit23 = 0x47,                /* Literal 23.  */
-    DW_OP_lit24 = 0x48,                /* Literal 24.  */
-    DW_OP_lit25 = 0x49,                /* Literal 25.  */
-    DW_OP_lit26 = 0x4a,                /* Literal 26.  */
-    DW_OP_lit27 = 0x4b,                /* Literal 27.  */
-    DW_OP_lit28 = 0x4c,                /* Literal 28.  */
-    DW_OP_lit29 = 0x4d,                /* Literal 29.  */
-    DW_OP_lit30 = 0x4e,                /* Literal 30.  */
-    DW_OP_lit31 = 0x4f,                /* Literal 31.  */
-    DW_OP_reg0 = 0x50,         /* Register 0.  */
-    DW_OP_reg1 = 0x51,         /* Register 1.  */
-    DW_OP_reg2 = 0x52,         /* Register 2.  */
-    DW_OP_reg3 = 0x53,         /* Register 3.  */
-    DW_OP_reg4 = 0x54,         /* Register 4.  */
-    DW_OP_reg5 = 0x55,         /* Register 5.  */
-    DW_OP_reg6 = 0x56,         /* Register 6.  */
-    DW_OP_reg7 = 0x57,         /* Register 7.  */
-    DW_OP_reg8 = 0x58,         /* Register 8.  */
-    DW_OP_reg9 = 0x59,         /* Register 9.  */
-    DW_OP_reg10 = 0x5a,                /* Register 10.  */
-    DW_OP_reg11 = 0x5b,                /* Register 11.  */
-    DW_OP_reg12 = 0x5c,                /* Register 12.  */
-    DW_OP_reg13 = 0x5d,                /* Register 13.  */
-    DW_OP_reg14 = 0x5e,                /* Register 14.  */
-    DW_OP_reg15 = 0x5f,                /* Register 15.  */
-    DW_OP_reg16 = 0x60,                /* Register 16.  */
-    DW_OP_reg17 = 0x61,                /* Register 17.  */
-    DW_OP_reg18 = 0x62,                /* Register 18.  */
-    DW_OP_reg19 = 0x63,                /* Register 19.  */
-    DW_OP_reg20 = 0x64,                /* Register 20.  */
-    DW_OP_reg21 = 0x65,                /* Register 21.  */
-    DW_OP_reg22 = 0x66,                /* Register 22.  */
-    DW_OP_reg23 = 0x67,                /* Register 24.  */
-    DW_OP_reg24 = 0x68,                /* Register 24.  */
-    DW_OP_reg25 = 0x69,                /* Register 25.  */
-    DW_OP_reg26 = 0x6a,                /* Register 26.  */
-    DW_OP_reg27 = 0x6b,                /* Register 27.  */
-    DW_OP_reg28 = 0x6c,                /* Register 28.  */
-    DW_OP_reg29 = 0x6d,                /* Register 29.  */
-    DW_OP_reg30 = 0x6e,                /* Register 30.  */
-    DW_OP_reg31 = 0x6f,                /* Register 31.  */
-    DW_OP_breg0 = 0x70,                /* Base register 0.  */
-    DW_OP_breg1 = 0x71,                /* Base register 1.  */
-    DW_OP_breg2 = 0x72,                /* Base register 2.  */
-    DW_OP_breg3 = 0x73,                /* Base register 3.  */
-    DW_OP_breg4 = 0x74,                /* Base register 4.  */
-    DW_OP_breg5 = 0x75,                /* Base register 5.  */
-    DW_OP_breg6 = 0x76,                /* Base register 6.  */
-    DW_OP_breg7 = 0x77,                /* Base register 7.  */
-    DW_OP_breg8 = 0x78,                /* Base register 8.  */
-    DW_OP_breg9 = 0x79,                /* Base register 9.  */
-    DW_OP_breg10 = 0x7a,       /* Base register 10.  */
-    DW_OP_breg11 = 0x7b,       /* Base register 11.  */
-    DW_OP_breg12 = 0x7c,       /* Base register 12.  */
-    DW_OP_breg13 = 0x7d,       /* Base register 13.  */
-    DW_OP_breg14 = 0x7e,       /* Base register 14.  */
-    DW_OP_breg15 = 0x7f,       /* Base register 15.  */
-    DW_OP_breg16 = 0x80,       /* Base register 16.  */
-    DW_OP_breg17 = 0x81,       /* Base register 17.  */
-    DW_OP_breg18 = 0x82,       /* Base register 18.  */
-    DW_OP_breg19 = 0x83,       /* Base register 19.  */
-    DW_OP_breg20 = 0x84,       /* Base register 20.  */
-    DW_OP_breg21 = 0x85,       /* Base register 21.  */
-    DW_OP_breg22 = 0x86,       /* Base register 22.  */
-    DW_OP_breg23 = 0x87,       /* Base register 23.  */
-    DW_OP_breg24 = 0x88,       /* Base register 24.  */
-    DW_OP_breg25 = 0x89,       /* Base register 25.  */
-    DW_OP_breg26 = 0x8a,       /* Base register 26.  */
-    DW_OP_breg27 = 0x8b,       /* Base register 27.  */
-    DW_OP_breg28 = 0x8c,       /* Base register 28.  */
-    DW_OP_breg29 = 0x8d,       /* Base register 29.  */
-    DW_OP_breg30 = 0x8e,       /* Base register 30.  */
-    DW_OP_breg31 = 0x8f,       /* Base register 31.  */
-    DW_OP_regx = 0x90,         /* Unsigned LEB128 register.  */
-    DW_OP_fbreg = 0x91,                /* Signed LEB128 register.  */
-    DW_OP_bregx = 0x92,                /* ULEB128 register followed by SLEB128 off. */
-    DW_OP_piece = 0x93,                /* ULEB128 size of piece addressed. */
-    DW_OP_deref_size = 0x94,   /* 1-byte size of data retrieved.  */
-    DW_OP_xderef_size = 0x95,  /* 1-byte size of data retrieved.  */
-    DW_OP_nop = 0x96,
-    DW_OP_push_object_address = 0x97,
-    DW_OP_call2 = 0x98,
-    DW_OP_call4 = 0x99,
-    DW_OP_call_ref = 0x9a,
-
-    DW_OP_lo_user = 0xe0,      /* Implementation-defined range start.  */
-    DW_OP_hi_user = 0xff       /* Implementation-defined range end.  */
-  };
-
-
-/* DWARF base type encodings.  */
-enum
-  {
-    DW_ATE_void = 0x0,
-    DW_ATE_address = 0x1,
-    DW_ATE_boolean = 0x2,
-    DW_ATE_complex_float = 0x3,
-    DW_ATE_float = 0x4,
-    DW_ATE_signed = 0x5,
-    DW_ATE_signed_char = 0x6,
-    DW_ATE_unsigned = 0x7,
-    DW_ATE_unsigned_char = 0x8,
-
-    DW_ATE_lo_user = 0x80,
-    DW_ATE_hi_user = 0xff
-  };
-
-
-/* DWARF accessibility encodings.  */
-enum
-  {
-    DW_ACCESS_public = 1,
-    DW_ACCESS_protected = 2,
-    DW_ACCESS_private = 3
-  };
-
-
-/* DWARF visibility encodings.  */
-enum
-  {
-    DW_VIS_local = 1,
-    DW_VIS_exported = 2,
-    DW_VIS_qualified = 3
-  };
-
-
-/* DWARF virtuality encodings.  */
-enum
-  {
-    DW_VIRTUALITY_none = 0,
-    DW_VIRTUALITY_virtual = 1,
-    DW_VIRTUALITY_pure_virtual = 2
-  };
-
-
-/* DWARF language encodings.  */
-enum
-  {
-    DW_LANG_C89 = 0x0001,
-    DW_LANG_C = 0x0002,
-    DW_LANG_Ada83 = 0x0003,
-    DW_LANG_C_plus_plus        = 0x0004,
-    DW_LANG_Cobol74 = 0x0005,
-    DW_LANG_Cobol85 = 0x0006,
-    DW_LANG_Fortran77 = 0x0007,
-    DW_LANG_Fortran90 = 0x0008,
-    DW_LANG_Pascal83 = 0x0009,
-    DW_LANG_Modula2 = 0x000a,
-    DW_LANG_Java = 0x000b,
-    DW_LANG_C99 = 0x000c,
-    DW_LANG_Ada95 = 0x000d,
-    DW_LANG_Fortran95 = 0x000e,
-    DW_LANG_PL1 = 0x000f,
-    DW_LANG_lo_user = 0x8000,
-    DW_LANG_Mips_Assembler = 0x8001,
-    DW_LANG_hi_user = 0xffff
-  };
-
-
-/* DWARF identifier case encodings.  */
-enum
-  {
-    DW_ID_case_sensitive = 0,
-    DW_ID_up_case = 1,
-    DW_ID_down_case = 2,
-    DW_ID_case_insensitive = 3
-  };
-
-
-/* DWARF calling conventions encodings.  */
-enum
-  {
-    DW_CC_normal = 0x1,
-    DW_CC_program = 0x2,
-    DW_CC_nocall = 0x3,
-    DW_CC_lo_user = 0x40,
-    DW_CC_hi_user = 0xff
-  };
-
-
-/* DWARF inline encodings.  */
-enum
-  {
-    DW_INL_not_inlined = 0,
-    DW_INL_inlined = 1,
-    DW_INL_declared_not_inlined = 2,
-    DW_INL_declared_inlined = 3
-  };
-
-
-/* DWARF ordering encodings.  */
-enum
-  {
-    DW_ORD_row_major = 0,
-    DW_ORD_col_major = 1
-  };
-
-
-/* DWARF discriminant descriptor encodings.  */
-enum
-  {
-    DW_DSC_label = 0,
-    DW_DSC_range = 1
-  };
-
-
-/* DWARF standard opcode encodings.  */
-enum
-  {
-    DW_LNS_copy = 1,
-    DW_LNS_advance_pc = 2,
-    DW_LNS_advance_line = 3,
-    DW_LNS_set_file = 4,
-    DW_LNS_set_column = 5,
-    DW_LNS_negate_stmt = 6,
-    DW_LNS_set_basic_block = 7,
-    DW_LNS_const_add_pc = 8,
-    DW_LNS_fixed_advance_pc = 9,
-    DW_LNS_set_prologue_end = 10,
-    DW_LNS_set_epilog_begin = 11
-  };
-
-
-/* DWARF extended opcide encodings.  */
-enum
-  {
-    DW_LNE_end_sequence = 1,
-    DW_LNE_set_address = 2,
-    DW_LNE_define_file = 3
-  };
-
-
-/* DWARF macinfo type encodings.  */
-enum
-  {
-    DW_MACINFO_define = 1,
-    DW_MACINFO_undef = 2,
-    DW_MACINFO_start_file = 3,
-    DW_MACINFO_end_file = 4,
-    DW_MACINFO_vendor_ext = 255
-  };
-
-
-/* DWARF call frame instruction encodings.  */
-enum
-  {
-    DW_CFA_advance_loc = 0x40,
-    DW_CFA_offset = 0x80,
-    DW_CFA_restore = 0xc0,
-    DW_CFA_extended = 0,
-
-    DW_CFA_nop = 0x00,
-    DW_CFA_set_loc = 0x01,
-    DW_CFA_advance_loc1 = 0x02,
-    DW_CFA_advance_loc2 = 0x03,
-    DW_CFA_advance_loc4 = 0x04,
-    DW_CFA_offset_extended = 0x05,
-    DW_CFA_restore_extended = 0x06,
-    DW_CFA_undefined = 0x07,
-    DW_CFA_same_value = 0x08,
-    DW_CFA_register = 0x09,
-    DW_CFA_remember_state = 0x0a,
-    DW_CFA_restore_state = 0x0b,
-    DW_CFA_def_cfa = 0x0c,
-    DW_CFA_def_cfa_register = 0x0d,
-    DW_CFA_def_cfa_offset = 0x0e,
-    DW_CFA_low_user = 0x1c,
-    DW_CFA_MIPS_advance_loc8 = 0x1d,
-    DW_CFA_GNU_window_save = 0x2d,
-    DW_CFA_GNU_args_size = 0x2e,
-    DW_CFA_high_user = 0x3f
-  };
-
-
-/* DWARF XXX.  */
-#define DW_ADDR_none   0
-
-#endif /* dwarf.h */
diff --git a/libdwarf/dwarf_abbrev_hash.c b/libdwarf/dwarf_abbrev_hash.c
deleted file mode 100644 (file)
index 0bc4631..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Implementation of hash table for DWARF .debug_abbrev section content.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#define NO_UNDEF
-#include "libdwarfP.h"
-
-#define next_prime __libdwarf_next_prime
-extern size_t next_prime (size_t) attribute_hidden;
-
-#include <dynamicsizehash.c>
-
-#undef next_prime
-#define next_prime attribute_hidden __libdwarf_next_prime
-#include "../lib/next_prime.c"
diff --git a/libdwarf/dwarf_abbrev_hash.h b/libdwarf/dwarf_abbrev_hash.h
deleted file mode 100644 (file)
index 5adc69d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Hash table for DWARF .debug_abbrev section content.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifndef _DWARF_ABBREV_HASH_H
-#define _DWARF_ABBREV_HASH_H   1
-
-#define NAME Dwarf_Abbrev_Hash
-#define TYPE Dwarf_Abbrev
-#define COMPARE(a, b) (0)
-
-#include <dynamicsizehash.h>
-
-#endif /* dwarf_abbrev_hash.h */
diff --git a/libdwarf/dwarf_arrayorder.c b/libdwarf/dwarf_arrayorder.c
deleted file mode 100644 (file)
index 6d85399..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return array ordering information associated with die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_arrayorder (die, return_order, error)
-     Dwarf_Die die;
-     Dwarf_Unsigned *return_order;
-     Dwarf_Error *error;
-{
-  return __libdwarf_getconstant (die, DW_AT_ordering, return_order, error);
-}
diff --git a/libdwarf/dwarf_attr.c b/libdwarf/dwarf_attr.c
deleted file mode 100644 (file)
index 7c1c2a9..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Return die attribute with specified of given type.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_attr (die, attr, return_attr, error)
-     Dwarf_Die die;
-     Dwarf_Half attr;
-     Dwarf_Attribute *return_attr;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (attr_name == attr)
-       {
-         Dwarf_Attribute new_attr;
-
-         new_attr =
-           (Dwarf_Attribute) malloc (sizeof (struct Dwarf_Attribute_s));
-         if (new_attr == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         new_attr->code = attr_name;
-         new_attr->form = attr_form;
-         new_attr->valp = die_addr;
-         new_attr->cu = die->cu;
-
-         *return_attr = new_attr;
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (__libdwarf_form_val_len (dbg, die->cu, attr_form, die_addr, &len,
-                                      error) != DW_DLV_OK)
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No such attribute present.  */
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_attrlist.c b/libdwarf/dwarf_attrlist.c
deleted file mode 100644 (file)
index a70abe3..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-/* Return attribute list for die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-struct attrlist
-{
-  struct attrlist *next;
-  Dwarf_Attribute attr;
-};
-
-
-int
-dwarf_attrlist (die, attrbuf, attrcount, error)
-     Dwarf_Die die;
-     Dwarf_Attribute **attrbuf;
-     Dwarf_Signed *attrcount;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-  struct attrlist *alist;
-  int nattr;
-  Dwarf_Attribute *result;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Initialize the list.  We create one because we don't know yet how
-     many attributes there will be.  */
-  alist = NULL;
-  nattr = 0;
-
-  /* Go over the list of attributes.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-      Dwarf_Attribute new_attr;
-      struct attrlist *new_alist;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         while (alist != NULL)
-           {
-             free (alist->attr);
-             alist = alist->next;
-           }
-
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Allocate the attribute data structure.  */
-      new_attr = (Dwarf_Attribute) malloc (sizeof (struct Dwarf_Attribute_s));
-      if (new_attr == NULL)
-       {
-         while (alist != NULL)
-           {
-             free (alist->attr);
-             alist = alist->next;
-           }
-
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      /* Fill in the values.  */
-      new_attr->code = attr_name;
-      new_attr->form = attr_form;
-      new_attr->valp = die_addr;
-      new_attr->cu = die->cu;
-
-      /* Enqueue.  */
-      new_alist = (struct attrlist *) alloca (sizeof (struct attrlist));
-      new_alist->attr = new_attr;
-      new_alist->next = alist;
-      alist = new_alist;
-      ++nattr;
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           {
-             while (alist != NULL)
-               {
-                 free (alist->attr);
-                 alist = alist->next;
-               }
-
-             return DW_DLV_ERROR;
-           }
-
-         die_addr += len;
-       }
-    }
-
-  if (nattr == 0)
-    {
-      *attrcount = 0;
-      *attrbuf = NULL;
-      return DW_DLV_NO_ENTRY;
-    }
-
-  /* Allocate the array for the result.  */
-  result = (Dwarf_Attribute *) malloc (nattr * sizeof (Dwarf_Attribute));
-  if (result == NULL)
-    {
-      while (alist != NULL)
-       {
-         free (alist->attr);
-         alist = alist->next;
-       }
-
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  /* Store the number of attributes and the result pointer.  */
-  *attrcount = nattr;
-  *attrbuf = result;
-
-  /* Put the attribute entries in the array (in the right order).  */
-  do
-    {
-      result[--nattr] = alist->attr;
-      alist = alist->next;
-    }
-  while (nattr > 0);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_bitoffset.c b/libdwarf/dwarf_bitoffset.c
deleted file mode 100644 (file)
index 41ea3cb..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return bit offset value associated with die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_bitoffset (die, return_size, error)
-     Dwarf_Die die;
-     Dwarf_Unsigned *return_size;
-     Dwarf_Error *error;
-{
-  return __libdwarf_getconstant (die, DW_AT_bit_offset, return_size, error);
-}
diff --git a/libdwarf/dwarf_bitsize.c b/libdwarf/dwarf_bitsize.c
deleted file mode 100644 (file)
index b58e03b..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return bit size value associated with die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_bitsize (die, return_size, error)
-     Dwarf_Die die;
-     Dwarf_Unsigned *return_size;
-     Dwarf_Error *error;
-{
-  return __libdwarf_getconstant (die, DW_AT_bit_size, return_size, error);
-}
diff --git a/libdwarf/dwarf_bytesize.c b/libdwarf/dwarf_bytesize.c
deleted file mode 100644 (file)
index 6214f4d..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return byte size value associated with die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_bytesize (die, return_size, error)
-     Dwarf_Die die;
-     Dwarf_Unsigned *return_size;
-     Dwarf_Error *error;
-{
-  return __libdwarf_getconstant (die, DW_AT_byte_size, return_size, error);
-}
diff --git a/libdwarf/dwarf_child.c b/libdwarf/dwarf_child.c
deleted file mode 100644 (file)
index 1d0120b..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Return child of die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_child (die, return_kid, error)
-     Dwarf_Die die;
-     Dwarf_Die *return_kid;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Die new_die;
-
-  if (! die->abbrev->has_children)
-    return DW_DLV_NO_ENTRY;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Skip over the attributes of the given die.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *)dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* Allocate the die structure for the result.  */
-  new_die = (Dwarf_Die) malloc (sizeof (struct Dwarf_Die_s));
-  if (new_die == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-#ifdef DWARF_DEBUG
-  new_die->memtag = DW_DLA_DIE;
-#endif
-
-  /* Remember the address.  */
-  new_die->addr = die_addr;
-
-  /* And the compile unit.  */
-  new_die->cu = die->cu;
-
-  /* 7.5.2  Debugging Information Entry
-
-     Each debugging information entry begins with an unsigned LEB128
-     number containing the abbreviation code for the entry.  */
-  get_uleb128 (u128, die_addr);
-
-  /* Find the abbreviation.  */
-  new_die->abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (new_die->abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  *return_kid = new_die;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_dealloc.c b/libdwarf/dwarf_dealloc.c
deleted file mode 100644 (file)
index 15a5543..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Deallocate memory.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-void
-dwarf_dealloc (dbg, space, alloc_type)
-     Dwarf_Debug dbg;
-     Dwarf_Ptr space;
-     Dwarf_Unsigned alloc_type;
-{
-  /* XXX For now we don't do anything fancy.  */
-  free (space);
-}
diff --git a/libdwarf/dwarf_die_CU_offset.c b/libdwarf/dwarf_die_CU_offset.c
deleted file mode 100644 (file)
index 9d6916c..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Return offset of die in compile unit data.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_die_CU_offset (die, return_offset, error)
-     Dwarf_Die die;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  *return_offset =
-    (die->addr
-     - (Dwarf_Small *) die->cu->dbg->sections[IDX_debug_info].addr
-     - die->cu->offset);
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_diename.c b/libdwarf/dwarf_diename.c
deleted file mode 100644 (file)
index 62e84c8..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/* Return string in name attribute of die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_diename (die, return_name, error)
-     Dwarf_Die die;
-     char **return_name;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *)dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (attr_name == DW_AT_name)
-       {
-         char *str;
-
-         /* We found it.  Duplicate the string and return.  There are
-             two possible forms: DW_FORM_string and DW_FORM_strp.  */
-         if (attr_form == DW_FORM_string)
-           {
-             str = (char *) die_addr;
-           }
-         else if (likely (attr_form == DW_FORM_strp))
-           {
-             Dwarf_Unsigned off;
-             Dwarf_Signed len;
-
-             if (die->cu->offset_size == 4)
-               off = read_4ubyte_unaligned (dbg, die_addr);
-             else
-               off = read_8ubyte_unaligned (dbg, die_addr);
-
-             /* This is an offset in the .debug_str section.  Make sure
-                it's within range.  */
-             if (unlikely (dwarf_get_str (dbg, off, &str, &len, error)
-                           != DW_DLV_OK))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-           }
-         else
-           {
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-
-         str = strdup (str);
-         if (str == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         *return_name = str;
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No name attribute present.  */
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_dieoffset.c b/libdwarf/dwarf_dieoffset.c
deleted file mode 100644 (file)
index a0fe394..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return offset of die in .debug_info section.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_dieoffset (die, return_offset, error)
-     Dwarf_Die die;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  *return_offset =
-    (die->addr - (Dwarf_Small *) die->cu->dbg->sections[IDX_debug_info].addr);
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_elf_init.c b/libdwarf/dwarf_elf_init.c
deleted file mode 100644 (file)
index 24444cb..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-/* Create descriptor from ELF handle for processing file.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <assert.h>
-#include <endian.h>
-#include <gelf.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-/* Section names.  */
-static const char dwarf_scnnames[IDX_last][17] =
-{
-  [IDX_debug_info] = ".debug_info",
-  [IDX_debug_abbrev] = ".debug_abbrev",
-  [IDX_debug_aranges] = ".debug_aranges",
-  [IDX_debug_line] = ".debug_line",
-  [IDX_debug_frame] = ".debug_frame",
-  [IDX_eh_frame] = ".eh_frame",
-  [IDX_debug_loc] = ".debug_loc",
-  [IDX_debug_pubnames] = ".debug_pubnames",
-  [IDX_debug_str] = ".debug_str",
-  [IDX_debug_funcnames] = ".debug_funcnames",
-  [IDX_debug_typenames] = ".debug_typenames",
-  [IDX_debug_varnames] = ".debug_varnames",
-  [IDX_debug_weaknames] = ".debug_weaknames",
-  [IDX_debug_macinfo] = ".debug_macinfo"
-};
-#define ndwarf_scnnames (sizeof (dwarf_scnnames) / sizeof (dwarf_scnnames[0]))
-
-
-int
-dwarf_elf_init (elf, access, errhand, errarg, dbg, error)
-     Elf *elf;
-     Dwarf_Unsigned access;
-     Dwarf_Handler errhand;
-     Dwarf_Ptr errarg;
-     Dwarf_Debug *dbg;
-     Dwarf_Error *error;
-{
-  int result = DW_DLV_ERROR;
-  Dwarf_Debug newdbg;
-  GElf_Ehdr ehdr_mem;
-  GElf_Ehdr *ehdr;
-  Elf_Scn *scn;
-
-  /* XXX For now nothing but read-only support is available.  */
-  if (access != DW_DLC_READ)
-    abort ();
-
-  /* Get the ELF header of the file.  We need various pieces of
-     information from it.  */
-  ehdr = gelf_getehdr (elf, &ehdr_mem);
-  if (ehdr == NULL)
-    {
-      struct Dwarf_Debug_s tmpdbg;
-
-      tmpdbg.dbg_errhand = errhand;
-      tmpdbg.dbg_errarg = errarg;
-
-      if (elf_kind (elf) != ELF_K_ELF)
-       __libdwarf_error (&tmpdbg, error, DW_E_NOELF);
-      else
-       __libdwarf_error (&tmpdbg, error, DW_E_GETEHDR_ERROR);
-
-      return result;
-    }
-
-  /* Allocate and fill the result data structure.  */
-  newdbg = (Dwarf_Debug) calloc (1, sizeof (struct Dwarf_Debug_s));
-  if (newdbg == NULL)
-    {
-      struct Dwarf_Debug_s tmpdbg;
-
-      tmpdbg.dbg_errhand = errhand;
-      tmpdbg.dbg_errarg = errarg;
-
-      __libdwarf_error (&tmpdbg, error, DW_E_NOMEM);
-    }
-  else
-    {
-      /* We have been able to allocate the memory for the debug handle.  */
-      newdbg->dbg_errhand = errhand;
-      newdbg->dbg_errarg = errarg;
-      newdbg->elf = elf;
-      if ((BYTE_ORDER == LITTLE_ENDIAN
-          && ehdr->e_ident[EI_DATA] == ELFDATA2MSB)
-         || (BYTE_ORDER == BIG_ENDIAN
-             && ehdr->e_ident[EI_DATA] == ELFDATA2LSB))
-       newdbg->other_byte_order = 1;
-      newdbg->access = access;
-#ifdef DWARF_DEBUG
-      newdbg->memtag = DW_DLA_DEBUG;
-#endif
-
-      /* All done.  */
-      *dbg = newdbg;
-      result = DW_DLV_OK;
-
-      /* Find out whether the file actually has the necessary DWARF
-         sections.  */
-      scn = NULL;
-      while ((scn = elf_nextscn (elf, scn)) != NULL)
-       {
-         GElf_Shdr shdr_mem;
-         GElf_Shdr *shdr;
-         const char *scnname;
-         size_t cnt;
-         Elf_Data *data;
-
-         /* Get the section header data.  */
-         shdr = gelf_getshdr (scn, &shdr_mem);
-         if (shdr == NULL)
-           /* This should never happen.  If it does something is
-              wrong in the libelf library.  */
-           abort ();
-
-         /* We recognize the DWARF section by their names.  This is
-            not very safe and stable but the best we can do.  */
-         scnname = elf_strptr (elf, ehdr->e_shstrndx, shdr->sh_name);
-         if (scnname == NULL)
-           {
-             /* The section name must be valid.  Otherwise is the ELF file
-                invalid.  */
-             __libdwarf_error (newdbg, error, DW_E_INVALID_ELF);
-             break;
-           }
-
-         /* Recognize the various sections.  Most names start with
-             .debug_.  */
-         for (cnt = 0; cnt < ndwarf_scnnames; ++cnt)
-           if (strcmp (scnname, dwarf_scnnames[cnt]) == 0)
-             break;
-
-         if (cnt < ndwarf_scnnames)
-           {
-             /* Found it.  Remember where the data is.  */
-             assert (cnt < IDX_last);
-             if (unlikely (newdbg->sections[cnt].addr != NULL))
-               {
-                 /* A section appears twice.  That's bad.  */
-                 __libdwarf_error (newdbg, error, DW_E_INVALID_DWARF);
-                 break;
-               }
-
-             /* Get the section data.  */
-             data = elf_getdata (scn, NULL);
-             if (data != NULL && data->d_size != 0)
-               {
-                 /* Yep, there is actually data available.  */
-                 newdbg->sections[cnt].addr = data->d_buf;
-                 newdbg->sections[cnt].size = data->d_size;
-               }
-           }
-       }
-
-      if (scn == NULL)
-       {
-         /* We looked at all the sections.  Now determine whether all
-            the sections with debugging information we need are there.
-
-            XXX Which sections are absolutely necessary?  Add tests
-            if necessary.  For now we require only .debug_info.  Hopefully
-            this is correct.  */
-         if (newdbg->sections[IDX_debug_info].addr == NULL)
-           {
-             __libdwarf_error (newdbg, error, DW_E_NO_DWARF);
-             result = DW_DLV_NO_ENTRY;
-           }
-         else
-           result = DW_DLV_OK;
-       }
-
-      if (result != DW_DLV_OK)
-       /* Something went wrong.  */
-       free (newdbg);
-    }
-
-  return result;
-}
diff --git a/libdwarf/dwarf_errmsg.c b/libdwarf/dwarf_errmsg.c
deleted file mode 100644 (file)
index a6ff176..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Return error message.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-/* Map error values to strings.  */
-/* XXX This table should avoid string pointers.  Fixing it can wait
-   until the code is stable.  */
-static const char *msgs[] =
-{
-  [DW_E_NOERROR] = N_("no error"),
-  [DW_E_INVALID_ACCESS] = N_("invalid access mode"),
-  [DW_E_NO_REGFILE] = N_("no regular file"),
-  [DW_E_IO_ERROR] = N_("I/O error"),
-  [DW_E_NOMEM] = N_("out of memory"),
-  [DW_E_NOELF] = N_("file is not an ELF file"),
-  [DW_E_GETEHDR_ERROR] = N_("getehdr call failed"),
-  [DW_E_INVALID_ELF] = N_("invalid ELF file"),
-  [DW_E_INVALID_DWARF] = N_("invalid DWARF debugging information"),
-  [DW_E_NO_DWARF] = N_("no DWARF debugging information available"),
-  [DW_E_NO_CU] = N_("no compilation unit"),
-  [DW_E_1ST_NO_CU] = N_("first die is no compile unit die"),
-  [DW_E_INVALID_OFFSET] = N_("invalid offset"),
-  [DW_E_INVALID_REFERENCE] = N_("invalid reference form"),
-  [DW_E_NO_REFERENCE] = N_("no reference form"),
-  [DW_E_NO_ADDR] = N_("no address form"),
-  [DW_E_NO_FLAG] = N_("no flag form"),
-  [DW_E_NO_CONSTANT] = N_("no constant form"),
-  [DW_E_NO_BLOCK] = N_("no block form"),
-  [DW_E_NO_STRING] = N_("no string form"),
-  [DW_E_WRONG_ATTR] = N_("wrong attribute code"),
-  [DW_E_NO_DATA] = N_("no data form"),
-  [DW_E_NO_DEBUG_LINE] = N_(".debug_line section missing"),
-  [DW_E_VERSION_ERROR] = N_("version mismatch"),
-  [DW_E_INVALID_DIR_IDX] = N_("invalid directory index"),
-  [DW_E_INVALID_ADDR] = N_("invalid address"),
-  [DW_E_NO_ABBR] = N_("no valid abbreviation"),
-};
-#define nmsgs (sizeof (msgs) / sizeof (msgs[0]))
-
-
-const char *
-dwarf_errmsg (Dwarf_Error error)
-{
-  const char *retval = N_("unknown error");
-
-  if (error->de_error < nmsgs)
-    retval = msgs[error->de_error];
-
-  return _(retval);
-}
diff --git a/libdwarf/dwarf_errno.c b/libdwarf/dwarf_errno.c
deleted file mode 100644 (file)
index 2dcea5b..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Return error value.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-Dwarf_Unsigned
-dwarf_errno (Dwarf_Error error)
-{
-  return error->de_error;
-}
diff --git a/libdwarf/dwarf_error.c b/libdwarf/dwarf_error.c
deleted file mode 100644 (file)
index ab6df51..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/* Handle error.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <assert.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-#include <system.h>
-
-
-void
-internal_function
-__libdwarf_error (Dwarf_Debug dbg, Dwarf_Error *error, int errval)
-{
-  /* Allocate memory for the error structure given to the user.  */
-  Dwarf_Error errmem = (Dwarf_Error) malloc (sizeof (*error));
-  /* We cannot report an error if we cannot allocate memory.  */
-  if (errmem == NULL)
-    return;
-
-  errmem->de_error = errval;
-
-  /* DBG must never be NULL.  */
-  assert (dbg != NULL);
-
-  if (error != NULL)
-    /* If the user provides an ERROR parameter we have to use it.  */
-    *error = errmem;
-  else if (likely (dbg->dbg_errhand != NULL))
-    /* Use the handler the user provided if possible.  */
-    dbg->dbg_errhand (error, dbg->dbg_errarg);
-  else
-    {
-      assert (! "error and dbg->dbg_errhand == NULL");
-      abort ();
-    }
-}
diff --git a/libdwarf/dwarf_find_macro_value_start.c b/libdwarf/dwarf_find_macro_value_start.c
deleted file mode 100644 (file)
index 78eea5b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Find start of macro value.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarf.h>
-
-
-char *
-dwarf_find_macro_value_start (macro_string)
-     char *macro_string;
-{
-  int with_paren = 0;
-
-  while (*macro_string != '\0')
-    {
-      if (*macro_string == '(')
-       with_paren = 1;
-      else if (*macro_string == ')')
-       /* After the closing parenthesis there must be a space.  */
-       return macro_string + 2;
-      else if (*macro_string == ' ' && ! with_paren)
-       /* Not a function like macro and we found the space terminating
-          the name.  */
-       return macro_string + 1;
-
-      ++macro_string;
-    }
-
-  /* The macro has no value.  Return a pointer to the NUL byte.  */
-  return macro_string;
-}
diff --git a/libdwarf/dwarf_finish.c b/libdwarf/dwarf_finish.c
deleted file mode 100644 (file)
index 64f0559..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Free resources allocated for debug handle.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_finish (dbg, error)
-     Dwarf_Debug dbg;
-     Dwarf_Error *error;
-{
-  if (dbg == NULL)
-    return DW_DLV_ERROR;
-
-#ifdef DWARF_DEBUG
-  if (dbg->memtag != DW_DLA_DEBUG)
-    return DW_DLV_ERROR;
-#endif
-
-  free (dbg);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_form.c b/libdwarf/dwarf_form.c
deleted file mode 100644 (file)
index eb803b1..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Helper functions for form handling.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-internal_function
-__libdwarf_form_val_len (Dwarf_Debug dbg, Dwarf_CU_Info cu, Dwarf_Word form,
-                        Dwarf_Small *valp, size_t *len, Dwarf_Error *error)
-{
-  Dwarf_Small *saved;
-  Dwarf_Word u128;
-
-  switch (form)
-    {
-    case DW_FORM_addr:
-    case DW_FORM_strp:
-    case DW_FORM_ref_addr:
-      *len = cu->address_size;
-      break;
-
-    case DW_FORM_block1:
-      *len = *valp + 1;
-      break;
-
-    case DW_FORM_block2:
-      *len = read_2ubyte_unaligned (dbg, valp) + 2;
-      break;
-
-    case DW_FORM_block4:
-      *len = read_4ubyte_unaligned (dbg, valp) + 4;
-      break;
-
-    case DW_FORM_block:
-      saved = valp;
-      get_uleb128 (u128, valp);
-      *len = u128 + (valp - saved);
-      break;
-
-    case DW_FORM_ref1:
-    case DW_FORM_data1:
-    case DW_FORM_flag:
-      *len = 1;
-      break;
-
-    case DW_FORM_data2:
-    case DW_FORM_ref2:
-      *len = 2;
-      break;
-
-    case DW_FORM_data4:
-    case DW_FORM_ref4:
-      *len = 4;
-      break;
-
-    case DW_FORM_data8:
-    case DW_FORM_ref8:
-      *len = 8;
-      break;
-
-    case DW_FORM_string:
-      *len = strlen ((char *) valp) + 1;
-      break;
-
-    case DW_FORM_sdata:
-    case DW_FORM_udata:
-    case DW_FORM_ref_udata:
-      saved = valp;
-      get_uleb128 (u128, valp);
-      *len = valp - saved;
-      break;
-
-    case DW_FORM_indirect:
-      saved = valp;
-      get_uleb128 (u128, valp);
-      if (__libdwarf_form_val_len (dbg, cu, u128, valp, len, error)
-         != DW_DLV_OK)
-       return DW_DLV_ERROR;
-      *len += valp - saved;
-      break;
-
-    default:
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formaddr.c b/libdwarf/dwarf_formaddr.c
deleted file mode 100644 (file)
index 5c46bf7..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Return address represented by attribute.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formaddr (attr, return_addr, error)
-     Dwarf_Attribute attr;
-     Dwarf_Addr *return_addr;
-     Dwarf_Error *error;
-{
-  if (unlikely (attr->form != DW_FORM_addr))
-    {
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_ADDR);
-      return DW_DLV_ERROR;
-    }
-
-  if (attr->cu->address_size == 4)
-    *return_addr = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-  else
-    *return_addr = read_8ubyte_unaligned (attr->cu->dbg, attr->valp);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formblock.c b/libdwarf/dwarf_formblock.c
deleted file mode 100644 (file)
index d9d2dc9..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Return block of uninterpreted data represented by attribute.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formblock (attr, return_block, error)
-     Dwarf_Attribute attr;
-     Dwarf_Block **return_block;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *attrp = attr->valp;
-  Dwarf_Unsigned len;
-  Dwarf_Ptr *data;
-  Dwarf_Block *result;
-
-  switch (attr->form)
-    {
-    case DW_FORM_block1:
-      len = *attrp;
-      data = (Dwarf_Ptr) (attrp + 1);
-      break;
-
-    case DW_FORM_block2:
-      len = read_2ubyte_unaligned (attr->cu->dbg, attrp);
-      data = (Dwarf_Ptr) (attrp + 2);
-      break;
-
-    case DW_FORM_block4:
-      len = read_4ubyte_unaligned (attr->cu->dbg, attrp);
-      data = (Dwarf_Ptr) (attrp + 2);
-      break;
-
-    case DW_FORM_block:
-      get_uleb128 (len, attrp);
-      data = (Dwarf_Ptr) attrp;
-      break;
-
-    default:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_BLOCK);
-      return DW_DLV_ERROR;
-    }
-
-  /* Allocate memory for the result.  */
-  result = (Dwarf_Block *) malloc (sizeof (Dwarf_Block));
-  if (result == NULL)
-    {
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  result->bl_len = len;
-  result->bl_data = data;
-
-  *return_block = result;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formflag.c b/libdwarf/dwarf_formflag.c
deleted file mode 100644 (file)
index c38d135..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Return flag represented by attribute.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formflag (attr, return_bool, error)
-     Dwarf_Attribute attr;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  if (unlikely (attr->form != DW_FORM_flag))
-    {
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_FLAG);
-      return DW_DLV_ERROR;
-    }
-
-  *return_bool = attr->valp != 0;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formref.c b/libdwarf/dwarf_formref.c
deleted file mode 100644 (file)
index 401a14f..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Return compile-unit relative offset of reference associated with form.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formref (attr, return_offset, error)
-     Dwarf_Attribute attr;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  switch (attr->form)
-    {
-    case DW_FORM_ref1:
-      *return_offset = *attr->valp;
-      break;
-
-    case DW_FORM_ref2:
-      *return_offset = read_2ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_ref4:
-      *return_offset = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_ref8:
-      *return_offset = read_8ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_ref_udata:
-      {
-       Dwarf_Off off;
-       Dwarf_Small *attrp = attr->valp;
-       get_uleb128 (off, attrp);
-       *return_offset = off;
-      }
-      break;
-
-    case DW_FORM_ref_addr:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_INVALID_REFERENCE);
-      return DW_DLV_ERROR;
-
-    default:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_REFERENCE);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formsdata.c b/libdwarf/dwarf_formsdata.c
deleted file mode 100644 (file)
index 0803e8d..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Return signed constant represented by attribute.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formsdata (attr, return_sval, error)
-     Dwarf_Attribute attr;
-     Dwarf_Signed *return_sval;
-     Dwarf_Error *error;
-{
-  Dwarf_Signed u128;
-
-  switch (attr->form)
-    {
-    case DW_FORM_data1:
-      *return_sval = *attr->valp;
-      break;
-
-    case DW_FORM_data2:
-      *return_sval = read_2ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_data4:
-      *return_sval = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_data8:
-      *return_sval = read_8ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_sdata:
-      {
-       Dwarf_Small *attrp = attr->valp;
-       get_sleb128 (u128, attrp);
-       *return_sval = u128;
-      }
-      break;
-
-    case DW_FORM_udata:
-      {
-       Dwarf_Small *attrp = attr->valp;
-       get_uleb128 (u128, attrp);
-       *return_sval = u128;
-      }
-      break;
-
-    default:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_CONSTANT);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formstring.c b/libdwarf/dwarf_formstring.c
deleted file mode 100644 (file)
index 7b053b7..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Return string represented by attribute.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formstring (attr, return_string, error)
-     Dwarf_Attribute attr;
-     char **return_string;
-     Dwarf_Error *error;
-{
-  char *result;
-
-  if (attr->form == DW_FORM_string)
-    result = (char *) attr->valp;
-  else if (likely (attr->form == DW_FORM_strp))
-    {
-      Dwarf_Unsigned offset;
-
-      offset = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-
-      result = (char *) attr->cu->dbg->sections[IDX_debug_str].addr + offset;
-    }
-  else
-    {
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_STRING);
-      return DW_DLV_ERROR;
-    }
-
-  *return_string = result;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_formudata.c b/libdwarf/dwarf_formudata.c
deleted file mode 100644 (file)
index 5c842d2..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/* Return unsigned constant represented by attribute.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_formudata (attr, return_uval, error)
-     Dwarf_Attribute attr;
-     Dwarf_Unsigned *return_uval;
-     Dwarf_Error *error;
-{
-  Dwarf_Unsigned u128;
-
-  switch (attr->form)
-    {
-    case DW_FORM_data1:
-      *return_uval = *attr->valp;
-      break;
-
-    case DW_FORM_data2:
-      *return_uval = read_2ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_data4:
-      *return_uval = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_data8:
-      *return_uval = read_8ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    case DW_FORM_sdata:
-      {
-       Dwarf_Small *attrp = attr->valp;
-       get_sleb128 (u128, attrp);
-       *return_uval = u128;
-      }
-      break;
-
-    case DW_FORM_udata:
-      {
-       Dwarf_Small *attrp = attr->valp;
-       get_uleb128 (u128, attrp);
-       *return_uval = u128;
-      }
-      break;
-
-    default:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_CONSTANT);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_abbrev.c b/libdwarf/dwarf_get_abbrev.c
deleted file mode 100644 (file)
index 36bb9a0..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Get abbreviation record.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_abbrev (dbg, offset, return_abbrev, length, attr_count, error)
-     Dwarf_Debug dbg;
-     Dwarf_Unsigned offset;
-     Dwarf_Abbrev *return_abbrev;
-     Dwarf_Unsigned *length;
-     Dwarf_Unsigned *attr_count;
-     Dwarf_Error *error;
-{
-  Dwarf_Abbrev ent;
-  Dwarf_Small *abbrevp;
-  Dwarf_Small *start_abbrevp;
-
-  /* Address in memory.  */
-  abbrevp = (Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr + offset;
-
-  /* Remember where we started.  */
-  start_abbrevp = abbrevp;
-
-  if (*abbrevp != '\0')
-    {
-      /* 7.5.3 Abbreviations Tables
-
-        [...] Each declaration begins with an unsigned LEB128 number
-        representing the abbreviation code itself.  [...]  The
-        abbreviation code is followed by another unsigned LEB128
-        number that encodes the entry's tag.  [...]
-
-        [...] Following the tag encoding is a 1-byte value that
-        determines whether a debugging information entry using this
-        abbreviation has child entries or not. [...]
-
-        [...] Finally, the child encoding is followed by a series of
-        attribute specifications. Each attribute specification
-        consists of two parts. The first part is an unsigned LEB128
-        number representing the attribute's name. The second part is
-        an unsigned LEB128 number representing the attribute s form.  */
-      Dwarf_Word abbrev_code;
-      Dwarf_Word abbrev_tag;
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-      Dwarf_Unsigned attrcnt;
-
-      /* XXX We have no tests for crossing the section boundary here.
-        We should compare with dbg->sections[IDX_debug_abbrev].size.  */
-      get_uleb128 (abbrev_code, abbrevp);
-      get_uleb128 (abbrev_tag, abbrevp);
-
-      /* Get memory for the result.  */
-      ent = (Dwarf_Abbrev) malloc (sizeof (struct Dwarf_Abbrev_s));
-      if (ent == NULL)
-       {
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      ent->code = abbrev_code;
-      ent->tag = abbrev_tag;
-      ent->has_children = *abbrevp++ == DW_CHILDREN_yes;
-      ent->attrp = abbrevp;
-      ent->offset = offset;
-
-      /* Skip over all the attributes.  */
-      attrcnt = 0;
-      do
-       {
-         get_uleb128 (attr_name, abbrevp);
-         get_uleb128 (attr_form, abbrevp);
-       }
-      while (attr_name != 0 && attr_form != 0 && ++attrcnt);
-
-      /* Number of attributes.  */
-      *attr_count = ent->attrcnt = attrcnt;
-
-      /* Store the actual abbreviation record.  */
-      *return_abbrev = ent;
-    }
-  else
-    /* Read over the NUL byte.  */
-    ++abbrevp;
-
-  /* Length of the entry.  */
-  *length = abbrevp - start_abbrevp;
-
-  /* If we come here we haven't found anything.  */
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_abbrev_children_flag.c b/libdwarf/dwarf_get_abbrev_children_flag.c
deleted file mode 100644 (file)
index e0c84de..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Get children flag of abbreviation record.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int dwarf_get_abbrev_children_flag (abbrev, return_flag, error)
-     Dwarf_Abbrev abbrev;
-     Dwarf_Signed *return_flag;
-     Dwarf_Error *error;
-{
-  *return_flag = abbrev->has_children;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_abbrev_code.c b/libdwarf/dwarf_get_abbrev_code.c
deleted file mode 100644 (file)
index 32e4903..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Get code of abbreviation record.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int dwarf_get_abbrev_code (abbrev, return_code, error)
-     Dwarf_Abbrev abbrev;
-     Dwarf_Unsigned *return_code;
-     Dwarf_Error *error;
-{
-  *return_code = abbrev->code;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_abbrev_entry.c b/libdwarf/dwarf_get_abbrev_entry.c
deleted file mode 100644 (file)
index f71632a..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Get attribute from abbreviation record.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_abbrev_entry (abbrev, idx, attr_num, form, offset, error)
-     Dwarf_Abbrev abbrev;
-     Dwarf_Signed idx;
-     Dwarf_Half *attr_num;
-     Dwarf_Signed *form;
-     Dwarf_Off *offset;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *attrp;
-  Dwarf_Small *start_attrp;
-  Dwarf_Word attr_name;
-  Dwarf_Word attr_form;
-
-  if (idx < 0)
-    return DW_DLV_NO_ENTRY;
-
-  /* Address in memory.  */
-  attrp = abbrev->attrp;
-
-  /* Read the attributes, skip over the ones we don't want.  */
-  do
-    {
-      start_attrp = attrp;
-
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      if (attr_name == 0 || attr_form == 0)
-       return DW_DLV_NO_ENTRY;
-    }
-  while (idx-- > 0);
-
-  *attr_num = attr_name;
-  *form = attr_form;
-  *offset = (start_attrp - abbrev->attrp) + abbrev->offset;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_abbrev_tag.c b/libdwarf/dwarf_get_abbrev_tag.c
deleted file mode 100644 (file)
index f5e7fcf..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Get tag of abbreviation record.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int dwarf_get_abbrev_tag (abbrev, return_tag, error)
-     Dwarf_Abbrev abbrev;
-     Dwarf_Half *return_tag;
-     Dwarf_Error *error;
-{
-  *return_tag = abbrev->tag;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_address_size.c b/libdwarf/dwarf_get_address_size.c
deleted file mode 100644 (file)
index aa98997..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return address size.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_address_size (dbg, addr_size, error)
-     Dwarf_Debug dbg;
-     Dwarf_Half *addr_size;
-     Dwarf_Error *error;
-{
-  *addr_size = elf_getident (dbg->elf, NULL)[EI_CLASS] == ELFCLASS64 ? 8 : 4;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_arange.c b/libdwarf/dwarf_get_arange.c
deleted file mode 100644 (file)
index c524219..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/* Find matching range for address.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_arange (aranges, arange_count, address, return_arange, error)
-     Dwarf_Arange *aranges;
-     Dwarf_Unsigned arange_count;
-     Dwarf_Addr address;
-     Dwarf_Arange *return_arange;
-     Dwarf_Error *error;
-{
-  Dwarf_Unsigned cnt;
-
-  for (cnt = 0; cnt < arange_count; ++cnt)
-    if (aranges[cnt]->address <= address
-       && address < aranges[cnt]->address + aranges[cnt]->length)
-      {
-       *return_arange = aranges[cnt];
-       return DW_DLV_OK;
-      }
-
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_get_arange_info.c b/libdwarf/dwarf_get_arange_info.c
deleted file mode 100644 (file)
index 91a5d27..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Return start, length, and CU DIE offset of range.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_arange_info (arange, start, length, cu_die_offset, error)
-     Dwarf_Arange arange;
-     Dwarf_Addr *start;
-     Dwarf_Unsigned *length;
-     Dwarf_Off *cu_die_offset;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *cu_header;
-  unsigned int offset_size;
-
-  *start = arange->address;
-  *length = arange->length;
-
-  /* Determine the size of the CU header.  */
-  cu_header =
-    ((Dwarf_Small *) arange->info->dbg->sections[IDX_debug_info].addr
-     + arange->info->offset);
-  if (read_4ubyte_unaligned_noncvt (cu_header) == 0xffffffff)
-    offset_size = 8;
-  else
-    offset_size = 4;
-
-  *cu_die_offset = arange->info->offset + 3 * offset_size - 4 + 3;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_aranges.c b/libdwarf/dwarf_get_aranges.c
deleted file mode 100644 (file)
index 1c09229..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-/* Return list address ranges.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-struct arangelist
-{
-  Dwarf_Arange arange;
-  struct arangelist *next;
-};
-
-
-int
-dwarf_get_aranges (dbg, aranges, return_count, error)
-     Dwarf_Debug dbg;
-     Dwarf_Arange **aranges;
-     Dwarf_Signed *return_count;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *readp;
-  Dwarf_Small *readendp;
-  struct arangelist *arangelist = NULL;
-  unsigned int narangelist = 0;
-
-  if (dbg->sections[IDX_debug_aranges].addr == NULL)
-    return DW_DLV_NO_ENTRY;
-
-  readp = (Dwarf_Small *) dbg->sections[IDX_debug_aranges].addr;
-  readendp = readp + dbg->sections[IDX_debug_aranges].size;
-
-  while (readp < readendp)
-    {
-      Dwarf_Small *hdrstart = readp;
-      Dwarf_Unsigned length;
-      unsigned int length_bytes;
-      unsigned int version;
-      Dwarf_Unsigned offset;
-      unsigned int address_size;
-      unsigned int segment_size;
-      Dwarf_Arange_Info arange_info;
-
-      /* Each entry starts with a header:
-
-        1. A 4-byte or 12-byte length containing the length of the
-        set of entries for this compilation unit, not including the
-        length field itself. [...]
-
-        2. A 2-byte version identifier containing the value 2 for
-        DWARF Version 2.1.
-
-        3. A 4-byte or 8-byte offset into the .debug_info section. [...]
-
-        4. A 1-byte unsigned integer containing the size in bytes of
-        an address (or the offset portion of an address for segmented
-        addressing) on the target system.
-
-        5. A 1-byte unsigned integer containing the size in bytes of
-        a segment descriptor on the target system.  */
-      length = read_4ubyte_unaligned (dbg, readp);
-      readp += 4;
-      length_bytes = 4;
-      if (length == 0xffffffff)
-       {
-         length = read_8ubyte_unaligned (dbg, readp);
-         readp += 8;
-         length_bytes = 8;
-       }
-
-      version = read_2ubyte_unaligned (dbg, readp);
-      readp += 2;
-      if (version != 2)
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      if (length_bytes == 4)
-       offset = read_4ubyte_unaligned (dbg, readp);
-      else
-       offset = read_8ubyte_unaligned (dbg, readp);
-      readp += length_bytes;
-
-      address_size = *readp++;
-      segment_size = *readp++;
-
-      /* Round the address to the next multiple of 2*address_size.  */
-      readp += ((2 * address_size - ((readp - hdrstart) % (2 * address_size)))
-               % (2 * address_size));
-
-      arange_info =
-       (Dwarf_Arange_Info) malloc (sizeof (struct Dwarf_Arange_s));
-      if (arange_info == NULL)
-       {
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      arange_info->dbg = dbg;
-      arange_info->offset = offset;
-
-      while (1)
-       {
-         Dwarf_Unsigned range_address;
-         Dwarf_Unsigned range_length;
-         struct arangelist *new_arange;
-
-         if (address_size == 4)
-           {
-             range_address = read_4ubyte_unaligned (dbg, readp);
-             readp += 4;
-             range_length = read_4ubyte_unaligned (dbg, readp);
-             readp += 4;
-           }
-         else if (likely (address_size == 8))
-           {
-             range_address = read_8ubyte_unaligned (dbg, readp);
-             readp += 8;
-             range_length = read_8ubyte_unaligned (dbg, readp);
-             readp += 8;
-           }
-         else
-           abort ();
-
-         /* Two zero values mark the end.  */
-         if (range_address == 0 && range_length == 0)
-           break;
-
-         new_arange =
-           (struct arangelist *) alloca (sizeof (struct arangelist));
-         new_arange->arange =
-           (Dwarf_Arange) malloc (sizeof (struct Dwarf_Arange_s));
-         if (new_arange->arange == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         new_arange->arange->address = range_address;
-         new_arange->arange->length = range_length;
-         new_arange->arange->info = arange_info;
-
-         new_arange->next = arangelist;
-         arangelist = new_arange;
-         ++narangelist;
-       }
-    }
-
-  if (narangelist == 0)
-    return DW_DLV_NO_ENTRY;
-
-  /* Allocate the array for the result.  */
-  *return_count = narangelist;
-  *aranges = (Dwarf_Arange *) malloc (narangelist
-                                     * sizeof (struct Dwarf_Arange_s));
-  if (*aranges == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  while (narangelist-- > 0)
-    {
-      (*aranges)[narangelist] = arangelist->arange;
-      arangelist = arangelist->next;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_cie_info.c b/libdwarf/dwarf_get_cie_info.c
deleted file mode 100644 (file)
index 8c74908..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Get information about CIE.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_cie_info (cie, bytes_in_cie, version, augmenter,
-                   code_alignment_factor, data_alignment_factor,
-                   return_address_register, initial_instructions,
-                   initial_instructions_length, error)
-     Dwarf_Cie cie;
-     Dwarf_Unsigned *bytes_in_cie;
-     Dwarf_Small *version;
-     char **augmenter;
-     Dwarf_Unsigned *code_alignment_factor;
-     Dwarf_Signed *data_alignment_factor;
-     Dwarf_Half *return_address_register;
-     Dwarf_Ptr *initial_instructions;
-     Dwarf_Unsigned *initial_instructions_length;
-     Dwarf_Error *error;
-{
-  *bytes_in_cie = cie->length;
-
-  *version = CIE_VERSION;
-
-  *augmenter = cie->augmentation;
-
-  *code_alignment_factor = cie->code_alignment_factor;
-  *data_alignment_factor = cie->data_alignment_factor;
-
-  *return_address_register = cie->return_address_register;
-
-  *initial_instructions = cie->initial_instructions;
-  *initial_instructions_length = cie->initial_instructions_length;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_cie_of_fde.c b/libdwarf/dwarf_get_cie_of_fde.c
deleted file mode 100644 (file)
index e555073..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Get CIE of FDE.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_cie_of_fde (fde, return_cie, error)
-     Dwarf_Fde fde;
-     Dwarf_Cie *return_cie;
-     Dwarf_Error *error;
-{
-  *return_cie = fde->cie;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_cu_die_offset.c b/libdwarf/dwarf_get_cu_die_offset.c
deleted file mode 100644 (file)
index eebc534..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Return offset of compile unit DIE containing the range.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_cu_die_offset (arange, return_offset, error)
-     Dwarf_Arange arange;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *cu_header;
-  unsigned int offset_size;
-
-  /* Determine the size of the CU header.  */
-  cu_header =
-    ((Dwarf_Small *) arange->info->dbg->sections[IDX_debug_info].addr
-     + arange->info->offset);
-  if (read_4ubyte_unaligned_noncvt (cu_header) == 0xffffffff)
-    offset_size = 8;
-  else
-    offset_size = 4;
-
-  *return_offset = arange->info->offset + 3 * offset_size - 4 + 3;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_elf.c b/libdwarf/dwarf_get_elf.c
deleted file mode 100644 (file)
index a034b41..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Return ELF handle.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_elf_init (dbg, elf, error)
-     Dwarf_Debug dbg;
-     Elf **elf;
-     Dwarf_Error *error;
-{
-  if (dbg == NULL)
-    return DW_DLV_ERROR;
-
-  *elf = dbg->elf;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_fde_at_pc.c b/libdwarf/dwarf_get_fde_at_pc.c
deleted file mode 100644 (file)
index d14caf2..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Find FDE for given address.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int
-dwarf_get_fde_at_pc (fde_data, pc_of_interest, returned_fde, lopc, hipc, error)
-     Dwarf_Fde *fde_data;
-     Dwarf_Addr pc_of_interest;
-     Dwarf_Fde *returned_fde;
-     Dwarf_Addr *lopc;
-     Dwarf_Addr *hipc;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = fde_data[0]->cie->dbg;
-  int low = 0;
-  int high = dbg->fde_cnt - 1;
-
-  /* Since the FDEs are sorted by their addresses and since there can
-     potentially be many FDEs we better use binary search.  */
-  while (low <= high)
-    {
-      int curidx = (low + high) / 2;
-      Dwarf_Fde cur = fde_data[curidx];
-
-      if (pc_of_interest < cur->initial_location)
-       high = curidx - 1;
-      else if (likely (cur->initial_location + cur->address_range
-                      <= pc_of_interest))
-       low = curidx + 1;
-      else
-       {
-         *returned_fde = cur;
-         *lopc = cur->initial_location;
-         *hipc = cur->initial_location + cur->address_range - 1;
-         return DW_DLV_OK;
-       }
-    }
-
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_get_fde_instr_bytes.c b/libdwarf/dwarf_get_fde_instr_bytes.c
deleted file mode 100644 (file)
index 9ffd7c4..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Get frame construction instructions of FDE.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_get_fde_instr_bytes (fde, outinstrs, outlen, error)
-     Dwarf_Fde fde;
-     Dwarf_Ptr *outinstrs;
-     Dwarf_Unsigned *outlen;
-     Dwarf_Error *error;
-{
-  *outinstrs = fde->instructions;
-  *outlen = fde->instructions_length;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_fde_list_eh.c b/libdwarf/dwarf_get_fde_list_eh.c
deleted file mode 100644 (file)
index 5282a62..0000000
+++ /dev/null
@@ -1,375 +0,0 @@
-/* Get frame descriptions.  GCC version using .eh_frame.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-struct cielist
-{
-  Dwarf_Cie cie;
-  struct cielist *next;
-};
-
-
-struct fdelist
-{
-  Dwarf_Fde fde;
-  Dwarf_Small *cie_id_ptr;
-  struct fdelist *next;
-};
-
-
-int
-dwarf_get_fde_list_eh (dbg, cie_data, cie_element_count, fde_data,
-                      fde_element_count, error)
-     Dwarf_Debug dbg;
-     Dwarf_Cie **cie_data;
-     Dwarf_Signed *cie_element_count;
-     Dwarf_Fde **fde_data;
-     Dwarf_Signed *fde_element_count;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *readp;
-  Dwarf_Small *readendp;
-  struct cielist *cielist = NULL;
-  struct cielist *copy_cielist;
-  unsigned int ncielist = 0;
-  struct fdelist *fdelist = NULL;
-  unsigned int nfdelist = 0;
-
-  if (dbg->sections[IDX_eh_frame].addr == NULL)
-    return DW_DLV_NO_ENTRY;
-
-  readp = (Dwarf_Small *) dbg->sections[IDX_eh_frame].addr;
-  readendp = readp + dbg->sections[IDX_eh_frame].size;
-
-  while (readp < readendp)
-    {
-      /* Each CIE contains the following:
-
-        1. CIE_length (initial length)
-
-        A constant that gives the number of bytes of the CIE
-        structure, not including the length field, itself [...].
-
-        2. CIE_id
-
-        A constant that is used to distinguish CIEs from FDEs.
-
-        3. version (ubyte) [...]
-
-        4. augmentation (array of ubyte)
-
-        A null-terminated string that identifies the augmentation to
-        this CIE or to the FDEs that use it.
-
-        5. code_alignment_factor (unsigned LEB128)
-
-        A constant that is factored out of all advance location
-        instructions (see below).
-
-        6. data_alignment_factor (signed LEB128)
-
-        A constant that is factored out of all offset instructions
-        [...].
-
-        7. return_address_register (ubyte)
-
-        A constant that indicates which column in the rule table
-        represents the return address of the function.
-
-        8. initial_instructions (array of ubyte) [...] */
-      Dwarf_Small *fde_cie_start;
-      Dwarf_Small *readstartp;
-      Dwarf_Small *cie_id_ptr;
-      Dwarf_Unsigned length;
-      unsigned int address_size;
-      Dwarf_Unsigned start_offset;
-      Dwarf_Unsigned cie_id;
-
-      /* Remember where this entry started.  */
-      fde_cie_start = readp;
-      start_offset = (readp
-                     - (Dwarf_Small *) dbg->sections[IDX_eh_frame].addr);
-
-      length = read_4ubyte_unaligned (dbg, readp);
-      address_size = 4;
-      readp += 4;
-      if (length == 0xffffffff)
-       {
-         length = read_8ubyte_unaligned (dbg, readp);
-         readp += 8;
-         address_size = 8;
-       }
-      readstartp = readp;
-
-      /* Requirement from the DWARF specification.  */
-      if (unlikely (length % address_size != 0))
-       {
-         /* XXX Free resources.  */
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* No more entries.  */
-      if (length == 0)
-       break;
-
-      cie_id_ptr = readp;
-      if (address_size == 4)
-       {
-         cie_id = read_4sbyte_unaligned (dbg, readp);
-         readp += 4;
-       }
-      else
-       {
-         cie_id = read_8sbyte_unaligned (dbg, readp);
-         readp += 8;
-       }
-
-      /* Now we can distinguish between CIEs and FDEs.  gcc uses 0 to
-        signal the record is a CIE.  */
-      if (cie_id == 0)
-       {
-         char *augmentation;
-         Dwarf_Unsigned code_alignment_factor;
-         Dwarf_Signed data_alignment_factor;
-         Dwarf_Small *initial_instructions;
-         Dwarf_Small return_address_register;
-         struct cielist *new_cie;
-
-         if (unlikely (*readp++ != CIE_VERSION))
-           {
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-
-         augmentation = (char *) readp;
-         readp += strlen (augmentation) + 1;
-
-         if (strcmp (augmentation, "") == 0)
-           {
-             get_uleb128 (code_alignment_factor, readp);
-             get_sleb128 (data_alignment_factor, readp);
-             return_address_register = *readp++;
-             initial_instructions = readp;
-           }
-         else if (strcmp (augmentation, "eh") == 0)
-           {
-             /* GCC exception handling.  It has an extra field next
-                which is the address of a exception table.  We ignore
-                this value since it's only used at runtime by the
-                exception handling.  */
-             readp += address_size;
-
-             /* Now the standard fields.  */
-             get_uleb128 (code_alignment_factor, readp);
-             get_sleb128 (data_alignment_factor, readp);
-             return_address_register = *readp++;
-             initial_instructions = readp;
-           }
-         else
-           {
-             /* We don't know this augmentation.  Skip the rest.  The
-                specification says that nothing after the augmentation
-                string is usable.  */
-             code_alignment_factor = 0;
-             data_alignment_factor = 0;
-             return_address_register = 0;
-             initial_instructions = NULL;
-           }
-
-         /* Go to the next record.  */
-         readp = readstartp + length;
-
-         /* Create the new CIE record.  */
-         new_cie = (struct cielist *) alloca (sizeof (struct cielist));
-         new_cie->cie = (Dwarf_Cie) malloc (sizeof (struct Dwarf_Cie_s));
-         if (new_cie->cie == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         new_cie->cie->dbg = dbg;
-         new_cie->cie->length = length;
-         new_cie->cie->augmentation = augmentation;
-         new_cie->cie->code_alignment_factor = code_alignment_factor;
-         new_cie->cie->data_alignment_factor = data_alignment_factor;
-         new_cie->cie->return_address_register = return_address_register;
-         new_cie->cie->initial_instructions = initial_instructions;
-         new_cie->cie->initial_instructions_length =
-           readp - initial_instructions;
-
-         new_cie->cie->offset = start_offset;
-         new_cie->cie->index = ncielist;
-         new_cie->next = cielist;
-         cielist = new_cie;
-         ++ncielist;
-       }
-      else
-       {
-         Dwarf_Addr initial_location;
-         Dwarf_Unsigned address_range;
-         Dwarf_Small *instructions;
-         struct fdelist *new_fde;
-         struct cielist *cie;
-
-         if (address_size == 4)
-           {
-             initial_location = read_4ubyte_unaligned (dbg, readp);
-             readp += 4;
-             address_range = read_4ubyte_unaligned (dbg, readp);
-             readp += 4;
-           }
-         else
-           {
-             initial_location = read_8ubyte_unaligned (dbg, readp);
-             readp += 8;
-             address_range = read_8ubyte_unaligned (dbg, readp);
-             readp += 8;
-           }
-
-         instructions = readp;
-
-         /* Go to the next record.  */
-         readp = readstartp + length;
-
-         /* Create the new FDE record.  */
-         new_fde = (struct fdelist *) alloca (sizeof (struct fdelist));
-         new_fde->fde = (Dwarf_Fde) malloc (sizeof (struct Dwarf_Fde_s));
-         if (new_fde->fde == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         new_fde->fde->initial_location = initial_location;
-         new_fde->fde->address_range = address_range;
-         new_fde->fde->instructions = instructions;
-         new_fde->fde->instructions_length = readp - instructions;
-         new_fde->fde->fde_bytes = fde_cie_start;
-         new_fde->fde->fde_byte_length = readstartp + length - fde_cie_start;
-         new_fde->fde->cie = NULL;
-         new_fde->cie_id_ptr = cie_id_ptr;
-
-         for (cie = cielist; cie != NULL; cie = cie->next)
-           /* This test takes the non-standard way of using the CIE ID
-              in the GNU .eh_frame sectio into account.  Instead of being
-              a direct offset in the section it is a offset from the
-              location of the FDE'S CIE ID value itself to the CIE entry.  */
-           if (cie->cie->offset
-               == (size_t) (cie_id_ptr - cie_id
-                            - (Dwarf_Small *) dbg->sections[IDX_eh_frame].addr))
-             {
-               new_fde->fde->cie = cie->cie;
-               break;
-             }
-
-         new_fde->fde->offset = cie_id;
-         new_fde->next = fdelist;
-         fdelist = new_fde;
-         ++nfdelist;
-       }
-    }
-
-  /* There must always be at least one CIE.  */
-  if (unlikely (ncielist == 0))
-    {
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* Create the lists.  */
-  *cie_data = (Dwarf_Cie *) malloc (ncielist * sizeof (struct Dwarf_Cie_s));
-  if (nfdelist > 0)
-    *fde_data = (Dwarf_Fde *) malloc (nfdelist * sizeof (struct Dwarf_Fde_s));
-  else
-    *fde_data = NULL;
-  if ((nfdelist > 0 && *fde_data == NULL) || *cie_data == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  /* Remember the counts.  */
-  dbg->fde_cnt = nfdelist;
-  dbg->cie_cnt = ncielist;
-
-  /* Add all the CIEs.  */
-  copy_cielist = cielist;
-  *cie_element_count = ncielist;
-  while (ncielist-- > 0)
-    {
-      (*cie_data)[ncielist] = cielist->cie;
-      cielist = cielist->next;
-    }
-
-  /* Add all the FDEs.  */
-  *fde_element_count = nfdelist;
-  while (nfdelist-- > 0)
-    {
-      (*fde_data)[nfdelist] = fdelist->fde;
-
-      if (fdelist->fde->cie == NULL)
-       {
-         /* We have not yet found the CIE.  Search now that we know
-             about all of them.  */
-         cielist = copy_cielist;
-         do
-           {
-             if (cielist->cie->offset
-                 == (size_t) (fdelist->cie_id_ptr - fdelist->fde->offset
-                              - (Dwarf_Small *) dbg->sections[IDX_eh_frame].addr))
-               {
-                 fdelist->fde->cie = cielist->cie;
-                 break;
-               }
-             cielist = cielist->next;
-           }
-         while (cielist != NULL);
-
-         if (cielist == NULL)
-           {
-             /* There is no matching CIE.  This is bad.  */
-             /* XXX Free everything.  */
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-       }
-
-      fdelist = fdelist->next;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_fde_n.c b/libdwarf/dwarf_get_fde_n.c
deleted file mode 100644 (file)
index 63344b7..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Get nth frame descriptions.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int
-dwarf_get_fde_n (fde_data, fde_index, returned_fde, error)
-     Dwarf_Fde *fde_data;
-     Dwarf_Unsigned fde_index;
-     Dwarf_Fde *returned_fde;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = fde_data[0]->cie->dbg;
-
-  if (fde_index >= dbg->fde_cnt)
-    return DW_DLV_NO_ENTRY;
-
-  *returned_fde = fde_data[fde_index];
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_fde_range.c b/libdwarf/dwarf_get_fde_range.c
deleted file mode 100644 (file)
index 6621a09..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Get information about the function range.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int
-dwarf_get_fde_range (fde, low_pc, func_length, fde_bytes, fde_byte_length,
-                    cie_offset, cie_index, fde_offset, error)
-     Dwarf_Fde fde;
-     Dwarf_Addr *low_pc;
-     Dwarf_Unsigned *func_length;
-     Dwarf_Ptr *fde_bytes;
-     Dwarf_Unsigned *fde_byte_length;
-     Dwarf_Off *cie_offset;
-     Dwarf_Signed *cie_index;
-     Dwarf_Off *fde_offset;
-     Dwarf_Error *error;
-{
-  *low_pc = fde->initial_location;
-  *func_length = fde->address_range;
-  *fde_bytes = fde->fde_bytes;
-  *fde_byte_length = fde->fde_byte_length;
-  *cie_offset = fde->cie->offset;
-  *cie_index = fde->cie->index;
-  *fde_offset = fde->offset;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_globals.c b/libdwarf/dwarf_get_globals.c
deleted file mode 100644 (file)
index e03b635..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-/* Return list of global definitions.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-struct globallist
-{
-  Dwarf_Global global;
-  struct globallist *next;
-};
-
-
-/* Read the whole given section.  */
-int
-dwarf_get_globals (dbg, globals, return_count, error)
-     Dwarf_Debug dbg;
-     Dwarf_Global **globals;
-     Dwarf_Signed *return_count;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *readp;
-  Dwarf_Small *readendp;
-  struct globallist *globallist = NULL;
-  unsigned int ngloballist = 0;
-
-  if (dbg->sections[IDX_debug_pubnames].addr == NULL)
-    return DW_DLV_NO_ENTRY;
-
-  readp = (Dwarf_Small *) dbg->sections[IDX_debug_pubnames].addr;
-  readendp = readp + dbg->sections[IDX_debug_pubnames].size;
-
-  while (readp < readendp)
-    {
-      Dwarf_Unsigned length;
-      Dwarf_Unsigned info_length;
-      unsigned int length_bytes;
-      unsigned int version;
-      Dwarf_Unsigned offset;
-      Dwarf_Global_Info global_info;
-
-      /* Each entry starts with a header:
-
-        1. A 4-byte or 12-byte length of the set of entries for this
-        compilation unit, not including the length field itself. [...]
-
-        2. A 2-byte version identifier containing the value 2 for
-        DWARF Version 2.1.
-
-        3. A 4-byte or 8-byte offset into the .debug_info section. [...]
-
-        4. A 4-byte or 8-byte length containing the size in bytes of
-        the contents of the .debug_info section generated to
-        represent this compilation unit. [...]  */
-      length = read_4ubyte_unaligned (dbg, readp);
-      readp += 4;
-      length_bytes = 4;
-      if (length == 0xffffffff)
-       {
-         length = read_8ubyte_unaligned (dbg, readp);
-         readp += 8;
-         length_bytes = 8;
-       }
-
-      version = read_2ubyte_unaligned (dbg, readp);
-      readp += 2;
-      if (unlikely (version != 2))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      if (length_bytes == 4)
-       {
-         offset = read_4ubyte_unaligned (dbg, readp);
-         readp += 4;
-         info_length = read_4ubyte_unaligned (dbg, readp);
-         readp += 4;
-       }
-      else
-       {
-         offset = read_8ubyte_unaligned (dbg, readp);
-         readp += 8;
-         info_length = read_8ubyte_unaligned (dbg, readp);
-         readp += 8;
-       }
-
-      global_info =
-       (Dwarf_Global_Info) malloc (sizeof (struct Dwarf_Global_s));
-      if (global_info == NULL)
-       {
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      global_info->dbg = dbg;
-      global_info->offset = offset;
-
-      /* Following the section contains tuples of offsets and
-         nul-terminated strings.  */
-      while (1)
-       {
-         Dwarf_Unsigned die_offset;
-         struct globallist *new_global;
-
-         if (length_bytes == 4)
-           die_offset = read_4ubyte_unaligned (dbg, readp);
-         else
-           die_offset = read_8ubyte_unaligned (dbg, readp);
-         readp += length_bytes;
-
-         if (die_offset == 0)
-           /* This closes this entry.  */
-           break;
-
-         new_global =
-           (struct globallist *) alloca (sizeof (struct globallist));
-         new_global->global =
-           (Dwarf_Global) malloc (sizeof (struct Dwarf_Global_s));
-         if (new_global->global == NULL)
-           {
-             __libdwarf_error (dbg, error, DW_E_NOMEM);
-             return DW_DLV_ERROR;
-           }
-
-         new_global->global->offset = die_offset;
-         new_global->global->name = (char *) readp;
-         new_global->global->info = global_info;
-
-         new_global->next = globallist;
-         globallist = new_global;
-         ++ngloballist;
-
-         readp = (Dwarf_Small *) rawmemchr (readp, '\0') + 1;
-       }
-    }
-
-  if (ngloballist == 0)
-    return DW_DLV_NO_ENTRY;
-
-  /* Allocate the array for the result.  */
-  *return_count = ngloballist;
-  *globals = (Dwarf_Global *) malloc (ngloballist
-                                     * sizeof (struct Dwarf_Global_s));
-  if (*globals == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  while (ngloballist-- > 0)
-    {
-      (*globals)[ngloballist] = globallist->global;
-      globallist = globallist->next;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_loclist_entry.c b/libdwarf/dwarf_get_loclist_entry.c
deleted file mode 100644 (file)
index 065c210..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Return location list entry.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libdwarfP.h"
-
-
-int
-dwarf_get_loclist_entry (dbg, offset, hipc_offset, lopc_offset, data,
-                        entry_len, next_entry, error)
-     Dwarf_Debug dbg;
-     Dwarf_Unsigned offset;
-     Dwarf_Addr *hipc_offset;
-     Dwarf_Addr *lopc_offset;
-     Dwarf_Ptr *data;
-     Dwarf_Unsigned *entry_len;
-     Dwarf_Unsigned *next_entry;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *locp;
-
-  /* Make sure we have room for at least two addresses.  */
-  if (unlikely (offset + 2 * dbg->cu_list->address_size
-               > dbg->sections[IDX_debug_loc].size))
-    {
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  locp = (Dwarf_Small *) dbg->sections[IDX_debug_loc].addr + offset;
-
-  /* Get the two values.  */
-  if (dbg->cu_list->address_size == 4)
-    {
-      *lopc_offset = read_4ubyte_unaligned (dbg, locp);
-      *hipc_offset = read_4ubyte_unaligned (dbg, locp + 4);
-      locp += 8;
-      offset += 8;
-    }
-  else
-    {
-      *lopc_offset = read_8ubyte_unaligned (dbg, locp);
-      *hipc_offset = read_8ubyte_unaligned (dbg, locp + 8);
-      locp += 16;
-      offset += 16;
-    }
-
-  /* Does this signal the end?  */
-  if (*lopc_offset == 0 && *hipc_offset == 0)
-    return DW_DLV_OK;
-
-  /* Make sure another 2 bytes are available for the length.  */
-  if (unlikely (offset + 2 > dbg->sections[IDX_debug_loc].size))
-    {
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-  *entry_len = read_2ubyte_unaligned (dbg, locp);
-  locp += 2;
-  offset += 2;
-  *data = locp;
-
-  /* Now we know how long the block is.  Test whether that much
-     data is available.  */
-  if (unlikely (offset + *entry_len > dbg->sections[IDX_debug_loc].size))
-    {
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  *next_entry = offset + *entry_len;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_get_str.c b/libdwarf/dwarf_get_str.c
deleted file mode 100644 (file)
index 9f530e5..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Return string from debug string section.
-   Copyright (C) 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2001.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include "libdwarfP.h"
-
-
-int
-dwarf_get_str (dbg, offset, string, returned_str_len, error)
-     Dwarf_Debug dbg;
-     Dwarf_Off offset;
-     char **string;
-     Dwarf_Signed *returned_str_len;
-     Dwarf_Error *error;
-{
-  *string = (char *) dbg->sections[IDX_debug_str].addr;
-  if (*string == NULL)
-    return DW_DLV_NO_ENTRY;
-
-  if (unlikely (offset >= dbg->sections[IDX_debug_str].size))
-    return DW_DLV_NO_ENTRY;
-
-  *string += offset;
-  *returned_str_len = strlen (*string);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_getabbrev.c b/libdwarf/dwarf_getabbrev.c
deleted file mode 100644 (file)
index a46c98c..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Internal abbrev list handling
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-Dwarf_Abbrev
-__libdwarf_get_abbrev (dbg, cu, code, error)
-     Dwarf_Debug dbg;
-     Dwarf_CU_Info cu;
-     Dwarf_Word code;
-     Dwarf_Error *error;
-{
-  Dwarf_Abbrev ent;
-
-  /* See whether the entry is already in the hash table.  */
-  ent = Dwarf_Abbrev_Hash_find (&cu->abbrev_hash, code, NULL);
-  if (ent != NULL)
-    return ent;
-
-  while (1)
-    {
-      Dwarf_Unsigned length;
-      Dwarf_Unsigned attr_count;
-
-      if (dwarf_get_abbrev (dbg, cu->last_abbrev_offset, &ent, &length,
-                           &attr_count, error) != DW_DLV_OK)
-       return NULL;
-
-      if (length == 1)
-       /* This is the end of the list.  */
-       break;
-
-      /* Update the offset to the next record.  */
-      cu->last_abbrev_offset += length;
-
-      /* Insert the new entry into the hashing table.  */
-      if (unlikely (Dwarf_Abbrev_Hash_insert (&cu->abbrev_hash, ent->code, ent)
-                   != 0))
-       {
-         free (ent);
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return NULL;
-       }
-
-      /* Is this the code we are looking for?  */
-      if (ent->code == code)
-       /* Yes!  */
-       return ent;
-    }
-
-  /* If we come here we haven't found anything.  */
-  __libdwarf_error (dbg, error, DW_E_NO_ABBR);
-  return NULL;
-}
diff --git a/libdwarf/dwarf_getconstant.c b/libdwarf/dwarf_getconstant.c
deleted file mode 100644 (file)
index cfffdbe..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/* Return constant value of given attribute type associated with die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-__libdwarf_getconstant (die, name, return_size, error)
-     Dwarf_Die die;
-     Dwarf_Half name;
-     Dwarf_Unsigned *return_size;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (unlikely (attr_name == name))
-       {
-         switch (attr_form)
-           {
-           case DW_FORM_data1:
-             *return_size = *die_addr;
-             break;
-           case DW_FORM_data2:
-             *return_size = read_2ubyte_unaligned (dbg, die_addr);
-             break;
-           case DW_FORM_data4:
-             *return_size = read_4ubyte_unaligned (dbg, die_addr);
-             break;
-           case DW_FORM_data8:
-             *return_size = read_8ubyte_unaligned (dbg, die_addr);
-             break;
-           case DW_FORM_sdata:
-             get_sleb128 (u128, die_addr);
-             *return_size = u128;
-             break;
-           case DW_FORM_udata:
-             get_uleb128 (u128, die_addr);
-             *return_size = u128;
-             break;
-           default:
-             __libdwarf_error (dbg, error, DW_E_NO_CONSTANT);
-             return DW_DLV_ERROR;
-           }
-
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No such attribute present.  */
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_global_cu_offset.c b/libdwarf/dwarf_global_cu_offset.c
deleted file mode 100644 (file)
index 6e0c231..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Return offset of header of compile unit containing the global definition.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_global_cu_offset (global, return_offset, error)
-     Dwarf_Global global;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *cu_header;
-  unsigned int offset_size;
-
-  cu_header =
-    ((Dwarf_Small *) global->info->dbg->sections[IDX_debug_info].addr
-     + global->info->offset);
-  if (read_4ubyte_unaligned_noncvt (cu_header) == 0xffffffff)
-    offset_size = 8;
-  else
-    offset_size = 4;
-
-  *return_offset = global->info->offset + 3 * offset_size - 4 + 3;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_global_die_offset.c b/libdwarf/dwarf_global_die_offset.c
deleted file mode 100644 (file)
index 949aabc..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Return DIE offset for global definition.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_global_die_offset (global, return_offset, error)
-     Dwarf_Global global;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  *return_offset = global->info->offset + global->offset;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_global_formref.c b/libdwarf/dwarf_global_formref.c
deleted file mode 100644 (file)
index 80af02a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Return .debug_info section global offset of reference associated with form.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_global_formref (attr, return_offset, error)
-     Dwarf_Attribute attr;
-     Dwarf_Off *return_offset;
-     Dwarf_Error *error;
-{
-  switch (attr->form)
-    {
-    case DW_FORM_ref1:
-      *return_offset = *attr->valp + attr->cu->offset;
-      break;
-
-    case DW_FORM_ref2:
-      *return_offset = (read_2ubyte_unaligned (attr->cu->dbg, attr->valp)
-                       + attr->cu->offset);
-      break;
-
-    case DW_FORM_ref4:
-      *return_offset = (read_4ubyte_unaligned (attr->cu->dbg, attr->valp)
-                       + attr->cu->offset);
-      break;
-
-    case DW_FORM_ref8:
-      *return_offset = (read_8ubyte_unaligned (attr->cu->dbg, attr->valp)
-                       + attr->cu->offset);
-      break;
-
-    case DW_FORM_ref_udata:
-      {
-       Dwarf_Off off;
-       Dwarf_Small *attrp = attr->valp;
-       get_uleb128 (off, attrp);
-       *return_offset = off + attr->cu->offset;
-      }
-      break;
-
-    case DW_FORM_ref_addr:
-      if (attr->cu->address_size == 4)
-       *return_offset = read_4ubyte_unaligned (attr->cu->dbg, attr->valp);
-      else
-       *return_offset = read_8ubyte_unaligned (attr->cu->dbg, attr->valp);
-      break;
-
-    default:
-      __libdwarf_error (attr->cu->dbg, error, DW_E_NO_REFERENCE);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_global_name_offsets.c b/libdwarf/dwarf_global_name_offsets.c
deleted file mode 100644 (file)
index d0d102a..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Return name, DIE offset, and offset of the compile unit for global
-   definition.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_global_name_offsets (global, return_name, die_offset, cu_offset, error)
-     Dwarf_Global global;
-     char **return_name;
-     Dwarf_Off *die_offset;
-     Dwarf_Off *cu_offset;
-     Dwarf_Error *error;
-{
-  if (return_name != NULL)
-    {
-      *return_name = strdup (global->name);
-      if (*return_name == NULL)
-       {
-         __libdwarf_error (global->info->dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-    }
-
-  if (die_offset != NULL)
-    *die_offset = global->offset + global->info->offset;
-
-  /* Determine the size of the CU header.  */
-  if (cu_offset != NULL)
-    {
-      Dwarf_Small *cu_header;
-      unsigned int offset_size;
-
-      cu_header =
-       ((Dwarf_Small *) global->info->dbg->sections[IDX_debug_info].addr
-        + global->info->offset);
-      if (read_4ubyte_unaligned_noncvt (cu_header) == 0xffffffff)
-       offset_size = 8;
-      else
-       offset_size = 4;
-
-      *cu_offset = global->info->offset + 3 * offset_size - 4 + 3;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_globname.c b/libdwarf/dwarf_globname.c
deleted file mode 100644 (file)
index fac086d..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Return name for global definition.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_globname (global, return_name, error)
-     Dwarf_Global global;
-     char **return_name;
-     Dwarf_Error *error;
-{
-  *return_name = strdup (global->name);
-  if (*return_name == NULL)
-    {
-      __libdwarf_error (global->info->dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_hasattr.c b/libdwarf/dwarf_hasattr.c
deleted file mode 100644 (file)
index f1232de..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/* Determine whether die has attribute specified of given type.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_hasattr (die, attr, return_bool, error)
-     Dwarf_Die die;
-     Dwarf_Half attr;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (attr_name == attr)
-       {
-         *return_bool = 1;
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No such attribute present.  */
-  *return_bool = 0;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_hasform.c b/libdwarf/dwarf_hasform.c
deleted file mode 100644 (file)
index 390869f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Determine whether attribute has given form.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_hasform (attr, form, return_hasform, error)
-     Dwarf_Attribute attr;
-     Dwarf_Half form;
-     Dwarf_Bool *return_hasform;
-     Dwarf_Error *error;
-{
-  *return_hasform = attr->form == form;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_highpc.c b/libdwarf/dwarf_highpc.c
deleted file mode 100644 (file)
index d684eea..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/* Return high program counter value associated with die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_highpc (die, return_highpc, error)
-     Dwarf_Die die;
-     Dwarf_Addr *return_highpc;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely  (attrp
-                    >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                        + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (unlikely (attr_name == DW_AT_high_pc))
-       {
-         if (unlikely (attr_form != DW_FORM_addr))
-           {
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-
-         if (die->cu->address_size == 4)
-           *return_highpc = read_4ubyte_unaligned (dbg, die_addr);
-         else
-           *return_highpc = read_8ubyte_unaligned (dbg, die_addr);
-
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No such attribute present.  */
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_init.c b/libdwarf/dwarf_init.c
deleted file mode 100644 (file)
index df3b079..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/* Create descriptor from file descriptor for processing file.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stddef.h>
-#include <sys/stat.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_init (fd, access, errhand, errarg, dbg, error)
-     int fd;
-     Dwarf_Unsigned access;
-     Dwarf_Handler errhand;
-     Dwarf_Ptr errarg;
-     Dwarf_Debug *dbg;
-     Dwarf_Error *error;
-{
-  Elf *elf;
-  Elf_Cmd cmd;
-  struct Dwarf_Debug_s newdbg;
-  int result = DW_DLV_ERROR;
-
-  switch (access)
-    {
-    case DW_DLC_READ:
-      cmd = ELF_C_READ_MMAP;
-      break;
-    case DW_DLC_WRITE:
-      cmd = ELF_C_WRITE;
-      break;
-    case DW_DLC_RDWR:
-      cmd = ELF_C_RDWR;
-      break;
-    default:
-      /* These are the error values we want to use.  */
-      newdbg.dbg_errhand = errhand;
-      newdbg.dbg_errarg = errarg;
-
-      __libdwarf_error (&newdbg, error, DW_E_INVALID_ACCESS);
-      return DW_DLV_ERROR;
-    }
-
-  /* We have to call `elf_version' here since the user might have not
-     done it or initialized libelf with a different version.  This
-     would break libdwarf since we are using the ELF data structures
-     in a certain way.  */
-  elf_version (EV_CURRENT);
-
-  /* Get an ELF descriptor.  */
-  elf = elf_begin (fd, cmd, NULL);
-  if (elf == NULL)
-    {
-      /* Test why the `elf_begin" call failed.  */
-      struct stat64 st;
-
-      /* These are the error values we want to use.  */
-      newdbg.dbg_errhand = errhand;
-      newdbg.dbg_errarg = errarg;
-
-      if (fstat64 (fd, &st) == 0 && ! S_ISREG (st.st_mode))
-       __libdwarf_error (&newdbg, error, DW_E_NO_REGFILE);
-      else
-       __libdwarf_error (&newdbg, error, DW_E_IO_ERROR);
-    }
-  else
-    {
-      /* Do the real work now that we have an ELF descriptor.  */
-      result = dwarf_elf_init (elf, access, errhand, errarg, dbg, error);
-
-      /* If this failed, free the resources.  */
-      if (result != DW_DLV_OK)
-       elf_end (elf);
-    }
-
-  return result;
-}
diff --git a/libdwarf/dwarf_lineaddr.c b/libdwarf/dwarf_lineaddr.c
deleted file mode 100644 (file)
index 35752d2..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return address associate with line.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineaddr (line, return_lineaddr, error)
-     Dwarf_Line line;
-     Dwarf_Addr *return_lineaddr;
-     Dwarf_Error *error;
-{
-  *return_lineaddr = line->addr;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_linebeginstatement.c b/libdwarf/dwarf_linebeginstatement.c
deleted file mode 100644 (file)
index fc8304d..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Determine whether line is the beginning of a statement.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_linebeginstatement (line, return_bool, error)
-     Dwarf_Line line;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  *return_bool = line->is_stmt;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineblock.c b/libdwarf/dwarf_lineblock.c
deleted file mode 100644 (file)
index 1b0268d..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Determine whether line is marked as beginning a basic block.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineblock (line, return_bool, error)
-     Dwarf_Line line;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  *return_bool = line->basic_block;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineendsequence.c b/libdwarf/dwarf_lineendsequence.c
deleted file mode 100644 (file)
index e8f8e30..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Determine whether line is marked as ending a text sequence.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineendsequence (line, return_bool, error)
-     Dwarf_Line line;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  *return_bool = line->end_sequence;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineepiloguebegin.c b/libdwarf/dwarf_lineepiloguebegin.c
deleted file mode 100644 (file)
index 5032d20..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Determine whether line is marked as beginning the epilogue.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineepiloguebegin (line, return_bool, error)
-     Dwarf_Line line;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  *return_bool = line->epilogue_begin;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineno.c b/libdwarf/dwarf_lineno.c
deleted file mode 100644 (file)
index 8ef8d4c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return source statement line number.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineno (line, return_lineno, error)
-     Dwarf_Line line;
-     Dwarf_Unsigned *return_lineno;
-     Dwarf_Error *error;
-{
-  *return_lineno = line->line;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineoff.c b/libdwarf/dwarf_lineoff.c
deleted file mode 100644 (file)
index 8254be1..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return column at which the statement begins.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineoff (line, return_lineoff, error)
-     Dwarf_Line line;
-     Dwarf_Signed *return_lineoff;
-     Dwarf_Error *error;
-{
-  *return_lineoff = line->column ?: -1;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lineprologueend.c b/libdwarf/dwarf_lineprologueend.c
deleted file mode 100644 (file)
index 8ed5627..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Determine whether line is marked as ending the prologue.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lineprologueend (line, return_bool, error)
-     Dwarf_Line line;
-     Dwarf_Bool *return_bool;
-     Dwarf_Error *error;
-{
-  *return_bool = line->prologue_end;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_linesrc.c b/libdwarf/dwarf_linesrc.c
deleted file mode 100644 (file)
index 49b2802..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Return source file for line.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_linesrc (line, return_linesrc, error)
-     Dwarf_Line line;
-     char **return_linesrc;
-     Dwarf_Error *error;
-{
-  if (unlikely (line->file >= line->files->nfiles))
-    {
-      __libdwarf_error (line->files->dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  *return_linesrc = strdup (line->files->info[line->file].name);
-  if (*return_linesrc == NULL)
-    {
-      __libdwarf_error (line->files->dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_loclist.c b/libdwarf/dwarf_loclist.c
deleted file mode 100644 (file)
index d3562d5..0000000
+++ /dev/null
@@ -1,482 +0,0 @@
-/* Return location expression list.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-struct loclist
-{
-  Dwarf_Small atom;
-  Dwarf_Unsigned number;
-  Dwarf_Unsigned number2;
-  Dwarf_Unsigned offset;
-  struct loclist *next;
-};
-
-struct locdesclist
-{
-  Dwarf_Addr lopc;
-  Dwarf_Addr hipc;
-  Dwarf_Half cents;
-  struct loclist *s;
-  struct locdesclist *next;
-};
-
-
-int
-dwarf_loclist (attr, llbuf, listlen, error)
-     Dwarf_Attribute attr;
-     Dwarf_Locdesc **llbuf;
-     Dwarf_Signed *listlen;
-     Dwarf_Error *error;
-{
-  Dwarf_CU_Info cu = attr->cu;
-  Dwarf_Debug dbg = cu->dbg;
-  Dwarf_Unsigned offset;
-  Dwarf_Unsigned offset_end;
-  Dwarf_Small *locp;
-  struct locdesclist *locdesclist;
-  Dwarf_Locdesc *result;
-  unsigned int n;
-
-  /* Must by one of the attribute listed below.  */
-  if (attr->code != DW_AT_location
-      && attr->code != DW_AT_data_member_location
-      && attr->code != DW_AT_vtable_elem_location
-      && attr->code != DW_AT_string_length
-      && attr->code != DW_AT_use_location
-      && attr->code != DW_AT_return_addr)
-    {
-      __libdwarf_error (dbg, error, DW_E_WRONG_ATTR);
-      return DW_DLV_ERROR;
-    }
-
-  /* Must have the form data4 or data8 which act as an offset.  */
-  if (attr->form == DW_FORM_data4)
-    offset = read_4ubyte_unaligned (dbg, attr->valp);
-  else if (likely (attr->form == DW_FORM_data8))
-    offset = read_8ubyte_unaligned (dbg, attr->valp);
-  else
-    {
-      __libdwarf_error (dbg, error, DW_E_NO_DATA);
-      return DW_DLV_ERROR;
-    }
-
-  /* Check whether the .debug_loc section is available.  */
-  if (unlikely (dbg->sections[IDX_debug_loc].addr == NULL))
-    {
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* This is the part of the .debug_loc section we can read.  */
-  locp = (Dwarf_Small *) dbg->sections[IDX_debug_loc].addr + offset;
-  offset_end = offset + dbg->sections[IDX_debug_loc].size;
-
-  locdesclist = NULL;
-  n = 0;
-  while (1)
-    {
-      Dwarf_Addr lopc;
-      Dwarf_Addr hipc;
-      Dwarf_Ptr data;
-      Dwarf_Unsigned len2;
-      struct locdesclist *newdesc;
-      Dwarf_Small *locp;
-      Dwarf_Small *blkendp;
-      Dwarf_Small *blkstartp;
-
-      if (unlikely (dwarf_get_loclist_entry (dbg, offset, &hipc, &lopc, &data,
-                                            &len2, &offset, error)
-                   != DW_DLV_OK))
-       return DW_DLV_ERROR;
-
-      /* Does this signal the end?  */
-      if (lopc == 0 && hipc == 0)
-       break;
-
-      locp = data;
-      blkstartp = locp;
-      blkendp = locp + len2;
-
-      /* Create a new Locdesc entry.  */
-      newdesc = (struct locdesclist *) alloca (sizeof (struct locdesclist));
-      newdesc->lopc = lopc;
-      newdesc->hipc = hipc;
-      newdesc->cents = 0;
-      newdesc->s = NULL;
-      newdesc->next = locdesclist;
-      locdesclist = newdesc;
-      ++n;
-
-      /* Decode the opcodes.  It is possible in some situations to
-         have a block of size zero.  */
-      while (locp < blkendp)
-       {
-         struct loclist *newloc;
-
-         newloc = (struct loclist *) alloca (sizeof (struct loclist));
-         newloc->number = 0;
-         newloc->number2 = 0;
-         newloc->offset = locp - blkstartp;
-         newloc->next = newdesc->s;
-         newdesc->s = newloc;
-         ++newdesc->cents;
-
-         newloc->atom = *locp;
-         switch (*locp++)
-           {
-           case DW_OP_addr:
-             /* Address, depends on address size of CU.  */
-             if (cu->address_size == 4)
-               {
-                 if (unlikely (locp + 4 > blkendp))
-                   {
-                     __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                     return DW_DLV_ERROR;
-                   }
-                 newloc->number = read_4ubyte_unaligned (dbg, locp);
-                 locp += 4;
-               }
-             else
-               {
-                 if (unlikely (locp + 8 > blkendp))
-                   {
-                     __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                     return DW_DLV_ERROR;
-                   }
-                 newloc->number = read_8ubyte_unaligned (dbg, locp);
-                 locp += 8;
-               }
-             break;
-
-           case DW_OP_deref:
-           case DW_OP_dup:
-           case DW_OP_drop:
-           case DW_OP_over:
-           case DW_OP_swap:
-           case DW_OP_rot:
-           case DW_OP_xderef:
-           case DW_OP_abs:
-           case DW_OP_and:
-           case DW_OP_div:
-           case DW_OP_minus:
-           case DW_OP_mod:
-           case DW_OP_mul:
-           case DW_OP_neg:
-           case DW_OP_not:
-           case DW_OP_or:
-           case DW_OP_plus:
-           case DW_OP_shl:
-           case DW_OP_shr:
-           case DW_OP_shra:
-           case DW_OP_xor:
-           case DW_OP_eq:
-           case DW_OP_ge:
-           case DW_OP_gt:
-           case DW_OP_le:
-           case DW_OP_lt:
-           case DW_OP_ne:
-           case DW_OP_lit0:
-           case DW_OP_lit1:
-           case DW_OP_lit2:
-           case DW_OP_lit3:
-           case DW_OP_lit4:
-           case DW_OP_lit5:
-           case DW_OP_lit6:
-           case DW_OP_lit7:
-           case DW_OP_lit8:
-           case DW_OP_lit9:
-           case DW_OP_lit10:
-           case DW_OP_lit11:
-           case DW_OP_lit12:
-           case DW_OP_lit13:
-           case DW_OP_lit14:
-           case DW_OP_lit15:
-           case DW_OP_lit16:
-           case DW_OP_lit17:
-           case DW_OP_lit18:
-           case DW_OP_lit19:
-           case DW_OP_lit20:
-           case DW_OP_lit21:
-           case DW_OP_lit22:
-           case DW_OP_lit23:
-           case DW_OP_lit24:
-           case DW_OP_lit25:
-           case DW_OP_lit26:
-           case DW_OP_lit27:
-           case DW_OP_lit28:
-           case DW_OP_lit29:
-           case DW_OP_lit30:
-           case DW_OP_lit31:
-           case DW_OP_reg0:
-           case DW_OP_reg1:
-           case DW_OP_reg2:
-           case DW_OP_reg3:
-           case DW_OP_reg4:
-           case DW_OP_reg5:
-           case DW_OP_reg6:
-           case DW_OP_reg7:
-           case DW_OP_reg8:
-           case DW_OP_reg9:
-           case DW_OP_reg10:
-           case DW_OP_reg11:
-           case DW_OP_reg12:
-           case DW_OP_reg13:
-           case DW_OP_reg14:
-           case DW_OP_reg15:
-           case DW_OP_reg16:
-           case DW_OP_reg17:
-           case DW_OP_reg18:
-           case DW_OP_reg19:
-           case DW_OP_reg20:
-           case DW_OP_reg21:
-           case DW_OP_reg22:
-           case DW_OP_reg23:
-           case DW_OP_reg24:
-           case DW_OP_reg25:
-           case DW_OP_reg26:
-           case DW_OP_reg27:
-           case DW_OP_reg28:
-           case DW_OP_reg29:
-           case DW_OP_reg30:
-           case DW_OP_reg31:
-           case DW_OP_nop:
-           case DW_OP_push_object_address:
-           case DW_OP_call_ref:
-             /* No operand.  */
-             break;
-
-           case DW_OP_const1u:
-           case DW_OP_pick:
-           case DW_OP_deref_size:
-           case DW_OP_xderef_size:
-             if (unlikely (locp >= blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = *((uint8_t *) locp)++;
-             break;
-
-           case DW_OP_const1s:
-             if (unlikely (locp >= blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = *((int8_t *) locp)++;
-             break;
-
-           case DW_OP_const2u:
-             if (unlikely (locp + 2 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_2ubyte_unaligned (dbg, locp);
-             locp += 2;
-             break;
-
-           case DW_OP_const2s:
-           case DW_OP_skip:
-           case DW_OP_bra:
-           case DW_OP_call2:
-             if (unlikely (locp + 2 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_2sbyte_unaligned (dbg, locp);
-             locp += 2;
-             break;
-
-           case DW_OP_const4u:
-             if (unlikely (locp + 4 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_4ubyte_unaligned (dbg, locp);
-             locp += 4;
-             break;
-
-           case DW_OP_const4s:
-           case DW_OP_call4:
-             if (unlikely (locp + 4 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_4sbyte_unaligned (dbg, locp);
-             locp += 4;
-             break;
-
-           case DW_OP_const8u:
-             if (unlikely (locp + 8 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_8ubyte_unaligned (dbg, locp);
-             locp += 8;
-             break;
-
-           case DW_OP_const8s:
-             if (unlikely (locp + 8 > blkendp))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-             newloc->number = read_8sbyte_unaligned (dbg, locp);
-             locp += 8;
-             break;
-
-           case DW_OP_constu:
-           case DW_OP_plus_uconst:
-           case DW_OP_regx:
-           case DW_OP_piece:
-             /* XXX Check size.  */
-             get_uleb128 (newloc->number, locp);
-             break;
-
-           case DW_OP_consts:
-           case DW_OP_breg0:
-           case DW_OP_breg1:
-           case DW_OP_breg2:
-           case DW_OP_breg3:
-           case DW_OP_breg4:
-           case DW_OP_breg5:
-           case DW_OP_breg6:
-           case DW_OP_breg7:
-           case DW_OP_breg8:
-           case DW_OP_breg9:
-           case DW_OP_breg10:
-           case DW_OP_breg11:
-           case DW_OP_breg12:
-           case DW_OP_breg13:
-           case DW_OP_breg14:
-           case DW_OP_breg15:
-           case DW_OP_breg16:
-           case DW_OP_breg17:
-           case DW_OP_breg18:
-           case DW_OP_breg19:
-           case DW_OP_breg20:
-           case DW_OP_breg21:
-           case DW_OP_breg22:
-           case DW_OP_breg23:
-           case DW_OP_breg24:
-           case DW_OP_breg25:
-           case DW_OP_breg26:
-           case DW_OP_breg27:
-           case DW_OP_breg28:
-           case DW_OP_breg29:
-           case DW_OP_breg30:
-           case DW_OP_breg31:
-           case DW_OP_fbreg:
-             /* XXX Check size.  */
-             get_sleb128 (newloc->number, locp);
-             break;
-
-           case DW_OP_bregx:
-             /* XXX Check size.  */
-             get_uleb128 (newloc->number, locp);
-             get_sleb128 (newloc->number2, locp);
-             break;
-
-           default:
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-       }
-    }
-
-  if (unlikely (n == 0))
-    {
-      /* This is not allowed.
-
-        XXX Is it?  */
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* Allocate the array.  */
-  result = (Dwarf_Locdesc *) malloc (n * sizeof (Dwarf_Locdesc));
-  if (result == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  /* Store the result.  */
-  *llbuf = result;
-  *listlen = n;
-
-  do
-    {
-      unsigned int cents;
-      struct loclist *s;
-
-      /* We populate the array from the back since the list is
-         backwards.  */
-      --n;
-
-      result[n].ld_lopc = locdesclist->lopc;
-      result[n].ld_hipc = locdesclist->hipc;
-      result[n].ld_cents = cents = locdesclist->cents;
-      result[n].ld_s = (Dwarf_Loc *) malloc (cents * sizeof (Dwarf_Loc));
-      if (result == NULL)
-       {
-         /* XXX Should be bother freeing memory?  */
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      s = locdesclist->s;
-      while (cents-- > 0)
-       {
-         /* This list is also backwards.  */
-         result[n].ld_s[cents].lr_atom = s->atom;
-         result[n].ld_s[cents].lr_number = s->number;
-         result[n].ld_s[cents].lr_number2 = s->number2;
-         result[n].ld_s[cents].lr_offset = s->offset;
-         s = s->next;
-       }
-
-      locdesclist = locdesclist->next;
-    }
-  while (n > 0);
-
-  /* We did it.  */
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_lowpc.c b/libdwarf/dwarf_lowpc.c
deleted file mode 100644 (file)
index acd7cc4..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/* Return low program counter value associated with die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_lowpc (die, return_lowpc, error)
-     Dwarf_Die die;
-     Dwarf_Addr *return_lowpc;
-     Dwarf_Error *error;
-{
-  Dwarf_Debug dbg = die->cu->dbg;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-  Dwarf_Abbrev abbrev;
-  Dwarf_Small *attrp;
-
-  /* Address of the given die.  */
-  die_addr = die->addr;
-
-  /* Get abbrev code.  */
-  get_uleb128 (u128, die_addr);
-  /*  And get the abbreviation itself.  */
-  abbrev = __libdwarf_get_abbrev (dbg, die->cu, u128, error);
-  if (abbrev == NULL)
-    return DW_DLV_ERROR;
-
-  /* This is where the attributes start.  */
-  attrp = abbrev->attrp;
-
-  /* Search the name attribute.  */
-  while (1)
-    {
-      Dwarf_Word attr_name;
-      Dwarf_Word attr_form;
-
-      /* Are we still in bounds?  */
-      if (unlikely (attrp
-                   >= ((Dwarf_Small *) dbg->sections[IDX_debug_abbrev].addr
-                       + dbg->sections[IDX_debug_abbrev].size)))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      /* Get attribute name and form.
-
-        XXX We don't check whether this reads beyond the end of the
-        section.  */
-      get_uleb128 (attr_name, attrp);
-      get_uleb128 (attr_form, attrp);
-
-      /* We can stop if we found the attribute with value zero.  */
-      if (attr_name == 0 && attr_form == 0)
-       break;
-
-      /* Is this the name attribute?  */
-      if (unlikely (attr_name == DW_AT_low_pc))
-       {
-         if (unlikely (attr_form != DW_FORM_addr))
-           {
-             __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-             return DW_DLV_ERROR;
-           }
-
-         if (die->cu->address_size == 4)
-           *return_lowpc = read_4ubyte_unaligned (dbg, die_addr);
-         else
-           *return_lowpc = read_8ubyte_unaligned (dbg, die_addr);
-
-         return DW_DLV_OK;
-       }
-
-      /* Skip over the rest of this attribute (if there is any).  */
-      if (attr_form != 0)
-       {
-         size_t len;
-
-         if (unlikely (__libdwarf_form_val_len (dbg, die->cu, attr_form,
-                                                die_addr, &len, error)
-                       != DW_DLV_OK))
-           return DW_DLV_ERROR;
-
-         die_addr += len;
-       }
-    }
-
-  /* No such attribute present.  */
-  return DW_DLV_NO_ENTRY;
-}
diff --git a/libdwarf/dwarf_next_cu_header.c b/libdwarf/dwarf_next_cu_header.c
deleted file mode 100644 (file)
index 883559c..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-/* Get offset of next compilation unit.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <assert.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-/* A good initial size for the abbreviation hashing table.  */
-#define DEFAULT_ABBREV_HASH_SIZE       257
-
-
-int
-internal_function
-__libdwarf_get_cu_at_offset (Dwarf_Debug dbg, Dwarf_Unsigned offset,
-                            Dwarf_CU_Info *result_cu, Dwarf_Error *error)
-{
-  Dwarf_CU_Info cu;
-  Dwarf_Small *cu_bytes;
-  Dwarf_Unsigned length;
-  Dwarf_Half offset_size;
-
-  /* Make sure there is enough space in the .debug_info section for at
-     least the initial word.  We cannot test the rest since we don't
-     know yet whether this is a 64-bit object or not.  */
-  if (unlikely (offset + 4 >= dbg->sections[IDX_debug_info].size))
-    {
-      dbg->cu_list_current = NULL;
-      return DW_DLV_NO_ENTRY;
-    }
-
-  /* This points into the .debug_info section to the beginning of the
-     CU entry.  */
-  cu_bytes = (Dwarf_Small *) dbg->sections[IDX_debug_info].addr + offset;
-
-  /* The format of the CU header is described in dwarf2p1 7.5.1:
-
-     1.  A 4-byte or 12-byte unsigned integer representing the length
-        of the .debug_info contribution for that compilation unit, not
-        including the length field itself. In the 32-bit DWARF format,
-        this is a 4-byte unsigned integer (which must be less than
-        0xffffff00); in the 64-bit DWARF format, this consists of the
-        4-byte value 0xffffffff followed by an 8-byte unsigned integer
-        that gives the actual length (see Section 7.4).
-
-      2. A 2-byte unsigned integer representing the version of the
-        DWARF information for that compilation unit. For DWARF Version
-        2.1, the value in this field is 2.
-
-      3. A 4-byte or 8-byte unsigned offset into the .debug_abbrev
-        section. This offset associates the compilation unit with a
-        particular set of debugging information entry abbreviations. In
-        the 32-bit DWARF format, this is a 4-byte unsigned length; in
-        the 64-bit DWARF format, this is an 8-byte unsigned length (see
-        Section 7.4).
-
-      4. A 1-byte unsigned integer representing the size in bytes of
-        an address on the target architecture. If the system uses
-        segmented addressing, this value represents the size of the
-        offset portion of an address.  */
-  length = read_4ubyte_unaligned (dbg, cu_bytes);
-  cu_bytes += 4;
-  offset_size = 4;
-  if (length == 0xffffffff)
-    offset_size = 8;
-
-  /* Now we know how large the header is.  Note the trick in the
-     computation.  If the offset_size is 4 the '- 4' term undoes the
-     '2 *'.  If offset_size is 8 this term computes the size of the
-     escape value plus the 8 byte offset.  */
-  if (unlikely (offset + 2 * offset_size - 4 + sizeof (Dwarf_Half)
-               + offset_size + sizeof (Dwarf_Small)
-               >= dbg->sections[IDX_debug_info].size))
-    {
-      dbg->cu_list_current = NULL;
-      return DW_DLV_NO_ENTRY;
-    }
-
-  if (length == 0xffffffff)
-    {
-      /* This is a 64-bit DWARF format.  */
-      length = read_8ubyte_unaligned (dbg, cu_bytes);
-      cu_bytes += 8;
-    }
-
-  /* We know we have enough room in the .debug_section.  Allocate the
-     result data structure.  */
-  cu = (Dwarf_CU_Info) malloc (sizeof (struct Dwarf_CU_Info_s));
-  if (cu == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  /* Store the values in the data structure.  */
-  cu->offset = offset;
-  cu->offset_size = offset_size;
-  cu->length = length;
-
-  /* Store the version stamp.  Always a 16-bit value.  */
-  cu->version_stamp = read_2ubyte_unaligned (dbg, cu_bytes);
-  cu_bytes += 2;
-
-  /* Get offset in .debug_abbrev.  Note that the size of the entry
-     depends on whether this is a 32-bit or 64-bit DWARF definition.  */
-  if (offset_size == 4)
-    cu->abbrev_offset = read_4ubyte_unaligned (dbg, cu_bytes);
-  else
-    cu->abbrev_offset = read_8ubyte_unaligned (dbg, cu_bytes);
-  cu_bytes += offset_size;
-  cu->last_abbrev_offset = cu->abbrev_offset;
-
-  /* The address size.  Always an 8-bit value.  */
-  cu->address_size = *cu_bytes++;
-
-  /* Store the header length.  */
-  cu->header_length = (cu_bytes
-                      - ((Dwarf_Small *) dbg->sections[IDX_debug_info].addr
-                         + offset));
-
-  /* Initilize a few more members.  */
-  if (unlikely (Dwarf_Abbrev_Hash_init (&cu->abbrev_hash,
-                                       DEFAULT_ABBREV_HASH_SIZE) != 0))
-    {
-      free (cu);
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  /* Remember the debugging handle.  */
-  cu->dbg = dbg;
-
-  /* There is no other entry yet.  */
-  cu->next = NULL;
-
-  /* Enqueue the new entry.  */
-  if (dbg->cu_list == NULL)
-    dbg->cu_list = dbg->cu_list_tail = cu;
-  else
-    {
-      dbg->cu_list_tail->next = cu;
-      dbg->cu_list_tail = cu;
-    }
-  *result_cu = cu;
-
-  return DW_DLV_OK;
-}
-
-
-int
-dwarf_next_cu_header (dbg, cu_header_length, version_stamp, abbrev_offset,
-                     address_size, next_cu_header, error)
-     Dwarf_Debug dbg;
-     Dwarf_Unsigned *cu_header_length;
-     Dwarf_Half *version_stamp;
-     Dwarf_Unsigned *abbrev_offset;
-     Dwarf_Half *address_size;
-     Dwarf_Unsigned *next_cu_header;
-     Dwarf_Error *error;
-{
-  Dwarf_Unsigned offset_next_cu;
-  Dwarf_CU_Info cu;
-
-  if (dbg == NULL)
-    return DW_DLV_ERROR;
-
-  /* Determine offset of next CU header.  If we don't have a current
-     CU this is the first call and we start right at the beginning.  */
-  if (dbg->cu_list_current == NULL)
-    {
-      offset_next_cu = 0;
-      cu = dbg->cu_list;
-    }
-  else
-    {
-      /* We can compute the offset from the information we read from
-        the last CU header.  */
-      cu = dbg->cu_list_current;
-
-      offset_next_cu = cu->offset + 2 * cu->offset_size - 4 + cu->length;
-
-      /* See whether the next entry entry is available.  */
-      cu = cu->next;
-    }
-
-  /* If the entry is not yet available get it.  */
-  if (cu == NULL)
-    {
-      int res = __libdwarf_get_cu_at_offset (dbg, offset_next_cu, &cu, error);
-
-      /* If it still does not exist, fail.  Note that this can mean an
-        error or that we reached the end.  */
-      if (res != DW_DLV_OK)
-       return res;
-
-      dbg->cu_list_current = cu;
-      assert (cu != NULL);
-    }
-
-  /* See get_cu_at_offset for an explanation of the trick in this
-     formula.  */
-  *next_cu_header = offset_next_cu + 2 * cu->offset_size - 4 + cu->length;
-
-  /* Extract the information and put it where the user wants it.  */
-  if (cu_header_length != NULL)
-    *cu_header_length = cu->header_length;
-
-  if (version_stamp != NULL)
-    *version_stamp = cu->version_stamp;
-
-  if (abbrev_offset != NULL)
-    *abbrev_offset = cu->abbrev_offset;
-
-  if (address_size != NULL)
-    *address_size = cu->address_size;
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_offdie.c b/libdwarf/dwarf_offdie.c
deleted file mode 100644 (file)
index 502a170..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/* Return die at given offset.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-/* XXX This function will have to be optimized.  The search is too linear
-   to be performed too often -> O(n²).  */
-static Dwarf_CU_Info
-find_cu (Dwarf_Debug dbg, Dwarf_Off offset, Dwarf_Error *error)
-{
-  Dwarf_CU_Info cu;
-  Dwarf_Word cu_offset;
-
-  /* Search in the CUs already known.  */
-  for (cu = dbg->cu_list; cu != NULL; cu = cu->next)
-    if (cu->offset <= offset
-       && cu->offset + 2 * cu->offset_size - 4 + cu->length > offset)
-      return cu;
-
-  /* The CU is not yet loaded.  Do this now.  */
-  if (dbg->cu_list_tail == NULL)
-    cu_offset = 0;
-  else
-    cu_offset = (dbg->cu_list_tail->offset
-                + 2 * dbg->cu_list_tail->offset_size - 4
-                + dbg->cu_list_tail->length);
-
-  while (1)
-    {
-      /* Get next CU and add it to the end of the list.  */
-      if (__libdwarf_get_cu_at_offset (dbg, cu_offset, &cu, error)
-         != DW_DLV_OK)
-       return NULL;
-
-      /* Offset of next CU.  */
-      cu_offset += 2 * cu->offset_size - 4 + cu->length;
-
-      /* If this the CU we are looking for?  */
-      if (offset < cu_offset)
-       return cu;
-    }
-}
-
-
-int
-dwarf_offdie (dbg, offset, return_die, error)
-     Dwarf_Debug dbg;
-     Dwarf_Off offset;
-     Dwarf_Die *return_die;
-     Dwarf_Error *error;
-{
-  Dwarf_CU_Info cu;
-  Dwarf_Die new_die;
-  Dwarf_Small *die_addr;
-  Dwarf_Word u128;
-
-  if (offset >= dbg->sections[IDX_debug_info].size)
-    {
-      /* Completely out of bounds.  */
-      __libdwarf_error (dbg, error, DW_E_INVALID_OFFSET);
-      return DW_DLV_ERROR;
-    }
-
-  /* Find the compile unit this address belongs to.  */
-  cu = find_cu (dbg, offset, error);
-  if (cu == NULL)
-    return DW_DLV_ERROR;
-
-  /* Creata a new die.  */
-  new_die = (Dwarf_Die) malloc (sizeof (struct Dwarf_Die_s));
-  if (new_die == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-#ifdef DWARF_DEBUG
-  new_die->memtag = DW_DLA_DIE;
-#endif
-
-  /* Remember the address.  */
-  die_addr = (Dwarf_Small *) dbg->sections[IDX_debug_info].addr + offset;
-  new_die->addr = die_addr;
-
-  /* And the compile unit.  */
-  new_die->cu = cu;
-
-  /* 7.5.2  Debugging Information Entry
-
-     Each debugging information entry begins with an unsigned LEB128
-     number containing the abbreviation code for the entry.  */
-  get_uleb128 (u128, die_addr);
-
-  /* Find the abbreviation.  */
-  new_die->abbrev = __libdwarf_get_abbrev (dbg, cu, u128, error);
-  if (new_die->abbrev == NULL)
-    {
-      free (new_die);
-      return DW_DLV_ERROR;
-    }
-
-  *return_die = new_die;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_seterrarg.c b/libdwarf/dwarf_seterrarg.c
deleted file mode 100644 (file)
index e8917cf..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Set new error handler argument.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-Dwarf_Ptr
-dwarf_seterrarg (dbg, errarg)
-     Dwarf_Debug dbg;
-     Dwarf_Ptr errarg;
-{
-  Dwarf_Ptr old = dbg->dbg_errarg;
-  dbg->dbg_errarg = errarg;
-  return old;
-}
diff --git a/libdwarf/dwarf_seterrhand.c b/libdwarf/dwarf_seterrhand.c
deleted file mode 100644 (file)
index 7a6f93f..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Set new error handler.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-Dwarf_Handler
-dwarf_seterrhand (dbg, errhand)
-     Dwarf_Debug dbg;
-     Dwarf_Handler errhand;
-{
-  Dwarf_Handler old = dbg->dbg_errhand;
-  dbg->dbg_errhand = errhand;
-  return old;
-}
diff --git a/libdwarf/dwarf_siblingof.c b/libdwarf/dwarf_siblingof.c
deleted file mode 100644 (file)
index cfb2683..0000000
+++ /dev/null
@@ -1,269 +0,0 @@
-/* Return descriptor for sibling of die.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_siblingof (dbg, die, return_sub, error)
-     Dwarf_Debug dbg;
-     Dwarf_Die die;
-     Dwarf_Die *return_sub;
-     Dwarf_Error *error;
-{
-  Dwarf_Small *die_addr;
-  Dwarf_CU_Info cu;
-  Dwarf_Unsigned u128;
-  Dwarf_Die new_die;
-
-  if (dbg == NULL)
-    return DW_DLV_ERROR;
-
-  if (die == NULL)
-    {
-      Dwarf_Unsigned die_offset;
-
-      /* We are supposed to return the DW_TAG_compile_unit die for the
-        current compile unit.  For this to succeed the user must have
-        looked for the compile unit before.  */
-      if (dbg->cu_list_current == NULL)
-       {
-         __libdwarf_error (dbg, error, DW_E_NO_CU);
-         return DW_DLV_ERROR;
-       }
-
-      cu = dbg->cu_list_current;
-
-      die_offset = (cu->offset + 2 * cu->offset_size - 4 + sizeof (Dwarf_Half)
-                   + cu->offset_size + 1);
-
-      /* Check whether this is withing the debug section.  */
-      if (die_offset >= dbg->sections[IDX_debug_info].size)
-       return DW_DLV_NO_ENTRY;
-
-      /* Compute the pointer.  */
-      die_addr = ((Dwarf_Small *) dbg->sections[IDX_debug_info].addr
-                 + die_offset);
-    }
-  else
-    {
-      unsigned int level = 0;
-
-      /* We start from the given die.  */
-      cu = die->cu;
-
-      /* Address of the given die.  */
-      die_addr = die->addr;
-
-      /* Search for the beginning of the next die on this level.  We
-         must not return the dies for children of the given die.  */
-      do
-       {
-         Dwarf_Abbrev abbrev;
-         Dwarf_Small *attrp;
-         Dwarf_Word attr_name;
-         Dwarf_Word attr_form;
-
-         /* Get abbrev code.  */
-         get_uleb128 (u128, die_addr);
-         /*  And get the abbreviation itself.  */
-         abbrev = __libdwarf_get_abbrev (dbg, cu, u128, error);
-         if (abbrev == NULL)
-           return DW_DLV_ERROR;
-
-         /* This is where the attributes start.  */
-         attrp = abbrev->attrp;
-
-         /* Does this abbreviation have children?  */
-         if (abbrev->has_children)
-           ++level;
-
-         while (1)
-           {
-             /* Are we still in bounds?  */
-             if (attrp >= ((Dwarf_Small *)dbg->sections[IDX_debug_abbrev].addr
-                           + dbg->sections[IDX_debug_abbrev].size))
-               {
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             /* Get attribute name and form.
-
-                XXX We don't check whether this reads beyond the end of
-                the section.  */
-             get_uleb128 (attr_name, attrp);
-             get_uleb128 (attr_form, attrp);
-
-             /* We can stop if we found the attribute with value zero.  */
-             if (attr_name == 0 && attr_form == 0)
-               break;
-
-             /* See whether this is an sibling attribute which would help
-                us to skip ahead.  */
-             if (attr_name == DW_AT_sibling)
-               {
-                 /* Cool.  We just have to decode the parameter and we know
-                    the offset.  */
-                 Dwarf_Unsigned offset;
-
-                 switch (attr_form)
-                   {
-                   case DW_FORM_ref1:
-                     offset = *die_addr;
-                     break;
-
-                   case DW_FORM_ref2:
-                     offset = read_2ubyte_unaligned (dbg, die_addr);
-                     break;
-
-                   case DW_FORM_ref4:
-                     offset = read_4ubyte_unaligned (dbg, die_addr);
-                     break;
-
-                   case DW_FORM_ref8:
-                     offset = read_8ubyte_unaligned (dbg, die_addr);
-                     break;
-
-                   case DW_FORM_ref_udata:
-                     get_uleb128 (offset, die_addr);
-                     break;
-
-                   default:
-                     /* The above are all legal forms.  Everything else is
-                        an error.  */
-                     __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                     return DW_DLV_ERROR;
-                   }
-
-                 /* Compute the new address.  Some sanity check first,
-                    though.  */
-                 if (unlikely (offset > 2 * cu->offset_size - 4 + cu->length))
-                   {
-                     __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                     return DW_DLV_ERROR;
-                   }
-
-                 die_addr =
-                   ((Dwarf_Small *) dbg->sections[IDX_debug_info].addr
-                    + cu->offset + offset);
-
-                 /* Even if the abbreviation has children we have stepped
-                    over them now.  */
-                 if (abbrev->has_children)
-                   --level;
-                 break;
-               }
-
-             /* Skip over the rest of this attribute (if there is any).  */
-             if (attr_form != 0)
-               {
-                 size_t len;
-
-                 if (unlikely (__libdwarf_form_val_len (dbg, cu, attr_form,
-                                                        die_addr, &len, error)
-                               != DW_DLV_OK))
-                   return DW_DLV_ERROR;
-
-                 die_addr += len;
-               }
-           }
-
-         /* Check that we are not yet at the end.  */
-         if (*die_addr == 0)
-           {
-             if (level == 0)
-               return DW_DLV_NO_ENTRY;
-
-             do
-               ++die_addr;
-             while (--level > 0 && *die_addr == 0);
-           }
-       }
-      while (level > 0);
-    }
-
-  /* Are we at the end.  */
-  if (die != NULL
-      && die_addr >= ((Dwarf_Small *) dbg->sections[IDX_debug_info].addr
-                     + cu->offset + cu->length + 2 * cu->offset_size - 4))
-    return DW_DLV_NO_ENTRY;
-
-  /* See whether there is another sibling available or whether this is
-     the end.  */
-  if (*die_addr == 0)
-    return DW_DLV_NO_ENTRY;
-
-  /* There is more data.  Create the data structure.  */
-  new_die = (Dwarf_Die) malloc (sizeof (struct Dwarf_Die_s));
-  if (new_die == NULL)
-    {
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-#ifdef DWARF_DEBUG
-  new_die->memtag = DW_DLA_DIE;
-#endif
-
-  /* Remember the address.  */
-  new_die->addr = die_addr;
-
-  /* And the compile unit.  */
-  new_die->cu = cu;
-
-  /* 7.5.2  Debugging Information Entry
-
-     Each debugging information entry begins with an unsigned LEB128
-     number containing the abbreviation code for the entry.  */
-  get_uleb128 (u128, die_addr);
-
-  /* Find the abbreviation.  */
-  new_die->abbrev = __libdwarf_get_abbrev (dbg, cu, u128, error);
-  if (new_die->abbrev == NULL)
-    {
-      free (new_die);
-      return DW_DLV_ERROR;
-    }
-
-  /* If we are looking for the first entry this must be a compile unit.  */
-  if (die == NULL && unlikely (new_die->abbrev->tag != DW_TAG_compile_unit))
-    {
-      free (new_die);
-      __libdwarf_error (dbg, error, DW_E_1ST_NO_CU);
-      return DW_DLV_ERROR;
-    }
-
-  *return_sub = new_die;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_srcfiles.c b/libdwarf/dwarf_srcfiles.c
deleted file mode 100644 (file)
index 60be0a7..0000000
+++ /dev/null
@@ -1,356 +0,0 @@
-/* Return source files of compilation unit.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-struct dirlist
-{
-  char *dir;
-  size_t len;
-  struct dirlist *next;
-};
-
-struct filelist
-{
-  char *name;
-  Dwarf_Unsigned mtime;
-  Dwarf_Unsigned length;
-  struct filelist *next;
-};
-
-
-static int
-read_file_names (Dwarf_Debug dbg, char *comp_dir, Dwarf_Small **linepp,
-                char ***result, Dwarf_Signed *nresult, Dwarf_Error *error)
-{
-  Dwarf_Small *linep = *linepp;
-  struct dirlist comp_dir_elem;
-  struct dirlist *dirlist;
-  unsigned int ndirlist;
-  struct dirlist **dirarray;
-  struct filelist *filelist = NULL;
-  unsigned int nfilelist = 0;
-
-  /* First comes the list of directories.  Add the compilation directory
-     first since the index zero is used for it.  */
-  comp_dir_elem.dir = comp_dir;
-  comp_dir_elem.len = comp_dir ? strlen (comp_dir) : 0;
-  comp_dir_elem.next = NULL;
-  dirlist = &comp_dir_elem;
-  ndirlist = 1;
-
-  while (*linep != 0)
-    {
-      struct dirlist *new_dir = (struct dirlist *) alloca (sizeof (*new_dir));
-
-      new_dir->dir = (char *) linep;
-      new_dir->len = strlen ((char *) linep);
-      new_dir->next = dirlist;
-      dirlist = new_dir;
-      ++ndirlist;
-      linep += new_dir->len + 1;
-    }
-  /* Skip the final NUL byte.  */
-  ++linep;
-
-  /* Rearrange the list in array form.  */
-  dirarray = (struct dirlist **) alloca (sizeof (*dirarray));
-  while (ndirlist-- > 0)
-    {
-      dirarray[ndirlist] = dirlist;
-      dirlist = dirlist->next;
-    }
-
-  /* Now read the files.  */
-  while (*linep != 0)
-    {
-      struct filelist *new_file =
-       (struct filelist *) alloca (sizeof (*new_file));
-      char *fname;
-      size_t fnamelen;
-      Dwarf_Unsigned diridx;
-
-      /* First comes the file name.  */
-      fname = (char *) linep;
-      fnamelen = strlen (fname);
-      linep += fnamelen + 1;
-
-      /* Then the index.  */
-      get_uleb128 (diridx, linep);
-      if (unlikely (diridx >= ndirlist))
-       {
-         __libdwarf_error (dbg, error, DW_E_INVALID_DIR_IDX);
-         return DW_DLV_ERROR;
-       }
-
-      if (*fname == '/')
-       /* It's an absolute path.  */
-       new_file->name = strdup (fname);
-      else
-       {
-         new_file->name = (char *) malloc (dirarray[diridx]->len + 1
-                                           + fnamelen + 1);
-         if (new_file->name != NULL)
-           {
-             char *cp = new_file->name;
-
-             if (dirarray[diridx]->dir != NULL)
-               /* This value could be NULL in case the DW_AT_comp_dir
-                  was not present.  We cannot do much in this case.
-                  The easiest thing is to convert the path in an
-                  absolute path.  */
-               cp = stpcpy (cp, dirarray[diridx]->dir);
-             *cp++ = '/';
-             strcpy (cp, fname);
-           }
-       }
-      if (new_file->name == NULL)
-       {
-         /* XXX Should we bother to free all the memory?  */
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      /* Next comes the modification time.  */
-      get_uleb128 (new_file->mtime, linep);
-
-      /* Finally the length of the file.  */
-      get_uleb128 (new_file->length, linep);
-
-      new_file->next = filelist;
-      filelist = new_file;
-      ++nfilelist;
-    }
-
-  /* Put all the files in an array.  */
-  *result = (char **) malloc (nfilelist * sizeof (char *));
-  if (*result == NULL)
-    {
-      /* XXX Should we bother to free all the memory?  */
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  *nresult = nfilelist;
-  while (nfilelist-- > 0)
-    {
-      (*result)[nfilelist] = filelist->name;
-      filelist = filelist->next;
-    }
-
-  /* Provide caller address of next byte.  */
-  *linepp = linep + 1;
-
-  return DW_DLV_OK;
-}
-
-
-int
-dwarf_srcfiles (die, srcfiles, srcfilecount, error)
-     Dwarf_Die die;
-     char ***srcfiles;
-     Dwarf_Signed *srcfilecount;
-     Dwarf_Error *error;
-{
-  Dwarf_CU_Info cu = die->cu;
-  Dwarf_Debug dbg = cu->dbg;
-  Dwarf_Attribute stmt_list;
-  Dwarf_Attribute comp_dir_attr;
-  char *comp_dir;
-  Dwarf_Unsigned offset;
-  Dwarf_Small *linep;
-  Dwarf_Small *lineendp;
-  Dwarf_Small *header_start;
-  Dwarf_Unsigned header_length;
-  unsigned int unit_length;
-  unsigned int version;
-  unsigned int opcode_base;
-  int length;
-  int res;
-
-  /* For now we haven't found anything.  */
-  *srcfilecount = 0;
-
-  /* The die must be for a compilation unit.  */
-  if (die->abbrev->tag != DW_TAG_compile_unit)
-    {
-      __libdwarf_error (die->cu->dbg, error, DW_E_NO_CU);
-      return DW_DLV_ERROR;
-    }
-
-  /* The die must have a statement list associated.  */
-  res = dwarf_attr (die, DW_AT_stmt_list, &stmt_list, error);
-  if (res != DW_DLV_OK)
-    return res;
-
-  /* Get the offset into the .debug_line section.  */
-  res = dwarf_formudata (stmt_list, &offset, error);
-  if (res != DW_DLV_OK)
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      return res;
-    }
-
-  /* We need a .debug_line section.  */
-  if (dbg->sections[IDX_debug_line].addr == NULL)
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_NO_DEBUG_LINE);
-      return DW_DLV_ERROR;
-    }
-
-  linep = (Dwarf_Small *) dbg->sections[IDX_debug_line].addr + offset;
-  lineendp = ((Dwarf_Small *) dbg->sections[IDX_debug_line].addr
-             + dbg->sections[IDX_debug_line].size);
-
-  /* Test whether at least the first 4 bytes are available.  */
-  if (unlikely (linep + 4 > lineendp))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* Get the compilation directory.  */
-  res = dwarf_attr (die, DW_AT_comp_dir, &comp_dir_attr, error);
-  if (unlikely (res == DW_DLV_ERROR)
-      || (res == DW_DLV_OK
-         && unlikely (dwarf_formstring (comp_dir_attr, &comp_dir, error)
-                      == DW_DLV_ERROR)))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-  else if (res == DW_DLV_OK)
-    dwarf_dealloc (dbg, comp_dir_attr, DW_DLA_ATTR);
-  else
-    comp_dir = NULL;
-
-  /* Read the unit_length.  */
-  unit_length = read_4ubyte_unaligned (dbg, linep);
-  linep += 4;
-  length = 4;
-  if (unit_length == 0xffffffff)
-    {
-      if (unlikely (linep + 8 > lineendp))
-       {
-         dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      unit_length = read_8ubyte_unaligned (dbg, linep);
-      linep += 8;
-      length = 8;
-    }
-
-  /* Check whether we have enough room in the section.  */
-  if (unlikely (linep + unit_length > lineendp))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-  lineendp = linep + unit_length;
-
-  /* The next element of the header is the version identifier.  */
-  version = read_2ubyte_unaligned (dbg, linep);
-  if (unlikely (version != DWARF_VERSION))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_VERSION_ERROR);
-      return DW_DLV_ERROR;
-    }
-  linep += 2;
-
-  /* Next comes the header length.  */
-  if (length == 4)
-    {
-      header_length = read_4ubyte_unaligned (dbg, linep);
-      linep += 4;
-    }
-  else
-    {
-      header_length = read_8ubyte_unaligned (dbg, linep);
-      linep += 8;
-    }
-  header_start = linep;
-
-  /* Next the minimum instruction length.  Skip it.  */
-  ++linep;
-
-  /* Then the flag determining the default value of the is_stmt
-     register.  Skip it.  */
-  ++linep;
-
-  /* Now the line base.  Skip it.  */
-  ++linep;
-
-  /* And the line range.  Skip it.  */
-  ++linep;
-
-  /* The opcode base.  */
-  opcode_base = *linep++;
-
-  /* Skip the array with the standard opcode length.  */
-  linep += opcode_base - 1;
-
-  /* Next the include directories and the file names.  */
-  if (unlikely (read_file_names (dbg, comp_dir, &linep, srcfiles, srcfilecount,
-                                error) != DW_DLV_OK))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      return DW_DLV_ERROR;
-    }
-
-  /* Consistency check.  */
-  if (unlikely (linep != header_start + header_length))
-    {
-      int i;
-
-      for (i = 0; i < *srcfilecount; ++i)
-       dwarf_dealloc (dbg, (*srcfiles)[i], DW_DLA_STRING);
-      dwarf_dealloc (dbg, *srcfiles, DW_DLA_LIST);
-
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_srclang.c b/libdwarf/dwarf_srclang.c
deleted file mode 100644 (file)
index 214bbff..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Return source language associated with die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_srclang (die, return_lang, error)
-     Dwarf_Die die;
-     Dwarf_Unsigned *return_lang;
-     Dwarf_Error *error;
-{
-  return __libdwarf_getconstant (die, DW_AT_language, return_lang, error);
-}
diff --git a/libdwarf/dwarf_srclines.c b/libdwarf/dwarf_srclines.c
deleted file mode 100644 (file)
index 403edb2..0000000
+++ /dev/null
@@ -1,757 +0,0 @@
-/* Return source lines of compilation unit.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <dwarf.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <libdwarfP.h>
-
-
-struct dirlist
-{
-  char *dir;
-  size_t len;
-  struct dirlist *next;
-};
-
-struct filelist
-{
-  char *name;
-  Dwarf_Unsigned mtime;
-  Dwarf_Unsigned length;
-  struct filelist *next;
-};
-
-struct linelist
-{
-  Dwarf_Line line;
-  struct linelist *next;
-};
-
-
-/* Adds a new line to the matrix.  We cannot definte a function because
-   we want to use alloca.  */
-#define NEW_LINE(end_seq) \
-  do {                                                                       \
-       /* Add the new line.  */                                                      \
-       new_line = (struct linelist *) alloca (sizeof (struct linelist));      \
-       new_line->line = (Dwarf_Line) malloc (sizeof (struct Dwarf_Line_s));   \
-       if (new_line == NULL)                                                 \
-        {                                                                    \
-          /* XXX Should we bother to free the memory?  */                    \
-          __libdwarf_error (dbg, error, DW_E_NOMEM);                         \
-          return DW_DLV_ERROR;                                               \
-        }                                                                    \
-                                                                             \
-       /* Set the line information.  */                                              \
-       new_line->line->addr = address;                                       \
-       new_line->line->file = file;                                          \
-       new_line->line->line = line;                                          \
-       new_line->line->column = column;                                              \
-       new_line->line->is_stmt = is_stmt;                                    \
-       new_line->line->basic_block = basic_block;                            \
-       new_line->line->end_sequence = end_seq;                               \
-       new_line->line->prologue_end = prologue_end;                          \
-       new_line->line->epilogue_begin = epilogue_begin;                              \
-                                                                             \
-       new_line->next = linelist;                                            \
-       linelist = new_line;                                                  \
-       ++nlinelist;                                                          \
-  } while (0)
-
-
-int
-dwarf_srclines (die, linebuf, linecount, error)
-     Dwarf_Die die;
-     Dwarf_Line **linebuf;
-     Dwarf_Signed *linecount;
-     Dwarf_Error *error;
-{
-  Dwarf_CU_Info cu = die->cu;
-  Dwarf_Debug dbg = cu->dbg;
-  Dwarf_Attribute stmt_list;
-  Dwarf_Attribute comp_dir_attr;
-  char *comp_dir;
-  Dwarf_Unsigned offset;
-  Dwarf_Small *linep;
-  Dwarf_Small *lineendp;
-  Dwarf_Small *header_start;
-  Dwarf_Unsigned header_length;
-  Dwarf_File files;
-  Dwarf_Line *lines;
-  unsigned int unit_length;
-  unsigned int version;
-  unsigned int opcode_base;
-  Dwarf_Small *standard_opcode_lengths;
-  unsigned int minimum_instruction_length;
-  unsigned int default_is_stmt;
-  int line_base;
-  unsigned int line_range;
-  int length;
-  struct dirlist comp_dir_elem;
-  struct dirlist *dirlist;
-  unsigned int ndirlist;
-  struct dirlist **dirarray;
-  struct filelist *filelist;
-  unsigned int nfilelist;
-  struct filelist null_file;
-  Dwarf_Unsigned address;
-  size_t file;
-  size_t line;
-  size_t column;
-  int is_stmt;
-  int basic_block;
-  int prologue_end;
-  int epilogue_begin;
-  struct linelist *linelist;
-  unsigned int nlinelist;
-  int res;
-
-  /* The die must be for a compilation unit.  */
-  if (unlikely (die->abbrev->tag != DW_TAG_compile_unit))
-    {
-      __libdwarf_error (die->cu->dbg, error, DW_E_NO_CU);
-      return DW_DLV_ERROR;
-    }
-
-  /* The die must have a statement list associated.  */
-  res = dwarf_attr (die, DW_AT_stmt_list, &stmt_list, error);
-  if (unlikely (res != DW_DLV_OK))
-    return res;
-
-  /* Get the offset into the .debug_line section.  */
-  res = dwarf_formudata (stmt_list, &offset, error);
-  if (unlikely (res != DW_DLV_OK))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      return res;
-    }
-
-  /* We need a .debug_line section.  */
-  if (dbg->sections[IDX_debug_line].addr == NULL)
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_NO_DEBUG_LINE);
-      return DW_DLV_ERROR;
-    }
-
-  linep = (Dwarf_Small *) dbg->sections[IDX_debug_line].addr + offset;
-  lineendp = ((Dwarf_Small *) dbg->sections[IDX_debug_line].addr
-             + dbg->sections[IDX_debug_line].size);
-
-  /* Test whether at least the first 4 bytes are available.  */
-  if (unlikely (linep + 4 > lineendp))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* Get the compilation directory.  */
-  res = dwarf_attr (die, DW_AT_comp_dir, &comp_dir_attr, error);
-  if (unlikely (res == DW_DLV_ERROR)
-      || (res == DW_DLV_OK
-         && unlikely (dwarf_formstring (comp_dir_attr, &comp_dir, error)
-                      == DW_DLV_ERROR)))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-  else if (res == DW_DLV_OK)
-    dwarf_dealloc (dbg, comp_dir_attr, DW_DLA_ATTR);
-  else
-    comp_dir = NULL;
-
-  /* Read the unit_length.  */
-  unit_length = read_4ubyte_unaligned (dbg, linep);
-  linep += 4;
-  length = 4;
-  if (unit_length == 0xffffffff)
-    {
-      if (unlikely (linep + 8 > lineendp))
-       {
-         dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-         __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-         return DW_DLV_ERROR;
-       }
-
-      unit_length = read_8ubyte_unaligned (dbg, linep);
-      linep += 8;
-      length = 8;
-    }
-
-  /* Check whether we have enough room in the section.  */
-  if (unlikely (linep + unit_length > lineendp))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-  lineendp = linep + unit_length;
-
-  /* The next element of the header is the version identifier.  */
-  version = read_2ubyte_unaligned (dbg, linep);
-  if (unlikely (version != DWARF_VERSION))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_VERSION_ERROR);
-      return DW_DLV_ERROR;
-    }
-  linep += 2;
-
-  /* Next comes the header length.  */
-  if (length == 4)
-    {
-      header_length = read_4ubyte_unaligned (dbg, linep);
-      linep += 4;
-    }
-  else
-    {
-      header_length = read_8ubyte_unaligned (dbg, linep);
-      linep += 8;
-    }
-  header_start = linep;
-
-  /* Next the minimum instruction length.  */
-  minimum_instruction_length = *linep++;
-
-  /* Then the flag determining the default value of the is_stmt
-     register.  */
-  default_is_stmt = *linep++;
-
-  /* Now the line base.  */
-  line_base = *((signed char *) linep)++;
-
-  /* And the line range.  */
-  line_range = *linep++;
-
-  /* The opcode base.  */
-  opcode_base = *linep++;
-
-  /* Remember array with the standard opcode length (-1 to account for
-     the opcode with value zero not being mentioned).  */
-  standard_opcode_lengths = linep - 1;
-  linep += opcode_base - 1;
-
-  /* First comes the list of directories.  Add the compilation directory
-     first since the index zero is used for it.  */
-  comp_dir_elem.dir = comp_dir;
-  comp_dir_elem.len = comp_dir ? strlen (comp_dir) : 0;
-  comp_dir_elem.next = NULL;
-  dirlist = &comp_dir_elem;
-  ndirlist = 1;
-
-  while (*linep != 0)
-    {
-      struct dirlist *new_dir = (struct dirlist *) alloca (sizeof (*new_dir));
-
-      new_dir->dir = (char *) linep;
-      new_dir->len = strlen ((char *) linep);
-      new_dir->next = dirlist;
-      dirlist = new_dir;
-      ++ndirlist;
-      linep += new_dir->len + 1;
-    }
-  /* Skip the final NUL byte.  */
-  ++linep;
-
-  /* Rearrange the list in array form.  */
-  dirarray = (struct dirlist **) alloca (sizeof (*dirarray));
-  while (ndirlist-- > 0)
-    {
-      dirarray[ndirlist] = dirlist;
-      dirlist = dirlist->next;
-    }
-
-  comp_dir_elem.dir = comp_dir;
-  comp_dir_elem.len = comp_dir ? strlen (comp_dir) : 0;
-  comp_dir_elem.next = NULL;
-  dirlist = &comp_dir_elem;
-  ndirlist = 1;
-
-  /* Now read the files.  */
-  null_file.name = "???";
-  null_file.mtime = 0;
-  null_file.length = 0;
-  null_file.next = NULL;
-  filelist = &null_file;
-  nfilelist = 1;
-
-  while (*linep != 0)
-    {
-      struct filelist *new_file =
-       (struct filelist *) alloca (sizeof (*new_file));
-      char *fname;
-      size_t fnamelen;
-      Dwarf_Unsigned diridx;
-
-      /* First comes the file name.  */
-      fname = (char *) linep;
-      fnamelen = strlen (fname);
-      linep += fnamelen + 1;
-
-      /* Then the index.  */
-      get_uleb128 (diridx, linep);
-      if (unlikely (diridx >= ndirlist))
-       {
-         dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-         __libdwarf_error (dbg, error, DW_E_INVALID_DIR_IDX);
-         return DW_DLV_ERROR;
-       }
-
-      if (*fname == '/')
-       /* It's an absolute path.  */
-       new_file->name = strdup (fname);
-      else
-       {
-         new_file->name = (char *) malloc (dirarray[diridx]->len + 1
-                                           + fnamelen + 1);
-         if (new_file->name != NULL)
-           {
-             char *cp = new_file->name;
-
-             if (dirarray[diridx]->dir != NULL)
-               /* This value could be NULL in case the DW_AT_comp_dir
-                  was not present.  We cannot do much in this case.
-                  The easiest thing is to convert the path in an
-                  absolute path.  */
-               cp = stpcpy (cp, dirarray[diridx]->dir);
-             *cp++ = '/';
-             strcpy (cp, fname);
-           }
-       }
-      if (new_file->name == NULL)
-       {
-         /* XXX Should we bother to free all the memory?  */
-         dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-         __libdwarf_error (dbg, error, DW_E_NOMEM);
-         return DW_DLV_ERROR;
-       }
-
-      /* Next comes the modification time.  */
-      get_uleb128 (new_file->mtime, linep);
-
-      /* Finally the length of the file.  */
-      get_uleb128 (new_file->length, linep);
-
-      new_file->next = filelist;
-      filelist = new_file;
-      ++nfilelist;
-    }
-  ++linep;
-
-  /* Consistency check.  */
-  if (unlikely (linep != header_start + header_length))
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-      return DW_DLV_ERROR;
-    }
-
-  /* We are about to process the statement program.  Initialize the
-     state machine registers (see 6.2.2 in the v2.1 specification).  */
-  address = 0;
-  file = 1;
-  line = 1;
-  column = 0;
-  is_stmt = default_is_stmt;
-  basic_block = 0;
-  prologue_end = 0;
-  epilogue_begin = 0;
-
-  /* Process the instructions.  */
-  linelist = NULL;
-  nlinelist = 0;
-  while (linep < lineendp)
-    {
-      struct linelist *new_line;
-      unsigned int opcode;
-      unsigned int u128;
-      int s128;
-
-      /* Read the opcode.  */
-      opcode = *linep++;
-
-      /* Is this a special opcode?  */
-      if (likely (opcode >= opcode_base))
-       {
-         /* Yes.  Handling this is quite easy since the opcode value
-            is computed with
-
-            opcode = (desired line increment - line_base)
-                     + (line_range * address advance) + opcode_base
-         */
-         int line_increment = line_base + (opcode - opcode_base) % line_range;
-         unsigned int address_increment = (minimum_instruction_length
-                                           * ((opcode - opcode_base)
-                                              / line_range));
-
-         /* Perform the increments.  */
-         line += line_increment;
-         address += address_increment;
-
-         /* Add a new line with the current state machine values.  */
-         NEW_LINE (0);
-
-         /* Reset the flags.  */
-         basic_block = 0;
-         prologue_end = 0;
-         epilogue_begin = 0;
-       }
-      else if (opcode == 0)
-       {
-         /* This an extended opcode.  */
-         unsigned int len;
-
-         /* The length.  */
-         len = *linep++;
-
-         /* The sub-opecode.  */
-         opcode = *linep++;
-
-         switch (opcode)
-           {
-           case DW_LNE_end_sequence:
-             /* Add a new line with the current state machine values.
-                The is the end of the sequence.  */
-             NEW_LINE (1);
-
-             /* Reset the registers.  */
-             address = 0;
-             file = 1;
-             line = 1;
-             column = 0;
-             is_stmt = default_is_stmt;
-             basic_block = 0;
-             prologue_end = 0;
-             epilogue_begin = 0;
-             break;
-
-           case DW_LNE_set_address:
-             if (cu->address_size == 4)
-               address = read_4ubyte_unaligned (dbg, linep);
-             else
-               address = read_8ubyte_unaligned (dbg, linep);
-             linep += cu->address_size;
-             break;
-
-           case DW_LNE_define_file:
-             {
-               struct filelist *new_file;
-               char *fname;
-               size_t fnamelen;
-               unsigned int diridx;
-               Dwarf_Unsigned mtime;
-               Dwarf_Unsigned length;
-
-               fname = (char *) linep;
-               fnamelen = strlen (fname);
-               linep += fnamelen + 1;
-
-               get_uleb128 (diridx, linep);
-               get_uleb128 (mtime, linep);
-               get_uleb128 (length, linep);
-
-               new_file = (struct filelist *) alloca (sizeof (*new_file));
-               if (fname[0] == '/')
-                 new_file->name = strdup (fname);
-               else
-                 {
-
-                   new_file->name = (char *) malloc (dirarray[diridx]->len + 1
-                                                     + fnamelen + 1);
-                   if (new_file->name != NULL)
-                     {
-                       char *cp = new_file->name;
-
-                       if (dirarray[diridx]->dir != NULL)
-                         /* This value could be NULL in case the
-                            DW_AT_comp_dir was not present.  We
-                            cannot do much in this case.  The easiest
-                            thing is to convert the path in an
-                            absolute path.  */
-                         cp = stpcpy (cp, dirarray[diridx]->dir);
-                       *cp++ = '/';
-                       strcpy (cp, fname);
-                     }
-                 }
-               if (new_file->name == NULL)
-                 {
-                   dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                   __libdwarf_error (dbg, error, DW_E_NOMEM);
-                   return DW_DLV_ERROR;
-                 }
-
-               new_file->mtime = mtime;
-               new_file->length = length;
-               new_file->next = filelist;
-               filelist = new_file;
-               ++nfilelist;
-             }
-             break;
-
-           default:
-             /* Unknown, ignore it.  */
-             linep += len - 1;
-             break;
-           }
-       }
-      else if (opcode <= DW_LNS_set_epilog_begin)
-       {
-         /* This is a known standard opcode.  */
-         switch (opcode)
-           {
-           case DW_LNS_copy:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             /* Add a new line with the current state machine values.  */
-             NEW_LINE (0);
-
-             /* Reset the flags.  */
-             basic_block = 0;
-             /* XXX Whether the following two lines are necessary is
-                unclear.  I guess the current v2.1 specification has
-                a bug in that it says clearing these two registers is
-                not necessary.  */
-             prologue_end = 0;
-             epilogue_begin = 0;
-             break;
-
-           case DW_LNS_advance_pc:
-             /* Takes one uleb128 parameter which is added to the address.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 1))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             get_uleb128 (u128, linep);
-             address += minimum_instruction_length * u128;
-             break;
-
-           case DW_LNS_advance_line:
-             /* Takes one sleb128 parameter which is added to the line.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 1))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             get_sleb128 (s128, linep);
-             line += s128;
-             break;
-
-           case DW_LNS_set_file:
-             /* Takes one uleb128 parameter which is stored in file.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 1))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             get_uleb128 (u128, linep);
-             file = u128;
-             break;
-
-           case DW_LNS_set_column:
-             /* Takes one uleb128 parameter which is stored in column.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 1))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             get_uleb128 (u128, linep);
-             column = u128;
-             break;
-
-           case DW_LNS_negate_stmt:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             is_stmt = 1 - is_stmt;
-             break;
-
-           case DW_LNS_set_basic_block:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             basic_block = 1;
-             break;
-
-           case DW_LNS_const_add_pc:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             address += (minimum_instruction_length
-                         * ((255 - opcode_base) / line_range));
-             break;
-
-           case DW_LNS_fixed_advance_pc:
-             /* Takes one 16 bit parameter which is added to the address.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 1))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             address += read_2ubyte_unaligned (dbg, linep);
-             linep += 2;
-             break;
-
-           case DW_LNS_set_prologue_end:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             prologue_end = 1;
-             break;
-
-           case DW_LNS_set_epilog_begin:
-             /* Takes no argument.  */
-             if (unlikely (standard_opcode_lengths[opcode] != 0))
-               {
-                 /* XXX Free memory.  */
-                 dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-                 __libdwarf_error (dbg, error, DW_E_INVALID_DWARF);
-                 return DW_DLV_ERROR;
-               }
-
-             epilogue_begin = 1;
-             break;
-           }
-       }
-      else
-       {
-         /* This is a new opcode the generator but not we know about.
-            Read the parameters associated with it but then discard
-            everything.  */
-         int n;
-
-         /* Read all the parameters for this opcode.  */
-         for (n = standard_opcode_lengths[opcode]; n > 0; --n)
-           {
-             Dwarf_Unsigned u128;
-             get_uleb128 (u128, linep);
-           }
-
-         /* Next round, ignore this opcode.  */
-         continue;
-       }
-    }
-
-  /* Put all the files in an array.  */
-  files = (Dwarf_File) malloc (sizeof (struct Dwarf_File_s)
-                              + nfilelist * sizeof (Dwarf_Fileinfo));
-  if (files == NULL)
-    {
-      /* XXX Should we bother to free all the memory?  */
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  files->nfiles = nfilelist;
-  while (nfilelist-- > 0)
-    {
-      files->info[nfilelist].name = filelist->name;
-      files->info[nfilelist].mtime = filelist->mtime;
-      files->info[nfilelist].length = filelist->length;
-      filelist = filelist->next;
-    }
-
-  /* Remember the debugging descriptor.  */
-  files->dbg = dbg;
-
-  /* Now put the lines in an array.  */
-  lines = (Dwarf_Line *) malloc (nlinelist * sizeof (Dwarf_Line));
-  if (lines == NULL)
-    {
-      dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-      __libdwarf_error (dbg, error, DW_E_NOMEM);
-      return DW_DLV_ERROR;
-    }
-
-  *linebuf = lines;
-  *linecount = nlinelist;
-
-  while (nlinelist--)
-    {
-      lines[nlinelist] = linelist->line;
-      linelist->line->files = files;
-      linelist = linelist->next;
-    }
-
-  dwarf_dealloc (dbg, stmt_list, DW_DLA_ATTR);
-
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_tag.c b/libdwarf/dwarf_tag.c
deleted file mode 100644 (file)
index 4dd94f9..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return tag of die.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_tag (die, tagval, error)
-     Dwarf_Die die;
-     Dwarf_Half *tagval;
-     Dwarf_Error *error;
-{
-  *tagval = die->abbrev->tag;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_whatattr.c b/libdwarf/dwarf_whatattr.c
deleted file mode 100644 (file)
index 9da9703..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return code of attribute.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_whatattr (attr, return_attr, error)
-     Dwarf_Attribute attr;
-     Dwarf_Half *return_attr;
-     Dwarf_Error *error;
-{
-  *return_attr = attr->code;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/dwarf_whatform.c b/libdwarf/dwarf_whatform.c
deleted file mode 100644 (file)
index b051dde..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Return form of attribute.
-   Copyright (C) 2000, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <libdwarfP.h>
-
-
-int
-dwarf_whatform (attr, return_form, error)
-     Dwarf_Attribute attr;
-     Dwarf_Half *return_form;
-     Dwarf_Error *error;
-{
-  *return_form = attr->form;
-  return DW_DLV_OK;
-}
diff --git a/libdwarf/libdwarf.h b/libdwarf/libdwarf.h
deleted file mode 100644 (file)
index 2a2b9e3..0000000
+++ /dev/null
@@ -1,526 +0,0 @@
-/* Interface for libdwarf.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifndef _LIBDWARF_H
-#define _LIBDWARF_H 1
-
-#include <libelf.h>
-#include <stdint.h>
-
-/* Basic data types.  */
-
-/* Used for boolean values.  */
-typedef int Dwarf_Bool;
-
-/* Numeric values of different sizes.  */
-typedef uint8_t Dwarf_Small;
-typedef uint16_t Dwarf_Half;
-typedef uint64_t Dwarf_Unsigned;
-typedef int64_t Dwarf_Signed;
-
-/* Offsets in the debugging sections.  */
-typedef uint64_t Dwarf_Off;
-
-/* Program counter value in the target object file.  */
-typedef uint64_t Dwarf_Addr;
-
-/* Address in the host process.  */
-typedef void *Dwarf_Ptr;
-
-
-/* Location record.  */
-typedef struct
-  {
-    Dwarf_Small lr_atom;               /* Operation */
-    Dwarf_Unsigned lr_number;          /* Operand */
-    Dwarf_Unsigned lr_number2;         /* Possible second operand */
-    Dwarf_Unsigned lr_offset;          /* Offset in location expression */
-  } Dwarf_Loc;
-
-
-/* Location description.  */
-typedef struct
-   {
-     Dwarf_Addr ld_lopc;               /* Beginning of range */
-     Dwarf_Addr ld_hipc;               /* End of range */
-     Dwarf_Half ld_cents;              /* Number of location records */
-     Dwarf_Loc *ld_s;                  /* Array of location records */
-  } Dwarf_Locdesc;
-
-
-/* Error handler function.  */
-typedef struct Dwarf_Error_s *Dwarf_Error;     /* Forward declaration.  */
-typedef void (*Dwarf_Handler) (Dwarf_Error *, Dwarf_Ptr);
-
-/* Descriptor for block of uninterpreted data.  */
-typedef struct
-  {
-    Dwarf_Unsigned bl_len;
-    Dwarf_Ptr bl_data;
-  } Dwarf_Block;
-
-
-/* Descriptor for libdwarf session.  */
-typedef struct Dwarf_Debug_s *Dwarf_Debug;
-
-/* Descriptor for DWARF DIE.  */
-typedef struct Dwarf_Die_s *Dwarf_Die;
-
-/* Descriptor for DWARF attribute list.  */
-typedef struct Dwarf_Attribute_s *Dwarf_Attribute;
-
-/* Descriptor for source lines.  */
-typedef struct Dwarf_Line_s *Dwarf_Line;
-
-/* Descriptor for global name.  */
-typedef struct Dwarf_Global_s *Dwarf_Global;
-
-/* Descriptor for address range.  */
-typedef struct Dwarf_Arange_s *Dwarf_Arange;
-
-/* Descriptor for common information entry.  */
-typedef struct Dwarf_Cie_s *Dwarf_Cie;
-
-/* Descriptor for frame descriptor entry.  */
-typedef struct Dwarf_Fde_s *Dwarf_Fde;
-
-/* Descriptor for abbreviations.  */
-typedef struct Dwarf_Abbrev_s *Dwarf_Abbrev;
-
-
-/* Return values.  */
-enum
-  {
-    DW_DLV_NO_ENTRY = -1,      /* No error, but no entry.  */
-    DW_DLV_OK = 0,             /* Success.  */
-    DW_DLV_ERROR = 1,          /* Failure.  */
-  };
-
-
-/* Values for ACCESS parameter of 'dwarf_init' and 'dwarf_elf_init'.  */
-enum
-  {
-    DW_DLC_READ = 0,           /* Read-only access.  */
-    DW_DLC_WRITE = 1,          /* Write-only access.  */
-    DW_DLC_RDWR = 2            /* Read-write access.  */
-  };
-
-
-/* Open file associates with FD for use with the other functions of
-   this library.  Set the error handler and the parameter passed.  */
-extern int dwarf_init (int fd, Dwarf_Unsigned access,
-                      Dwarf_Handler errhand, Dwarf_Ptr errarg,
-                      Dwarf_Debug *dbg, Dwarf_Error *errdesc);
-
-/* Similar to `dwarf_init' but instead of a file descriptor an ELF
-   descriptor is passed.  */
-extern int dwarf_elf_init (Elf *elf, Dwarf_Unsigned access,
-                          Dwarf_Handler errhand, Dwarf_Ptr errarg,
-                          Dwarf_Debug *dbg, Dwarf_Error *errdesc);
-
-/* Return ELF handle.  */
-extern int dwarf_get_elf_init (Dwarf_Debug dbg, Elf **elf,
-                              Dwarf_Error *errdesc);
-
-/* Free resources allocated for debug handle.  */
-extern int dwarf_finish (Dwarf_Debug dbg, Dwarf_Error *errdesc);
-
-
-/* Return information about current and find new compile unit header.  */
-extern int dwarf_next_cu_header (Dwarf_Debug dbg,
-                                Dwarf_Unsigned *cu_header_length,
-                                Dwarf_Half *version_stamp,
-                                Dwarf_Unsigned *abbrev_offset,
-                                Dwarf_Half *address_size,
-                                Dwarf_Unsigned *next_cu_header,
-                                Dwarf_Error *errdesc);
-
-/* Return sibling of given DIE.  */
-extern int dwarf_siblingof (Dwarf_Debug dbg, Dwarf_Die die,
-                           Dwarf_Die *return_sub, Dwarf_Error *errdesc);
-
-/* Return child of DIE.  */
-extern int dwarf_child (Dwarf_Die die, Dwarf_Die *return_kid,
-                       Dwarf_Error *errdesc);
-
-/* Return DIE at given offset.  */
-extern int dwarf_offdie (Dwarf_Debug dbg, Dwarf_Off offset,
-                        Dwarf_Die *return_die, Dwarf_Error *errdesc);
-
-
-/* Return tag of DIE.  */
-extern int dwarf_tag (Dwarf_Die die, Dwarf_Half *tagval, Dwarf_Error *errdesc);
-
-/* Return offset of DIE in .debug_info section.  */
-extern int dwarf_dieoffset (Dwarf_Die die, Dwarf_Off *return_offset,
-                           Dwarf_Error *errdesc);
-
-/* Return offset of DIE in compile unit data.  */
-extern int dwarf_die_CU_offset (Dwarf_Die die, Dwarf_Off *return_offset,
-                               Dwarf_Error *errdesc);
-
-/* Return name attribute of DIE.  */
-extern int dwarf_diename (Dwarf_Die die, char **return_name,
-                         Dwarf_Error *errdesc);
-
-/* Return list of attributes for DIE.  */
-extern int dwarf_attrlist (Dwarf_Die die, Dwarf_Attribute **attrbuf,
-                          Dwarf_Signed *attrcount, Dwarf_Error *errdesc);
-
-/* Determine whether DIE has attribute specified of given type.  */
-extern int dwarf_hasattr (Dwarf_Die die, Dwarf_Half attr,
-                         Dwarf_Bool *return_bool, Dwarf_Error *errdesc);
-
-/* Return DIE attribute with specified of given type.  */
-extern int dwarf_attr (Dwarf_Die die, Dwarf_Half attr,
-                      Dwarf_Attribute *return_attr, Dwarf_Error *errdesc);
-
-/* Return low program counter value associated with die.  */
-extern int dwarf_lowpc (Dwarf_Die die, Dwarf_Addr *return_lowpc,
-                       Dwarf_Error *errdesc);
-
-/* Return high program counter value associated with die.  */
-extern int dwarf_highpc (Dwarf_Die die, Dwarf_Addr *return_lowpc,
-                        Dwarf_Error *errdesc);
-
-/* Return byte size value associated with die.  */
-extern int dwarf_bytesize (Dwarf_Die die, Dwarf_Unsigned *return_size,
-                          Dwarf_Error *errdesc);
-
-/* Return bit size value associated with die.  */
-extern int dwarf_bitsize (Dwarf_Die die, Dwarf_Unsigned *return_size,
-                         Dwarf_Error *errdesc);
-
-/* Return bit offset value associated with die.  */
-extern int dwarf_bitoffset (Dwarf_Die die, Dwarf_Unsigned *return_size,
-                           Dwarf_Error *errdesc);
-
-/* Return source language associated with die.  */
-extern int dwarf_srclang (Dwarf_Die die, Dwarf_Unsigned *return_lang,
-                         Dwarf_Error *errdesc);
-
-/* Return source language associated with die.  */
-extern int dwarf_arrayorder (Dwarf_Die die, Dwarf_Unsigned *return_order,
-                            Dwarf_Error *errdesc);
-
-
-/* Determine whether attribute has given form.  */
-extern int dwarf_hasform (Dwarf_Attribute attr, Dwarf_Half form,
-                         Dwarf_Bool *return_hasform, Dwarf_Error *errdesc);
-
-/* Return form of attribute.  */
-extern int dwarf_whatform (Dwarf_Attribute attr, Dwarf_Half *return_form,
-                          Dwarf_Error *errdesc);
-
-/* Return code of attribute.  */
-extern int dwarf_whatattr (Dwarf_Attribute attr, Dwarf_Half *return_attr,
-                          Dwarf_Error *errdesc);
-
-/*  Return compile-unit relative offset of reference associated with form.  */
-extern int dwarf_formref (Dwarf_Attribute attr, Dwarf_Off *return_offset,
-                         Dwarf_Error *errdesc);
-
-/*  Return .debug_info section global offset of reference associated
-    with form.  */
-extern int dwarf_global_formref (Dwarf_Attribute attr,
-                                Dwarf_Off *return_offset,
-                                Dwarf_Error *errdesc);
-
-/* Return address represented by attribute.  */
-extern int dwarf_formaddr (Dwarf_Attribute attr, Dwarf_Addr *return_addr,
-                          Dwarf_Error *errdesc);
-
-/* Return flag represented by attribute.  */
-extern int dwarf_formflag (Dwarf_Attribute attr, Dwarf_Bool *return_bool,
-                          Dwarf_Error *errdesc);
-
-/* Return unsigned constant represented by attribute.  */
-extern int dwarf_formudata (Dwarf_Attribute attr, Dwarf_Unsigned *return_uval,
-                           Dwarf_Error *errdesc);
-
-/* Return signed constant represented by attribute.  */
-extern int dwarf_formsdata (Dwarf_Attribute attr, Dwarf_Signed *return_uval,
-                           Dwarf_Error *errdesc);
-
-/* Return block of uninterpreted data represented by attribute.  */
-extern int dwarf_formblock (Dwarf_Attribute attr, Dwarf_Block **return_block,
-                           Dwarf_Error *errdesc);
-
-/* Return string represented by attribute.  */
-extern int dwarf_formstring (Dwarf_Attribute attr, char **return_string,
-                            Dwarf_Error *errdesc);
-
-/* Return location expression list.  */
-extern int dwarf_loclist (Dwarf_Attribute attr, Dwarf_Locdesc **llbuf,
-                         Dwarf_Signed *listlen, Dwarf_Error *errdesc);
-
-
-/* Return source lines of compilation unit.  */
-extern int dwarf_srclines (Dwarf_Die die, Dwarf_Line **linebuf,
-                          Dwarf_Signed *linecount, Dwarf_Error *errdesc);
-
-/* Return files used in compilation unit.  */
-extern int dwarf_srcfiles (Dwarf_Die die, char ***srcfiles,
-                          Dwarf_Signed *srcfilecount, Dwarf_Error *errdesc);
-
-/* Determine whether line is the beginning of a statement.  */
-extern int dwarf_linebeginstatement (Dwarf_Line line, Dwarf_Bool *return_bool,
-                                    Dwarf_Error *errdesc);
-
-/* Determine whether line is marked as ending a text sequence.  */
-extern int dwarf_lineendsequence (Dwarf_Line line, Dwarf_Bool *return_bool,
-                                 Dwarf_Error *errdesc);
-
-/* Return source statement line number.  */
-extern int dwarf_lineno (Dwarf_Line line, Dwarf_Unsigned *return_lineno,
-                        Dwarf_Error *errdesc);
-
-/* Return address associate with line.  */
-extern int dwarf_lineaddr (Dwarf_Line line, Dwarf_Addr *return_lineaddr,
-                          Dwarf_Error *errdesc);
-
-/* Return column at which the statement begins.  */
-extern int dwarf_lineoff (Dwarf_Line line, Dwarf_Signed *return_lineoff,
-                         Dwarf_Error *errdesc);
-
-/* Return source file for line.  */
-extern int dwarf_linesrc (Dwarf_Line line, char **return_linesrc,
-                         Dwarf_Error *errdesc);
-
-/* Determine whether line is marked as beginning a basic block.  */
-extern int dwarf_lineblock (Dwarf_Line line, Dwarf_Bool *return_bool,
-                           Dwarf_Error *errdesc);
-
-/* Determine whether line is marked as ending the prologue.  */
-extern int dwarf_lineprologueend (Dwarf_Line line, Dwarf_Bool *return_bool,
-                                 Dwarf_Error *errdesc);
-
-/* Determine whether line is marked as beginning the epilogue.  */
-extern int dwarf_lineepiloguebegin (Dwarf_Line line, Dwarf_Bool *return_bool,
-                                   Dwarf_Error *errdesc);
-
-
-/* Return list of global definitions.  */
-extern int dwarf_get_globals (Dwarf_Debug dbg, Dwarf_Global **globals,
-                             Dwarf_Signed *return_count,
-                             Dwarf_Error *errdesc);
-
-/* Return name for global definition.  */
-extern int dwarf_globname (Dwarf_Global global, char **return_name,
-                          Dwarf_Error *errdesc);
-
-/* Return DIE offset for global definition.  */
-extern int dwarf_global_die_offset (Dwarf_Global global,
-                                   Dwarf_Off *return_offset,
-                                   Dwarf_Error *errdesc);
-
-/* Return offset of header of compile unit containing the global definition. */
-extern int dwarf_global_cu_offset (Dwarf_Global global,
-                                  Dwarf_Off *return_offset,
-                                  Dwarf_Error *errdesc);
-
-/* Return name, DIE offset, and offset of the compile unit DIE for the
-   global definition.  */
-extern int dwarf_global_name_offsets (Dwarf_Global global, char **return_name,
-                                     Dwarf_Off *die_offset,
-                                     Dwarf_Off *cu_offset,
-                                     Dwarf_Error *errdesc);
-
-
-/* Find start of macro value.  */
-extern char *dwarf_find_macro_value_start (char *macro_string);
-
-
-/* Return string from debug string section.  */
-extern int dwarf_get_str (Dwarf_Debug dbg, Dwarf_Off offset, char **string,
-                         Dwarf_Signed *returned_str_len,
-                         Dwarf_Error *errdesc);
-
-
-/* Return list address ranges.  */
-extern int dwarf_get_aranges (Dwarf_Debug dbg, Dwarf_Arange **aranges,
-                             Dwarf_Signed *return_count,
-                             Dwarf_Error *errdesc);
-
-/* Find matching range for address.  */
-extern int dwarf_get_arange (Dwarf_Arange *aranges,
-                            Dwarf_Unsigned arange_count, Dwarf_Addr address,
-                            Dwarf_Arange *return_arange,
-                            Dwarf_Error *errdesc);
-
-/* Return offset of compile unit DIE containing the range.  */
-extern int dwarf_get_cu_die_offset (Dwarf_Arange arange,
-                                   Dwarf_Off *return_offset,
-                                   Dwarf_Error *errdesc);
-
-/* Return start, length, and CU DIE offset of range.  */
-extern int dwarf_get_arange_info (Dwarf_Arange arange, Dwarf_Addr *start,
-                                 Dwarf_Unsigned *length,
-                                 Dwarf_Off *cu_die_offset,
-                                 Dwarf_Error *errdesc);
-
-
-/* Frame descriptor handling.  */
-
-/* Get frame descriptions.  GCC version using .eh_frame.  */
-extern int dwarf_get_fde_list_eh (Dwarf_Debug dbg, Dwarf_Cie **cie_data,
-                                 Dwarf_Signed *cie_element_count,
-                                 Dwarf_Fde **fde_data,
-                                 Dwarf_Signed *fde_element_count,
-                                 Dwarf_Error *errdesc);
-
-/* Get CIE of FDE.  */
-extern int dwarf_get_cie_of_fde (Dwarf_Fde fde, Dwarf_Cie *return_cie,
-                                Dwarf_Error *errdesc);
-
-/* Get information about the function range.  */
-extern int dwarf_get_fde_range (Dwarf_Fde fde, Dwarf_Addr *low_pc,
-                               Dwarf_Unsigned *func_length,
-                               Dwarf_Ptr *fde_bytes,
-                               Dwarf_Unsigned *fde_byte_length,
-                               Dwarf_Off *cie_offset, Dwarf_Signed *cie_index,
-                               Dwarf_Off *fde_offset, Dwarf_Error *errdesc);
-
-/* Get information about CIE.  */
-extern int dwarf_get_cie_info (Dwarf_Cie cie, Dwarf_Unsigned *bytes_in_cie,
-                              Dwarf_Small *version, char **augmenter,
-                              Dwarf_Unsigned *code_alignment_factor,
-                              Dwarf_Signed *data_alignment_factor,
-                              Dwarf_Half *return_address_register,
-                              Dwarf_Ptr *initial_instructions,
-                              Dwarf_Unsigned *initial_instructions_length,
-                              Dwarf_Error *errdesc);
-
-/* Get frame construction instructions of FDE.  */
-extern int dwarf_get_fde_instr_bytes (Dwarf_Fde fde, Dwarf_Ptr *outinstrs,
-                                     Dwarf_Unsigned *outlen,
-                                     Dwarf_Error *errdesc);
-
-/* Get nth frame descriptions.  */
-extern int dwarf_get_fde_n (Dwarf_Fde *fde_data, Dwarf_Unsigned fde_index,
-                           Dwarf_Fde *returned_fde, Dwarf_Error *errdesc);
-
-/* Find FDE for given address.  */
-extern int dwarf_get_fde_at_pc (Dwarf_Fde *fde_data, Dwarf_Addr pc_of_interest,
-                               Dwarf_Fde *returned_fde, Dwarf_Addr *lopc,
-                               Dwarf_Addr *hipc, Dwarf_Error *errdesc);
-
-
-/* Return location list entry.  */
-extern int dwarf_get_loclist_entry (Dwarf_Debug dbg, Dwarf_Unsigned offset,
-                                   Dwarf_Addr *hipc_offset,
-                                   Dwarf_Addr *lopc_offset, Dwarf_Ptr *data,
-                                   Dwarf_Unsigned *entry_len,
-                                   Dwarf_Unsigned *next_entry,
-                                   Dwarf_Error *errdesc);
-
-
-/* Get abbreviation record.  */
-extern int dwarf_get_abbrev (Dwarf_Debug dbg,
-                            Dwarf_Unsigned offset,
-                            Dwarf_Abbrev *returned_abbrev,
-                            Dwarf_Unsigned *length,
-                            Dwarf_Unsigned *attr_count, Dwarf_Error *errdesc);
-
-/* Get tag of abbreviation record.  */
-extern int dwarf_get_abbrev_tag (Dwarf_Abbrev abbrev, Dwarf_Half *return_tag,
-                                Dwarf_Error *errdesc);
-
-/* Get code of abbreviation record.  */
-extern int dwarf_get_abbrev_code (Dwarf_Abbrev abbrev,
-                                 Dwarf_Unsigned *return_code,
-                                 Dwarf_Error *errdesc);
-
-/* Get children flag of abbreviation record.  */
-extern int dwarf_get_abbrev_children_flag (Dwarf_Abbrev abbrev,
-                                          Dwarf_Signed *return_flag,
-                                          Dwarf_Error *errdesc);
-
-/* Get attribute from abbreviation record.  */
-extern int dwarf_get_abbrev_entry (Dwarf_Abbrev abbrev, Dwarf_Signed idx,
-                                  Dwarf_Half *attr_num, Dwarf_Signed *form,
-                                  Dwarf_Off *offset, Dwarf_Error *errdesc);
-
-
-/* Memory handling.  */
-
-/* Values for ALLOC_TYPE parameter of 'dwarf_dealloc'.  */
-enum
-  {
-    DW_DLA_NONE = 0,
-    DW_DLA_STRING,             /* char* */
-    DW_DLA_LOC,                        /* Dwarf_Loc */
-    DW_DLA_LOCDESC,            /* Dwarf_Locdesc */
-    DW_DLA_ELLIST,             /* Dwarf_Ellist */
-    DW_DLA_BOUNDS,             /* Dwarf_Bounds */
-    DW_DLA_BLOCK,              /* Dwarf_Block */
-    DW_DLA_DEBUG,              /* Dwarf_Debug */
-    DW_DLA_DIE,                        /* Dwarf_Die */
-    DW_DLA_LINE,               /* Dwarf_Line */
-    DW_DLA_ATTR,               /* Dwarf_Attribute */
-    DW_DLA_TYPE,               /* Dwarf_Type */
-    DW_DLA_SUBSCR,             /* Dwarf_Subscr */
-    DW_DLA_GLOBAL,             /* Dwarf_Global */
-    DW_DLA_ERROR,              /* Dwarf_Error */
-    DW_DLA_LIST,               /* a list */
-    DW_DLA_LINEBUF,            /* Dwarf_Line* */
-    DW_DLA_ARANGE,             /* Dwarf_Arange */
-    DW_DLA_ABBREV,             /* Dwarf_Abbrev */
-    DW_DLA_FRAME_OP,           /* Dwarf_Frame_Op */
-    DW_DLA_CIE,                        /* Dwarf_Cie */
-    DW_DLA_FDE,                        /* Dwarf_Fde */
-    DW_DLA_LOC_BLOCK,          /* Dwarf_Loc Block */
-    DW_DLA_FRAME_BLOCK,                /* Dwarf_Frame Block */
-    DW_DLA_FUNC,               /* Dwarf_Func */
-    DW_DLA_TYPENAME,           /* Dwarf_Type */
-    DW_DLA_VAR,                        /* Dwarf_Var */
-    DW_DLA_WEAK,               /* Dwarf_Weak */
-    DW_DLA_ADDR,               /* Dwarf_Addr sized entries */
-  };
-
-/* Deallocate memory.  */
-extern void dwarf_dealloc (Dwarf_Debug dbg, Dwarf_Ptr space,
-                          Dwarf_Unsigned alloc_type);
-
-
-/* Determine size of address of the binary.  */
-extern int dwarf_get_address_size (Dwarf_Debug dbg, Dwarf_Half *addr_size,
-                                  Dwarf_Error *errdesc);
-
-
-/* Return error number.  */
-extern Dwarf_Unsigned dwarf_errno (Dwarf_Error errdesc);
-
-/* Return string corresponding to error.  */
-extern const char *dwarf_errmsg (Dwarf_Error errdesc);
-
-
-/* Set new error handler.  */
-extern Dwarf_Handler dwarf_seterrhand (Dwarf_Debug dbg, Dwarf_Handler errhand);
-
-/* Set new error handler argument.  */
-extern Dwarf_Ptr dwarf_seterrarg (Dwarf_Debug dbg, Dwarf_Ptr errarg);
-
-#endif /* libdwarf.h */
diff --git a/libdwarf/libdwarf.map b/libdwarf/libdwarf.map
deleted file mode 100644 (file)
index ec0e805..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-ELFUTILS_1.0 {
-  global:
-    dwarf_arrayorder;
-    dwarf_attr;
-    dwarf_attrlist;
-    dwarf_bitoffset;
-    dwarf_bitsize;
-    dwarf_bytesize;
-    dwarf_child;
-    dwarf_dealloc;
-    dwarf_die_CU_offset;
-    dwarf_diename;
-    dwarf_dieoffset;
-    dwarf_elf_init;
-    dwarf_errmsg;
-    dwarf_errno;
-    dwarf_find_macro_value_start;
-    dwarf_finish;
-    dwarf_formaddr;
-    dwarf_formblock;
-    dwarf_formflag;
-    dwarf_formref;
-    dwarf_formsdata;
-    dwarf_formstring;
-    dwarf_formudata;
-    dwarf_get_abbrev;
-    dwarf_get_abbrev_children_flag;
-    dwarf_get_abbrev_code;
-    dwarf_get_abbrev_entry;
-    dwarf_get_abbrev_tag;
-    dwarf_get_address_size;
-    dwarf_get_arange;
-    dwarf_get_arange_info;
-    dwarf_get_aranges;
-    dwarf_get_cie_info;
-    dwarf_get_cie_of_fde;
-    dwarf_get_cu_die_offset;
-    dwarf_get_elf_init;
-    dwarf_get_fde_at_pc;
-    dwarf_get_fde_instr_bytes;
-    dwarf_get_fde_list_eh;
-    dwarf_get_fde_n;
-    dwarf_get_fde_range;
-    dwarf_get_globals;
-    dwarf_get_loclist_entry;
-    dwarf_get_str;
-    dwarf_global_cu_offset;
-    dwarf_global_die_offset;
-    dwarf_global_formref;
-    dwarf_global_name_offsets;
-    dwarf_globname;
-    dwarf_hasattr;
-    dwarf_hasform;
-    dwarf_highpc;
-    dwarf_init;
-    dwarf_lineaddr;
-    dwarf_linebeginstatement;
-    dwarf_lineblock;
-    dwarf_lineendsequence;
-    dwarf_lineepiloguebegin;
-    dwarf_lineno;
-    dwarf_lineoff;
-    dwarf_lineprologueend;
-    dwarf_linesrc;
-    dwarf_loclist;
-    dwarf_lowpc;
-    dwarf_next_cu_header;
-    dwarf_offdie;
-    dwarf_seterrarg;
-    dwarf_seterrhand;
-    dwarf_siblingof;
-    dwarf_srcfiles;
-    dwarf_srclang;
-    dwarf_srclines;
-    dwarf_tag;
-    dwarf_whatattr;
-    dwarf_whatform;
-
-  local:
-    *;
-};
diff --git a/libdwarf/libdwarfP.h b/libdwarf/libdwarfP.h
deleted file mode 100644 (file)
index 155b2f1..0000000
+++ /dev/null
@@ -1,331 +0,0 @@
-/* Internal definitions for libdwarf.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifndef _LIBDWARFP_H
-#define _LIBDWARFP_H 1
-
-#include <libdwarf.h>
-#include <libintl.h>
-#include <limits.h>
-
-#include <dwarf_abbrev_hash.h>
-
-
-/* Version of the DWARF specification we support.  */
-#define DWARF_VERSION 2
-
-/* Version of the CIE format.  */
-#define CIE_VERSION 1
-
-/* Some additional basic types.  */
-typedef unsigned int Dwarf_Word;
-
-
-/* Valid indeces for the section data.  */
-enum
-  {
-    IDX_debug_info = 0,
-    IDX_debug_abbrev,
-    IDX_debug_aranges,
-    IDX_debug_line,
-    IDX_debug_frame,
-    IDX_eh_frame,
-    IDX_debug_loc,
-    IDX_debug_pubnames,
-    IDX_debug_str,
-    IDX_debug_funcnames,
-    IDX_debug_typenames,
-    IDX_debug_varnames,
-    IDX_debug_weaknames,
-    IDX_debug_macinfo,
-    IDX_last
-  };
-
-
-/* This is the structure representing the debugging state.  */
-struct Dwarf_Debug_s
-  {
-#ifdef DWARF_DEBUG
-    int memtag;
-#endif
-
-    Dwarf_Handler dbg_errhand;
-    Dwarf_Ptr dbg_errarg;
-
-    Elf *elf;
-    int other_byte_order;
-
-    Dwarf_Unsigned access;
-
-    /* The section data.  */
-    struct
-    {
-      Dwarf_Small *addr;
-      Dwarf_Unsigned size;
-    } sections[IDX_last];
-
-    /* Compilation unit handling.  To enable efficient searching we
-       keep track of the unit we already found.  */
-    struct Dwarf_CU_Info_s
-    {
-      /* This is the information the 'dwarf_next_cu_header' function
-        is supposed to return.  */
-      Dwarf_Unsigned header_length;
-      Dwarf_Unsigned length;
-      Dwarf_Unsigned abbrev_offset;
-      Dwarf_Half version_stamp;
-      Dwarf_Half address_size;
-
-      Dwarf_Unsigned offset;           /* In .debug_info section.  */
-
-      /* Used to distinguish between 32-bit and 64-bit DWARF.  */
-      Dwarf_Half offset_size;
-
-      /* Hash table for the abbreviations.  */
-      Dwarf_Abbrev_Hash abbrev_hash;
-      Dwarf_Unsigned last_abbrev_offset;
-
-      Dwarf_Debug dbg;
-
-      struct Dwarf_CU_Info_s *next;
-    } *cu_list;
-    struct Dwarf_CU_Info_s *cu_list_current;
-    struct Dwarf_CU_Info_s *cu_list_tail;
-
-    Dwarf_Unsigned cie_cnt;
-    Dwarf_Unsigned fde_cnt;
-  };
-typedef struct Dwarf_CU_Info_s *Dwarf_CU_Info;
-
-
-/* Memory access macros.  We have to define it here since code in the
-   header needs to know the structure of Dwarf_Debug.  */
-#include "memory-access.h"
-
-
-/* DWARF die representation.  */
-struct Dwarf_Die_s
-  {
-#ifdef DWARF_DEBUG
-    int memtag;
-#endif
-
-    Dwarf_Small *addr;
-    Dwarf_Abbrev abbrev;
-    Dwarf_CU_Info cu;
-  };
-
-
-/* Abbreviation list.  */
-struct Dwarf_Abbrev_s
-  {
-    Dwarf_Unsigned code;       /* The code.  */
-    Dwarf_Half tag;            /* The tag.  */
-    Dwarf_Small *attrp;                /* Pointer to beginning of attributes.  */
-    Dwarf_Unsigned attrcnt;    /* Number of attributes.  */
-    int has_children;          /* Nonzero of abbreviation has children.  */
-    Dwarf_Unsigned offset;     /* Offset in the .debug_abbrev section.  */
-  };
-
-
-/* Attribute list.  */
-struct Dwarf_Attribute_s
-  {
-    Dwarf_Half code;           /* DWARF attribute code.  */
-    Dwarf_Half form;           /* DWARF form.  */
-    Dwarf_Small *valp;
-    Dwarf_CU_Info cu;
-  };
-
-
-/* Structure for error values.  */
-struct Dwarf_Error_s
-  {
-    unsigned int de_error;
-  };
-
-
-/* Files in line information records.  */
-typedef struct Dwarf_File_s
-  {
-    Dwarf_Debug dbg;
-    unsigned int nfiles;
-    struct Dwarf_Fileinfo_s
-    {
-      char *name;
-      Dwarf_Unsigned mtime;
-      Dwarf_Unsigned length;
-    } info[0];
-  } *Dwarf_File;
-typedef struct Dwarf_Fileinfo_s Dwarf_Fileinfo;
-
-
-/* Representation of a row in the line table.  */
-struct Dwarf_Line_s
-  {
-    Dwarf_Addr addr;
-    unsigned int file;
-    int line;
-    unsigned short int column;
-    unsigned int is_stmt:1;
-    unsigned int basic_block:1;
-    unsigned int end_sequence:1;
-    unsigned int prologue_end:1;
-    unsigned int epilogue_begin:1;
-
-    Dwarf_File files;
-  };
-
-
-/* Additional, shared information required for Dwarf_Global handling.  */
-typedef struct Dwarf_Global_Info_s
-  {
-    Dwarf_Debug dbg;
-    Dwarf_Unsigned offset;
-  } *Dwarf_Global_Info;
-
-/* Representation of a global name entry.  */
-struct Dwarf_Global_s
-  {
-    Dwarf_Unsigned offset;
-    char *name;
-    Dwarf_Global_Info info;
-  };
-
-
-/* Additional, shared information required for Dwarf_Arange handling.  */
-typedef struct Dwarf_Arange_Info_s
-  {
-    Dwarf_Debug dbg;
-    Dwarf_Unsigned offset;
-  } *Dwarf_Arange_Info;
-
-/* Representation of an address range entry.  */
-struct Dwarf_Arange_s
-  {
-    Dwarf_Addr address;
-    Dwarf_Unsigned length;
-    Dwarf_Arange_Info info;
-  };
-
-
-/* Representation of a common information entry.  */
-struct Dwarf_Cie_s
-  {
-    Dwarf_Debug dbg;
-    Dwarf_Unsigned length;
-    char *augmentation;
-    Dwarf_Unsigned code_alignment_factor;
-    Dwarf_Signed data_alignment_factor;
-    Dwarf_Small *initial_instructions;
-    Dwarf_Unsigned initial_instructions_length;
-    Dwarf_Small return_address_register;
-    Dwarf_Unsigned offset;
-    Dwarf_Signed index;
-  };
-
-
-/* Representation of a frame descriptor entry.  */
-struct Dwarf_Fde_s
-  {
-    Dwarf_Cie cie;
-    Dwarf_Addr initial_location;
-    Dwarf_Unsigned address_range;
-    Dwarf_Small *instructions;
-    Dwarf_Unsigned instructions_length;
-    Dwarf_Unsigned offset;
-    Dwarf_Small *fde_bytes;
-    Dwarf_Unsigned fde_byte_length;
-  };
-
-
-/* Internal error values.  */
-enum
-  {
-    DW_E_NOERROR = 0,
-    DW_E_INVALID_ACCESS,
-    DW_E_NO_REGFILE,
-    DW_E_IO_ERROR,
-    DW_E_NOMEM,
-    DW_E_NOELF,
-    DW_E_GETEHDR_ERROR,
-    DW_E_INVALID_ELF,
-    DW_E_INVALID_DWARF,
-    DW_E_NO_DWARF,
-    DW_E_NO_CU,
-    DW_E_1ST_NO_CU,
-    DW_E_INVALID_OFFSET,
-    DW_E_INVALID_REFERENCE,
-    DW_E_NO_REFERENCE,
-    DW_E_NO_ADDR,
-    DW_E_NO_FLAG,
-    DW_E_NO_CONSTANT,
-    DW_E_NO_BLOCK,
-    DW_E_NO_STRING,
-    DW_E_WRONG_ATTR,
-    DW_E_NO_DATA,
-    DW_E_NO_DEBUG_LINE,
-    DW_E_VERSION_ERROR,
-    DW_E_INVALID_DIR_IDX,
-    DW_E_INVALID_ADDR,
-    DW_E_NO_ABBR,
-  };
-
-
-/* Handle error according to user's wishes.  */
-extern void __libdwarf_error (Dwarf_Debug dbg, Dwarf_Error *err, int errval)
-     internal_function;
-
-
-/* Find CU at given offset.  */
-extern int __libdwarf_get_cu_at_offset (Dwarf_Debug dbg, Dwarf_Unsigned offset,
-                                       Dwarf_CU_Info *result_cu,
-                                       Dwarf_Error *err) internal_function;
-
-/* Find abbreviation.  */
-extern Dwarf_Abbrev __libdwarf_get_abbrev (Dwarf_Debug dbg,
-                                          Dwarf_CU_Info cu,
-                                          Dwarf_Word code,
-                                          Dwarf_Error *err)
-     internal_function;
-
-/* Get constant type attribute value.  */
-extern int __libdwarf_getconstant (Dwarf_Die die, Dwarf_Half name,
-                                  Dwarf_Unsigned *return_size,
-                                  Dwarf_Error *err) internal_function;
-
-/* Determine length of form parameters.  */
-extern int __libdwarf_form_val_len (Dwarf_Debug dbg, Dwarf_CU_Info cu,
-                                   Dwarf_Word form, Dwarf_Small *valp,
-                                   size_t *len, Dwarf_Error *err)
-     internal_function;
-
-
-/* gettext helper macros.  */
-#define _(Str) dgettext ("libdwarf", Str)
-#define N_(Str) Str
-
-#endif /* libdwarfP.h */
diff --git a/libdwarf/memory-access.h b/libdwarf/memory-access.h
deleted file mode 100644 (file)
index d5ef01a..0000000
+++ /dev/null
@@ -1,219 +0,0 @@
-/* Unaligned memory access functionality.
-   Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
-   This file is part of Red Hat elfutils.
-   Written by Ulrich Drepper <drepper@redhat.com>, 2000.
-
-   Red Hat elfutils is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by the
-   Free Software Foundation; version 2 of the License.
-
-   Red Hat elfutils is distributed in the hope that it will be useful, but
-   WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   General Public License for more details.
-
-   You should have received a copy of the GNU General Public License along
-   with Red Hat elfutils; if not, write to the Free Software Foundation,
-   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-
-   Red Hat elfutils is an included package of the Open Invention Network.
-   An included package of the Open Invention Network is a package for which
-   Open Invention Network licensees cross-license their patents.  No patent
-   license is granted, either expressly or impliedly, by designation as an
-   included package.  Should you wish to participate in the Open Invention
-   Network licensing program, please visit www.openinventionnetwork.com
-   <http://www.openinventionnetwork.com>.  */
-
-#ifndef _MEMORY_ACCESS_H
-#define _MEMORY_ACCESS_H 1
-
-#include <byteswap.h>
-#include <stdint.h>
-
-
-/* Number decoding macros.  See 7.6 Variable Length Data.  */
-#define get_uleb128(var, addr) \
-  do {                                                                       \
-    Dwarf_Small __b = *addr++;                                               \
-    var = __b & 0x7f;                                                        \
-    if (__b & 0x80)                                                          \
-      {                                                                              \
-       __b = *addr++;                                                        \
-       var |= (__b & 0x7f) << 7;                                             \
-       if (__b & 0x80)                                                       \
-         {                                                                   \
-           __b = *addr++;                                                    \
-           var |= (__b & 0x7f) << 14;                                        \
-           if (__b & 0x80)                                                   \
-             {                                                               \
-               __b = *addr++;                                                \
-               var |= (__b & 0x7f) << 21;                                    \
-               if (__b & 0x80)                                               \
-                 /* Other implementation set VALUE to UINT_MAX in this       \
-                    case.  So we better do this as well.  */                 \
-                 var = UINT_MAX;                                             \
-             }                                                               \
-         }                                                                   \
-      }                                                                              \
-  } while (0)
-
-/* The signed case is a big more complicated.  */
-#define get_sleb128(var, addr) \
-  do {                                                                       \
-    Dwarf_Small __b = *addr++;                                               \
-    int32_t __res = __b & 0x7f;                                                      \
-    if ((__b & 0x80) == 0)                                                   \
-      {                                                                              \
-       if (__b & 0x40)                                                       \
-         __res |= 0xffffff80;                                                \
-      }                                                                              \
-    else                                                                     \
-      {                                                                              \
-       __b = *addr++;                                                        \
-       __res |= (__b & 0x7f) << 7;                                           \
-       if ((__b & 0x80) == 0)                                                \
-         {                                                                   \
-           if (__b & 0x40)                                                   \
-             __res |= 0xffffc000;                                            \
-         }                                                                   \
-       else                                                                  \
-         {                                                                   \
-           __b = *addr++;                                                    \
-           __res |= (__b & 0x7f) << 14;                                      \
-           if ((__b & 0x80) == 0)                                            \
-             {                                                               \
-               if (__b & 0x40)                                               \
-                 __res |= 0xffe00000;                                        \
-             }                                                               \
-           else                                                              \
-             {                                                               \
-               __b = *addr++;                                                \
-               __res |= (__b & 0x7f) << 21;                                  \
-               if ((__b & 0x80) == 0)                                        \
-                 {                                                           \
-                   if (__b & 0x40)                                           \
-                     __res |= 0xf0000000;                                    \
-                 }                                                           \
-               else                                                          \
-                 /* Other implementation set VALUE to INT_MAX in this        \
-                    case.  So we better do this as well.  */                 \
-                 __res = INT_MAX;                                            \
-             }                                                               \
-         }                                                                   \
-      }                                                                              \
-    var = __res;                                                             \
-  } while (0)
-
-
-/* We use simple memory access functions in case the hardware allows it.
-   The caller has to make sure we don't have alias problems.  */
-#if ALLOW_UNALIGNED
-
-# define read_2ubyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? bswap_16 (*((uint16_t *) (Addr)))                                       \
-   : *((uint16_t *) (Addr)))
-# define read_2sbyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? (int16_t) bswap_16 (*((int16_t *) (Addr)))                                      \
-   : *((int16_t *) (Addr)))
-
-# define read_4ubyte_unaligned_noncvt(Addr) \
-   *((uint32_t *) (Addr))
-# define read_4ubyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? bswap_32 (*((uint32_t *) (Addr)))                                       \
-   : *((uint32_t *) (Addr)))
-# define read_4sbyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? (int32_t) bswap_32 (*((int32_t *) (Addr)))                                      \
-   : *((int32_t *) (Addr)))
-
-# define read_8ubyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? bswap_64 (*((uint64_t *) (Addr)))                                       \
-   : *((uint64_t *) (Addr)))
-# define read_8sbyte_unaligned(Dbg, Addr) \
-  ((Dbg)->other_byte_order                                                   \
-   ? (int64_t) bswap_64 (*((int64_t *) (Addr)))                                      \
-   : *((int64_t *) (Addr)))
-
-#else
-
-# if __GNUC__
-
-union unaligned
-  {
-    void *p;
-    uint16_t u2;
-    uint32_t u4;
-    uint64_t u8;
-    int16_t s2;
-    int32_t s4;
-    int64_t s8;
-  } __attribute__ ((packed));
-
-static inline uint16_t
-read_2ubyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return bswap_16 (up->u2);
-  return up->u2;
-}
-static inline int16_t
-read_2sbyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return (int16_t) bswap_16 (up->u2);
-  return up->s2;
-}
-
-static inline uint32_t
-read_4ubyte_unaligned_noncvt (void *p)
-{
-  union unaligned *up = p;
-  return up->u4;
-}
-static inline uint32_t
-read_4ubyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return bswap_32 (up->u4);
-  return up->u4;
-}
-static inline int32_t
-read_4sbyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return (int32_t) bswap_32 (up->u4);
-  return up->s4;
-}
-
-static inline uint64_t
-read_8ubyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return bswap_64 (up->u8);
-  return up->u8;
-}
-static inline int64_t
-read_8sbyte_unaligned (Dwarf_Debug dbg, void *p)
-{
-  union unaligned *up = p;
-  if (dbg->other_byte_order)
-    return (int64_t) bswap_64 (up->u8);
-  return up->s8;
-}
-
-# else
-#  error "TODO"
-# endif
-
-#endif
-
-#endif /* memory-access.h */