added some optional debug printing
authorDima Kogan <dima@secretsauce.net>
Tue, 22 Apr 2014 11:20:32 +0000 (04:20 -0700)
committerChanho Park <chanho61.park@samsung.com>
Fri, 22 Aug 2014 11:38:25 +0000 (20:38 +0900)
dwarf_prototypes.c

index 36c44b9..87081c8 100644 (file)
 #include "options.h"
 #include "filter.h"
 
-#if 0
+
+//#define DUMP_PROTOTYPES
+
+#if 1
 #define complain( die, format, ... )                                                   \
        fprintf(stderr, "%s() die '%s' @ 0x%lx: " format "\n",          \
                        __func__, dwarf_diename(die), dwarf_dieoffset(die),     \
@@ -74,7 +77,9 @@ static bool dump_dwarf_tree(Dwarf_Die* die)
 {
     return _dump_dwarf_tree( die, 0 );
 }
+#endif
 
+#ifdef DUMP_PROTOTYPES
 static bool _dump_ltrace_tree( const struct arg_type_info* info, int indent )
 {
        if( indent > 7 )
@@ -633,6 +638,11 @@ static bool getPrototype(struct prototype* proto, Dwarf_Die* subroutine)
                        return false;
                }
 
+#ifdef DUMP_PROTOTYPES
+               fprintf(stderr, "Adding argument:\n");
+               dump_ltrace_tree(arg_type_info);
+#endif
+
        next_prototype_argument: ;
                int res = dwarf_siblingof(&arg_die, &arg_die);
                if( res == 0 ) continue;     /* sibling exists    */