drd64_libgoblin_dwarf_tag_struct.o \
drd64_libgoblin_dwarf_tag_parameter.o \
drd64_libgoblin_dwarf_tag_function.o \
+ drd64_libgoblin_dwarf_tag_array.o \
drd64_libgoblin_dwarf_tag_class.o \
drd64_libgoblin_dwarf_tag_exception.o \
drd64_libgoblin_dwarf_tag_notclang.o \
drd64_libgoblin_dwarf_tag_struct.h \
drd64_libgoblin_dwarf_tag_parameter.h \
drd64_libgoblin_dwarf_tag_function.h \
+ drd64_libgoblin_dwarf_tag_array.h \
drd64_libgoblin_dwarf_tag_class.h \
drd64_libgoblin_dwarf_tag_exception.h \
drd64_libgoblin_dwarf_tag_notclang.h \
drd64_libgoblin_dwarf_tag_function.c $(HEADER)
$(CC) -c -o drd64_libgoblin_dwarf_tag_function.o $(FLAGS_DEBUG) \
drd64_libgoblin_dwarf_tag_function.c
+drd64_libgoblin_dwarf_tag_array.o: \
+ drd64_libgoblin_dwarf_tag_array.c $(HEADER)
+ $(CC) -c -o drd64_libgoblin_dwarf_tag_array.o $(FLAGS_DEBUG) \
+ drd64_libgoblin_dwarf_tag_array.c
drd64_libgoblin_dwarf_tag_class.o: \
drd64_libgoblin_dwarf_tag_class.c $(HEADER)
$(CC) -c -o drd64_libgoblin_dwarf_tag_class.o $(FLAGS_DEBUG) \
#include"drd64_libgoblin_dwarf_tag_struct.h"
#include"drd64_libgoblin_dwarf_tag_parameter.h"
#include"drd64_libgoblin_dwarf_tag_function.h"
+#include"drd64_libgoblin_dwarf_tag_array.h"
#include"drd64_libgoblin_dwarf_tag_class.h"
#include"drd64_libgoblin_dwarf_tag_exception.h"
#include"drd64_libgoblin_dwarf_tag_notclang.h"
--- /dev/null
+/*DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
+
+ D r . D e a m o n 6 4
+ for INTEL64(R), AMD64(R)
+
+ Copyright(C) 2007-2009 Koine Yuusuke(koinec). All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY Koine Yuusuke(koinec) ``AS IS'' AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL Koine Yuusuke(koinec) OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
+
+DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64*/
+
+/* File Info -----------------------------------------------------------
+File: drd64_.c
+Function:
+Comment:
+----------------------------------------------------------------------*/
+
+#define DRD64_SRC_LIBGOBLIN_DWARF_TAG_ARRAY
+#include"drd64_libgoblin.h"
+
+/*----------------------------------------------------------------------
+DW_TAG_array_type
+DW_TAG_subrange_type
+DW_TAG_enumeration_type
+DW_TAG_enumerator
+----------------------------------------------------------------------*/
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN
+int
+ DWARF_Tag_Array_UnImplement(
+ DWord dw_tag,
+ LibGoblin_BinaryInfo *p_binfo )
+{
+ printf( " UnImplement DWARF Tag(Array): %s [%02xh]\n",
+ Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
+
+ return 0x00;
+}
+
+/*----------------------------------------------------------------------
+----------------------------------------------------------------------*/
+
+
+
+/* EOF of drd64_.c ----------------------------------- */
--- /dev/null
+/*DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
+
+ D r . D e a m o n 6 4
+ for INTEL64(R), AMD64(R)
+
+ Copyright(C) 2007-2009 Koine Yuusuke(koinec). All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY Koine Yuusuke(koinec) ``AS IS'' AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL Koine Yuusuke(koinec) OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
+
+DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64*/
+
+/* File Info -----------------------------------------------------------
+File: drd64_.h
+Function: Header
+Comment:
+----------------------------------------------------------------------*/
+
+#ifndef DRD64_HEADER_LIBGOBLIN_DWARF_TAG_ARRAY
+#define DRD64_HEADER_LIBGOBLIN_DWARF_TAG_ARRAY
+
+#include"drd64_libgoblin.h"
+
+#ifdef DRD64_SRC_LIBGOBLIN_DWARF_TAG_ARRAY
+ #define LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN
+#else
+ #define LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN extern
+#endif
+
+LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN
+ int DWARF_Tag_Array_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+
+
+#endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
+
+/* EOF of drd64_.h ----------------------------------- */
DW_TAG_template_type_parameter
DW_TAG_template_value_parameter
DW_TAG_imported_declaration
+DW_TAG_namespace
+DW_TAG_imported_module
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
#ifdef DRD64_SRC_LIBGOBLIN_DWARF_TAG_DISPATCH
DWARF_TagFunction dwarf_tag[LIBGOBLIN_DWARF_TAG_MAX] = {
{ 0x00, NULL },
- { DW_TAG_array_type, NULL }, // 0x01
+ { DW_TAG_array_type, DWARF_Tag_Array_UnImplement }, // 0x01: array
{ DW_TAG_class_type, DWARF_Tag_Class_UnImplement }, // 0x02: class
{ DW_TAG_entry_point, DWARF_Tag_NotClang_UnImplement }, // 0x03: notclang
- { DW_TAG_enumeration_type, NULL }, // 0x04
+ { DW_TAG_enumeration_type, DWARF_Tag_Array_UnImplement }, // 0x04: array
{ DW_TAG_formal_parameter, DWARF_Tag_Parameter_UnImplement }, // 0x05: parameter
{ 0x06, NULL },
{ 0x07, NULL },
{ DW_TAG_imported_declaration, DWARF_Tag_Class_UnImplement }, // 0x08: class
{ 0x09, NULL },
- { DW_TAG_label, NULL }, // 0x0a
- { DW_TAG_lexical_block, NULL }, // 0x0b
+ { DW_TAG_label, DWARF_Tag_Function_UnImplement }, // 0x0a: function
+ { DW_TAG_lexical_block, DWARF_Tag_Function_UnImplement }, // 0x0b: function
{ 0x0c, NULL },
- { DW_TAG_member, NULL }, // 0x0d
+ { DW_TAG_member, DWARF_Tag_Struct_UnImplement }, // 0x0d: struct
{ 0x0e, NULL },
{ DW_TAG_pointer_type, DWARF_Tag_Type_UnImplement }, // 0x0f: type
- { DW_TAG_reference_type, NULL }, // 0x10
+ { DW_TAG_reference_type, DWARF_Tag_Type_UnImplement }, // 0x10: type
{ DW_TAG_compile_unit, NULL }, // 0x11
{ DW_TAG_string_type, DWARF_Tag_NotClang_UnImplement }, // 0x12: notclang
{ DW_TAG_structure_type, DWARF_Tag_Struct_UnImplement }, // 0x13: struct
{ 0x14, NULL },
- { DW_TAG_subroutine_type, NULL }, // 0x15:
- { DW_TAG_typedef, NULL }, // 0x16
+ { DW_TAG_subroutine_type, DWARF_Tag_Type_UnImplement }, // 0x15: type
+ { DW_TAG_typedef, DWARF_Tag_Type_UnImplement }, // 0x16: type
{ DW_TAG_union_type, DWARF_Tag_Struct_UnImplement }, // 0x17: struct
- { DW_TAG_unspecified_parameters,NULL }, // 0x18
- { DW_TAG_variant, NULL }, // 0x19
+ { DW_TAG_unspecified_parameters,DWARF_Tag_Parameter_UnImplement }, // 0x18: parameter
+ { DW_TAG_variant, DWARF_Tag_Struct_UnImplement }, // 0x19: struct
{ DW_TAG_common_block, DWARF_Tag_NotClang_UnImplement }, // 0x1a: notclang
{ DW_TAG_common_inclusion, DWARF_Tag_NotClang_UnImplement }, // 0x1b: notclang
{ DW_TAG_inheritance, DWARF_Tag_Class_UnImplement }, // 0x1c: class
{ DW_TAG_inlined_subroutine, DWARF_Tag_Function_UnImplement }, // 0x1d: function
{ DW_TAG_module, DWARF_Tag_NotClang_UnImplement }, // 0x1e: notclang
- { DW_TAG_ptr_to_member_type, NULL }, // 0x1f
+ { DW_TAG_ptr_to_member_type, DWARF_Tag_Type_UnImplement }, // 0x1f: type
{ DW_TAG_set_type, DWARF_Tag_NotClang_UnImplement }, // 0x20: notclang
- { DW_TAG_subrange_type, NULL }, // 0x21
+ { DW_TAG_subrange_type, DWARF_Tag_Array_UnImplement }, // 0x21: array
{ DW_TAG_with_stmt, DWARF_Tag_NotClang_UnImplement }, // 0x22: notclang
{ DW_TAG_access_declaration, DWARF_Tag_Class_UnImplement }, // 0x23: class
{ DW_TAG_base_type, DWARF_Tag_Type_UnImplement }, // 0x24: type
{ DW_TAG_catch_block, DWARF_Tag_Exception_UnImplement }, // 0x25: exception
{ DW_TAG_const_type, DWARF_Tag_Type_UnImplement }, // 0x26: type
{ DW_TAG_constant, DWARF_Tag_Parameter_UnImplement }, // 0x27: parameter
- { DW_TAG_enumerator, NULL }, // 0x28
+ { DW_TAG_enumerator, DWARF_Tag_Array_UnImplement }, // 0x28: array
{ 0x29, NULL },
{ DW_TAG_friend, DWARF_Tag_Class_UnImplement }, // 0x2a: class
{ DW_TAG_namelist, DWARF_Tag_NotClang_UnImplement }, // 0x2b: notclang
{ DW_TAG_dwarf_procedure, NULL }, // 0x36
{ DW_TAG_restrict_type, DWARF_Tag_Type_UnImplement }, // 0x37: type
{ DW_TAG_interface_type, DWARF_Tag_Class_UnImplement }, // 0x38: class
- { DW_TAG_namespace, NULL }, // 0x39
- { DW_TAG_imported_module, NULL }, // 0x3a
+ { DW_TAG_namespace, DWARF_Tag_Class_UnImplement }, // 0x39: class
+ { DW_TAG_imported_module, DWARF_Tag_Class_UnImplement }, // 0x3a: class
{ DW_TAG_unspecified_type, DWARF_Tag_Type_UnImplement }, // 0x3b: type
{ DW_TAG_partial_unit, DWARF_Tag_NotClang_UnImplement }, // 0x3c: notclang
{ DW_TAG_imported_unit, DWARF_Tag_NotClang_UnImplement }, // 0x3d: notclang
/*----------------------------------------------------------------------
DW_TAG_subprogram
DW_TAG_inlined_subroutine
+DW_TAG_lexical_block
+DW_TAG_label
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
DW_TAG_variable
DW_TAG_formal_parameter
DW_TAG_constant
+DW_TAG_unspecified_parameters
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
/*----------------------------------------------------------------------
DW_TAG_structure_type
DW_TAG_union_type
+DW_TAG_member
+DW_TAG_variant
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
DW_TAG_reference_type
DW_TAG_restrict_type
DW_TAG_volatile_type
+DW_TAG_typedef
+DW_TAG_subroutine_type
+DW_TAG_ptr_to_member_type
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------