OSDN Git Service

(LibGoblin)
authorKoine Yuusuke(koinec) <koinec@users.osdn.me>
Mon, 19 Aug 2019 05:07:16 +0000 (14:07 +0900)
committerKoine Yuusuke(koinec) <koinec@users.osdn.me>
Mon, 19 Aug 2019 05:07:16 +0000 (14:07 +0900)
  * WorkBackup

20 files changed:
libgoblin/drd64_libgoblin_dwarf_tag_array.c
libgoblin/drd64_libgoblin_dwarf_tag_array.h
libgoblin/drd64_libgoblin_dwarf_tag_class.c
libgoblin/drd64_libgoblin_dwarf_tag_class.h
libgoblin/drd64_libgoblin_dwarf_tag_compileunit.c
libgoblin/drd64_libgoblin_dwarf_tag_compileunit.h
libgoblin/drd64_libgoblin_dwarf_tag_dispatch.c
libgoblin/drd64_libgoblin_dwarf_tag_dispatch.h
libgoblin/drd64_libgoblin_dwarf_tag_exception.c
libgoblin/drd64_libgoblin_dwarf_tag_exception.h
libgoblin/drd64_libgoblin_dwarf_tag_function.c
libgoblin/drd64_libgoblin_dwarf_tag_function.h
libgoblin/drd64_libgoblin_dwarf_tag_notclang.c
libgoblin/drd64_libgoblin_dwarf_tag_notclang.h
libgoblin/drd64_libgoblin_dwarf_tag_parameter.c
libgoblin/drd64_libgoblin_dwarf_tag_parameter.h
libgoblin/drd64_libgoblin_dwarf_tag_struct.c
libgoblin/drd64_libgoblin_dwarf_tag_struct.h
libgoblin/drd64_libgoblin_dwarf_tag_type.c
libgoblin/drd64_libgoblin_dwarf_tag_type.h

index 5f0b52b..33b7361 100644 (file)
@@ -50,7 +50,9 @@ LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN
 int
        DWARF_Tag_Array_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Array): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index 5f5598c..3f72a58 100644 (file)
@@ -46,8 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_ARRAY_EXTERN
-       int DWARF_Tag_Array_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
-
+       int DWARF_Tag_Array_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry ); 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
 
index 2598b94..d7d3666 100644 (file)
@@ -56,7 +56,9 @@ LIBGOBLIN_DWARF_TAG_CLASS_EXTERN
 int
        DWARF_Tag_Class_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                     i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Class): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index c5e168a..e541018 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_CLASS_EXTERN
-       int DWARF_Tag_Class_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_Class_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index e476236..5e8068f 100644 (file)
@@ -49,7 +49,9 @@ LIBGOBLIN_DWARF_TAG_COMPILEUNIT_EXTERN
 int
        DWARF_Tag_CompileUnit_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                     i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(CompileUnit): %s [%02xh]\n",
                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index e6b323d..1b50ca5 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_COMPILEUNIT_EXTERN
-       int DWARF_Tag_CompileUnit_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_CompileUnit_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index 7c1f789..7782a6f 100644 (file)
@@ -39,10 +39,13 @@ Comment:
 
 /*----------------------------------------------------------------------
 ----------------------------------------------------------------------*/
