|
From: <sv...@va...> - 2008-10-23 11:19:09
|
Author: sewardj
Date: 2008-10-23 12:13:05 +0100 (Thu, 23 Oct 2008)
New Revision: 8701
Log:
get_Form_contents: handle DW_FORM_block2.
Modified:
trunk/coregrind/m_debuginfo/readdwarf3.c
Modified: trunk/coregrind/m_debuginfo/readdwarf3.c
===================================================================
--- trunk/coregrind/m_debuginfo/readdwarf3.c 2008-10-23 10:54:40 UTC (rev 8700)
+++ trunk/coregrind/m_debuginfo/readdwarf3.c 2008-10-23 11:13:05 UTC (rev 8701)
@@ -1129,6 +1129,19 @@
*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));
|