+make
[nethome.git] / .gdbinit
index 1ac14b6..5a1e9b7 100644 (file)
--- a/.gdbinit
+++ b/.gdbinit
@@ -1,36 +1,79 @@
 # See .bashrc: export GDBHISTFILE="$HOME/.gdb_history"
 # See .bashrc: export GDBHISTFILE="$HOME/.gdb_history"
-#set history filename /home/lace/.gdb_history
+# Should also work <jefyi6bzm6.fsf@sykes.suse.de> (untested):
+# set history filename ~/.gdb_history
 set history save on
 set history save on
-define rt
-       break $arg0
-       run
-#      clear $arg0
-       end
-define ct
-       tbreak $arg0
-       continue
-       end
-define rtl
-       tbreak main
-       run
-       break $arg0
-       continue
-#      clear $arg0
-       end
-define pglist3
+# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=106814
+set complaints 0
+set record insn-number-max 10000000
+define javadump
+       call _Jv_DeepDebug($arg0)
+end
+document javadump
+call _Jv_DeepDebug($arg0)
+end
+define pglist
        if (*("$arg1")=='@')
                set var $arg1=struct $arg1
        if (*("$arg1")=='@')
                set var $arg1=struct $arg1
-               end
+       end
        set var $pglist_list=$arg0
        while ($pglist_list)
        set var $pglist_list=$arg0
        while ($pglist_list)
-               if (!strcmp("$arg2","."))
+               if $argc==2
                        print *(($arg1 *)$pglist_list->data)
                else
                        print *(($arg1 *)$pglist_list->data)$arg2
                        print *(($arg1 *)$pglist_list->data)
                else
                        print *(($arg1 *)$pglist_list->data)$arg2
-                       end
+               end
                set var $pglist_list=$pglist_list->next
                set var $pglist_list=$pglist_list->next
+       end
+end
+document pglist
+GList or GSList dumper iterating by `->next':
+pglist <head pointer> {<data type>|@<struct data type>} [<data field to display>]
+end
+define plist
+       set var $plist_iter=$arg0
+       while ($plist_iter)
+               if $argc==1
+                       print *$plist_iter
+               else
+                       if $argc==2
+                               print $plist_iter->$arg1
+                       else
+                               print$arg2 $plist_iter->$arg1
+                       end
                end
                end
+               set var $plist_iter=$plist_iter->next
        end
        end
-define pglist
-       pglist3 $arg0 $arg1 .
+end
+document plist
+List dumper iterating by `->next':
+plist <head pointer> [<data field to display>] [/<format>]
+end
+define countlist
+       set var $countlist_iter=$arg0
+       set var $countlist_count=0
+       while ($countlist_iter)
+               set var $countlist_iter=$countlist_iter->next
+               set var $countlist_count=$countlist_count+1
        end
        end
+       p $countlist_count
+end
+document countlist
+List elements counter iterating by `->next':
+countlist <head pointer>
+end
+define debug
+       set debug infrun 1
+       set debug lin-lwp 1
+end
+document debug
+set debug infrun 1
+set debug lin-lwp 1
+end
+define sip
+       stepi
+       x/i $pc
+end
+define nip
+       nexti
+       x/i $pc
+end