From 650c05ae40b541f731452019fb08cbe6a666c858 Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 9 Feb 2016 02:09:24 +0000 Subject: .gdbinit: improve rb_imemo [ci skip] * .gdbinit (rp_imemo): support imemo_ment and imemo_iseq. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- .gdbinit | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to '.gdbinit') diff --git a/.gdbinit b/.gdbinit index bc79f51368..04680c17a9 100644 --- a/.gdbinit +++ b/.gdbinit @@ -468,7 +468,7 @@ document rp_class end define rp_imemo - set $flags = (((struct RBasic *)($arg0))->flags >> RUBY_FL_USHIFT) & imemo_mask + set $flags = (enum imemo_type)((((struct RBasic *)($arg0))->flags >> RUBY_FL_USHIFT) & imemo_mask) if $flags == imemo_cref printf "(rb_cref_t *) %p\n", (void*)$arg0 print *(rb_cref_t *)$arg0 @@ -488,6 +488,14 @@ define rp_imemo if $flags == imemo_memo printf "(struct MEMO *) %p\n", (void*)$arg0 print *(struct MEMO *)$arg0 + else + if $flags == imemo_ment + printf "(rb_method_entry_t *) %p\n", (void*)$arg0 + print *(rb_method_entry_t *)$arg0 + else + if $flags == imemo_iseq + printf "(rb_iseq_t *) %p\n", (void*)$arg0 + print *(rb_iseq_t *)$arg0 else printf "(struct RIMemo *) %p\n", (void*)$arg0 print *(struct RIMemo *)$arg0 @@ -496,6 +504,8 @@ define rp_imemo end end end + end + end end document rp_imemo Print the content of a memo -- cgit v1.2.3