Lines Matching refs:VG_
42 #include "pub_tool_options.h" // VG_(clo_xml)
62 return string_table ? (ULong)VG_(sizeFM)(string_table) : 0;
66 return (Word)VG_(strcmp)( (HChar*)s1, (HChar*)s2 );
75 string_table = VG_(newFM)( HG_(zalloc), "hg.sts.1",
79 if (VG_(lookupFM)( string_table,
82 if (0) VG_(printf)("string_table_strdup: %p -> %p\n", str, copy );
87 VG_(addToFM)( string_table, (Word)copy, (Word)copy );
99 return map_LockN_to_P ? (ULong)VG_(sizeFM)(map_LockN_to_P) : 0;
164 map_LockN_to_P = VG_(newFM)( HG_(zalloc), "hg.mLPfLN.1",
168 if (!VG_(lookupFM)( map_LockN_to_P, NULL, (Word*)&lkp, (Word)lkn)) {
181 VG_(addToFM)( map_LockN_to_P, (Word)lkp, (Word)lkp );
361 VG_(memset)(xe, 0, sizeof(*xe) );
384 XError* xe = (XError*)VG_(get_error_extra)(err);
387 // describe_addr ( VG_(get_error_address)(err), &(extra->addrinfo) );
411 VG_(printf)("HG_(update_extra): "
435 = VG_(newXA)( HG_(zalloc), "hg.update_extra.Race.descr1",
438 = VG_(newXA)( HG_(zalloc), "hg.update_extra.Race.descr2",
441 (void) VG_(get_data_description)( xe->XE.Race.descr1,
446 to VG_(indexXA) at zero here? Because
447 VG_(get_data_description) guarantees to zero terminate
451 if (0 == VG_(strlen)( VG_(indexXA)( xe->XE.Race.descr1, 0 ))) {
452 VG_(deleteXA)( xe->XE.Race.descr1 );
455 if (0 == VG_(strlen)( VG_(indexXA)( xe->XE.Race.descr2, 0 ))) {
456 VG_(deleteXA)( xe->XE.Race.descr2 );
520 VgSectKind sect = VG_(DebugInfo_sect_kind)( NULL, 0, data_addr );
521 if (0) VG_(printf)("XXXXXXXXX RACE on %#lx %s\n",
522 data_addr, VG_(pp_SectKind)(sect));
560 VG_(maybe_record_error)( thr->coretid,
578 VG_(maybe_record_error)( thr->coretid,
598 VG_(maybe_record_error)( thr->coretid,
613 VG_(maybe_record_error)( thr->coretid,
640 VG_(maybe_record_error)( thr->coretid,
660 VG_(maybe_record_error)( thr->coretid,
679 VG_(maybe_record_error)( thr->coretid,
692 tl_assert(VG_(get_error_kind)(e1) == VG_(get_error_kind)(e2));
694 xe1 = (XError*)VG_(get_error_extra)(e1);
695 xe2 = (XError*)VG_(get_error_extra)(e2);
699 switch (VG_(get_error_kind)(e1)) {
718 && 0==VG_(strcmp)(xe1->XE.PthAPIerror.fnname,
725 && 0==VG_(strcmp)(xe1->XE.Misc.errstr, xe2->XE.Misc.errstr);
740 channel, depending on the setting of VG_(clo_xml).
744 if (VG_(clo_xml)) {
745 VG_(vprintf_xml)(format, vargs);
747 VG_(vmessage)(Vg_UserMsg, format, vargs);
772 if (VG_(clo_xml)) {
774 VG_(printf_xml)("<announcethread>\n");
775 VG_(printf_xml)(" <hthreadid>%d</hthreadid>\n", thr->errmsg_index);
778 VG_(printf_xml)(" <isrootthread></isrootthread>\n");
781 VG_(pp_ExeContext)( thr->created_at );
783 VG_(printf_xml)("</announcethread>\n\n");
787 VG_(umsg)("---Thread-Announcement----------"
789 VG_(umsg)("\n");
793 VG_(message)(Vg_UserMsg,
798 VG_(message)(Vg_UserMsg, "Thread #%d was created\n",
800 VG_(pp_ExeContext)( thr->created_at );
802 VG_(message)(Vg_UserMsg, "\n");
821 if (VG_(clo_xml)) {
824 VG_(umsg)( "Lock at %p was first observed\n",
826 VG_(pp_ExeContext)( lk->appeared_at );
827 VG_(umsg)("\n");
860 VG_(umsg)( "%sLocks held: none", pre );
862 VG_(umsg)( "%sLocks held: %lu, at address%s ",
870 VG_(umsg)( "%p", (void*)locks[i]->guestaddr);
872 VG_(umsg)(" ");
875 VG_(umsg)(" (and %lu that can't be shown)", nLocks - nLocksValid);
877 VG_(umsg)("\n");
890 xe = (XError*)VG_(get_error_extra)(err);
893 switch (VG_(get_error_kind)(err)) {
927 const Bool xml = VG_(clo_xml); /* a shorthand, that's all */
930 VG_(umsg)("--------------------------------"
932 VG_(umsg)("\n");
935 XError *xe = (XError*)VG_(get_error_extra)(err);
941 switch (VG_(get_error_kind)(err)) {
955 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
959 VG_(pp_ExeContext)( xe->XE.Misc.auxctx );
967 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
971 VG_(pp_ExeContext)( xe->XE.Misc.auxctx );
992 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
998 VG_(pp_ExeContext)( xe->XE.LockOrder.shouldbe_earlier_ec );
1002 VG_(pp_ExeContext)( xe->XE.LockOrder.shouldbe_later_ec );
1016 VG_(pp_ExeContext)(xe->XE.LockOrder.actual_earlier_ec);
1023 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1030 VG_(pp_ExeContext)( xe->XE.LockOrder.shouldbe_earlier_ec );
1034 VG_(pp_ExeContext)( xe->XE.LockOrder.shouldbe_later_ec );
1057 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1066 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1086 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1093 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1118 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1123 VG_(pp_ExeContext)( xe->XE.UnlockForeign.lock->appeared_at );
1133 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1137 VG_(pp_ExeContext)( xe->XE.UnlockForeign.lock->appeared_at );
1159 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1163 VG_(pp_ExeContext)( xe->XE.UnlockUnlocked.lock->appeared_at );
1171 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1175 VG_(pp_ExeContext)( xe->XE.UnlockUnlocked.lock->appeared_at );
1189 err_ga = VG_(get_error_address)(err);
1205 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1218 VG_(pp_ExeContext)( xe->XE.Race.h2_ct_accEC );
1230 VG_(pp_ExeContext)( xe->XE.Race.h1_ct_mbsegstartEC );
1236 VG_(pp_ExeContext)( xe->XE.Race.h1_ct_mbsegendEC );
1254 VG_(pp_ExeContext)( VG_(get_error_where)(err) );
1266 VG_(pp_ExeContext)( xe->XE.Race.h2_ct_accEC );
1274 VG_(pp_ExeContext)( xe->XE.Race.h1_ct_mbsegstartEC );
1280 VG_(pp_ExeContext)( xe->XE.Race.h1_ct_mbsegendEC );
1296 VG_(pp_ExeContext)( xe->XE.Race.hctxt );
1302 VG_(pp_ExeContext)( xe->XE.Race.hctxt );
1313 (HChar*)VG_(indexXA)( xe->XE.Race.descr1, 0 ) );
1316 (HChar*)VG_(indexXA)( xe->XE.Race.descr2, 0 ) );
1322 (HChar*)VG_(indexXA)( xe->XE.Race.descr1, 0 ) );
1325 (HChar*)VG_(indexXA)( xe->XE.Race.descr2, 0 ) );
1333 } /* switch (VG_(get_error_kind)(err)) */
1338 switch (VG_(get_error_kind)(err)) {
1353 if (0 == VG_(strcmp)(name, (_name))) { \
1354 VG_(set_supp_kind)(su, (_xskind)); \
1379 switch (VG_(get_supp_kind)(su)) {
1380 case XS_Race: return VG_
1381 case XS_UnlockUnlocked: return VG_(get_error_kind)(err) == XE_UnlockUnlocked;
1382 case XS_UnlockForeign: return VG_(get_error_kind)(err) == XE_UnlockForeign;
1383 case XS_UnlockBogus: return VG_(get_error_kind)(err) == XE_UnlockBogus;
1384 case XS_PthAPIerror: return VG_(get_error_kind)(err) == XE_PthAPIerror;
1385 case XS_LockOrder: return VG_(get_error_kind)(err) == XE_LockOrder;
1386 case XS_Misc: return VG_(get_error_kind)(err) == XE_Misc;
1387 //case XS_: return VG_(get_error_kind)(err) == XE_;