+LIBGOBLIN_DWARF_TAG_DISPATCH_EXTERN
 int
        DWARF_Tag_Dispatch_UnknownTag(
                DWord dw_tag,
-               LibGoblin_BinaryInfo *p_binfo )
+               LibGoblin_BinaryInfo *p_binfo,
+               int                                             i_childlv,
+               LibGoblin_DWARF_Info_Ancestry   *p_ancestry )
 {
        // XXX 
        printf( "  ERROR: Unknown DWARF Tag: %02xh\n", dw_tag);
@@ -63,8 +66,11 @@ int
        int             i_result;
        DWord   dw_cnt;
        DWord   dw_tag;
-       int     (* DWARF_Tag_Proc)( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int     (* DWARF_Tag_Proc)(
+                                       DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                                       int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
+//printf("debug: %d\n", (p_ancestry + 10)->i_objid);
        DWARF_Tag_Proc  = NULL;
        dw_tag                  = p_abbrev->dw_tag;
 
@@ -82,7 +88,7 @@ int
                { DWARF_Tag_Proc        = DWARF_Tag_Dispatch_UnknownTag; }
 
        assert( NULL != DWARF_Tag_Proc );
-       i_result        = DWARF_Tag_Proc( dw_tag, p_binfo );
+       i_result        = DWARF_Tag_Proc( dw_tag, p_binfo, i_childlv, p_ancestry );
 
        return 0x00;
 }
index a94bcba..122ad57 100644 (file)
@@ -50,11 +50,20 @@ Comment:
 
 typedef        struct  {
        DWord   dw_tag;
-       int             (* DWARF_Tag_Proc)( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int             (* DWARF_Tag_Proc)(
+                                       DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                                       int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 } DWARF_TagFunction;
 
 
 LIBGOBLIN_DWARF_TAG_DISPATCH_EXTERN
+       int DWARF_Tag_Dispatch_UnknownTag(
+                       DWord dw_tag,
+                       LibGoblin_BinaryInfo *p_binfo,
+                       int i_childlv,
+                       LibGoblin_DWARF_Info_Ancestry *p_ancestry );
+
+LIBGOBLIN_DWARF_TAG_DISPATCH_EXTERN
        int DWARF_Tag_Dispatch(
         LibGoblin_BinaryInfo    *p_binfo,
         DWARF_AbbrevEntry       *p_abbrev,
index 6dd8fec..40445b9 100644 (file)
@@ -49,7 +49,9 @@ LIBGOBLIN_DWARF_TAG_EXCEPTION_EXTERN
 int
        DWARF_Tag_Exception_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Exception): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index 97925cd..642dc3f 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_EXCEPTION_EXTERN
-       int DWARF_Tag_Exception_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_Exception_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index a2017ba..aecb873 100644 (file)
@@ -50,7 +50,9 @@ LIBGOBLIN_DWARF_TAG_FUNCTION_EXTERN
 int
        DWARF_Tag_Function_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Function): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index 2d14ca6..d335ea7 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_FUNCTION_EXTERN
-       int DWARF_Tag_Function_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_Function_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index 95f639a..31bc48c 100644 (file)
@@ -57,8 +57,6 @@ Comment:
 <for ??? lang.>
   DW_TAG_shared_type
   DW_TAG_variant_part
-  DW_TAG_partial_unit
-  DW_TAG_imported_unit
 ----------------------------------------------------------------------*/
 
 /*----------------------------------------------------------------------
@@ -67,7 +65,9 @@ LIBGOBLIN_DWARF_TAG_NOTCLANG_EXTERN
 int
        DWARF_Tag_NotClang_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Not C/C++ Lang.): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index c8b6774..f2ae21d 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_NOTCLANG_EXTERN
-       int DWARF_Tag_NotClang_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_NotClang_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index e1784b9..2a14517 100644 (file)
@@ -50,7 +50,9 @@ LIBGOBLIN_DWARF_TAG_PARAMETER_EXTERN
 int
        DWARF_Tag_Parameter_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Parameter): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index 31e1439..62425ef 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_PARAMETER_EXTERN
-       int DWARF_Tag_Parameter_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_Parameter_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
 
index 3c4d459..a445e69 100644 (file)
@@ -50,7 +50,9 @@ LIBGOBLIN_DWARF_TAG_STRUCT_EXTERN
 int
        DWARF_Tag_Struct_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Struct): %s [%02xh]\n",
                                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index 8d3aae7..ad0dcb9 100644 (file)
@@ -46,8 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_STRUCT_EXTERN
-       int DWARF_Tag_Struct_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
-
+       int DWARF_Tag_Struct_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */
index eadb0ce..af4ed40 100644 (file)
@@ -56,7 +56,9 @@ LIBGOBLIN_DWARF_TAG_TYPE_EXTERN
 int
        DWARF_Tag_Type_UnImplement(
                DWord                                   dw_tag,
-               LibGoblin_BinaryInfo    *p_binfo )
+               LibGoblin_BinaryInfo    *p_binfo,
+               int                                             i_childlv,
+        LibGoblin_DWARF_Info_Ancestry  *p_ancestry )
 {
        printf( "  UnImplement DWARF Tag(Type): %s [%02xh]\n",
                                        Debug_DWARF_GetTAGname( dw_tag ), dw_tag );
index a1c8815..5856f58 100644 (file)
@@ -46,7 +46,9 @@ Comment:
 #endif
 
 LIBGOBLIN_DWARF_TAG_TYPE_EXTERN
-       int DWARF_Tag_Type_UnImplement( DWord dw_tag, LibGoblin_BinaryInfo *p_binfo );
+       int DWARF_Tag_Type_UnImplement(
+                               DWord dw_tag, LibGoblin_BinaryInfo *p_binfo,
+                               int i_childlv, LibGoblin_DWARF_Info_Ancestry *p_ancestry );
 
 
 #endif /* DRD64_HEADER_LIBGOBLIN_BINFO */