From e2b15887e6b3c018cc5a6d39e72c08c87b380166 Mon Sep 17 00:00:00 2001 From: Julian Seward Date: Thu, 23 Oct 2008 11:13:05 +0000 Subject: [PATCH] get_Form_contents: handle DW_FORM_block2. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8701 --- coregrind/m_debuginfo/readdwarf3.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/coregrind/m_debuginfo/readdwarf3.c b/coregrind/m_debuginfo/readdwarf3.c index e67d2ec7e1..48e8dbe68e 100644 --- a/coregrind/m_debuginfo/readdwarf3.c +++ b/coregrind/m_debuginfo/readdwarf3.c @@ -1129,6 +1129,19 @@ void get_Form_contents ( /*OUT*/ULong* cts, *ctsMemSzB = (UWord)u64; break; } + case DW_FORM_block2: { + ULong u64b; + ULong u64 = (ULong)get_UShort(c); + UChar* block = get_address_of_Cursor(c); + TRACE_D3("%llu byte block: ", u64); + for (u64b = u64; u64b > 0; u64b--) { + UChar u8 = get_UChar(c); + TRACE_D3("%x ", (UInt)u8); + } + *cts = (ULong)(UWord)block; + *ctsMemSzB = (UWord)u64; + break; + } default: VG_(printf)("get_Form_contents: unhandled %d (%s)\n", form, ML_(pp_DW_FORM)(form)); -- 2.47.2