Author: sewardj Date: 2008-03-08 10:44:39 +0000 (Sat, 08 Mar 2008) New Revision: 7597
Log: Handle DW_OP_deref. Modified: trunk/coregrind/m_debuginfo/d3basics.c Modified: trunk/coregrind/m_debuginfo/d3basics.c =================================================================== --- trunk/coregrind/m_debuginfo/d3basics.c 2008-03-08 08:33:41 UTC (rev 7596) +++ trunk/coregrind/m_debuginfo/d3basics.c 2008-03-08 10:44:39 UTC (rev 7597) @@ -39,6 +39,9 @@ #include "pub_core_libcprint.h" #include "pub_core_options.h" +#include "pub_core_vki.h" /* VKI_PROT_READ */ +#include "pub_core_aspacemgr.h" /* VG_(is_valid_for_client) */ + #include "priv_d3basics.h" /* self */ HChar* ML_(pp_DW_children) ( DW_children hashch ) @@ -582,6 +585,17 @@ FAIL("warning: evaluate_Dwarf3_Expr: unhandled " "DW_OP_GNU_push_tls_address"); /*NOTREACHED*/ + case DW_OP_deref: + POP(uw1); + if (VG_(am_is_valid_for_client)( (Addr)uw1, sizeof(Addr), + VKI_PROT_READ )) { + uw1 = *(UWord*)uw1; + PUSH(uw1); + } else { + FAIL("warning: evaluate_Dwarf3_Expr: DW_OP_deref: " + "address not valid for client"); + } + break; default: if (!VG_(clo_xml)) VG_(message)(Vg_DebugMsg, ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Valgrind-developers mailing list Valgrind-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-developers