Home | History | Annotate | Download | only in memcheck

Lines Matching refs:Addr

118       } Addr;
164 Addr src; // Source block
165 Addr dst; // Destination block
566 extra->Err.Addr.isWrite ? "Write" : "Read" );
568 extra->Err.Addr.isWrite ? "write" : "read",
569 extra->Err.Addr.szB );
572 &extra->Err.Addr.ai,
573 extra->Err.Addr.maybe_gcc );
576 extra->Err.Addr.isWrite ? "write" : "read",
577 extra->Err.Addr.szB );
581 &extra->Err.Addr.ai,
582 extra->Err.Addr.maybe_gcc );
675 static Bool is_just_below_ESP( Addr esp, Addr aa )
686 void MC_(record_address_error) ( ThreadId tid, Addr a, Int szB,
705 extra.Err.Addr.isWrite = isWrite;
706 extra.Err.Addr.szB = szB;
707 extra.Err.Addr.maybe_gcc = just_below_esp;
708 extra.Err.Addr.ai.tag = Addr_Undescribed;
721 VG_(maybe_record_error)( tid, Err_Value, /*addr*/0, /*s*/NULL, &extra );
732 VG_(maybe_record_error)( tid, Err_Cond, /*addr*/0, /*s*/NULL, &extra );
740 VG_(maybe_record_error)( tid, Err_CoreMem, /*addr*/0, msg, /*extra*/NULL );
751 VG_(maybe_record_error)( tid, Err_RegParam, /*addr*/0, msg, &extra );
754 void MC_(record_memparam_error) ( ThreadId tid, Addr a,
772 void MC_(record_jump_error) ( ThreadId tid, Addr a )
780 void MC_(record_free_error) ( ThreadId tid, Addr a )
794 ai->Addr.Block.block_kind = Block_Mallocd; // Nb: Not 'Block_Freed'
795 ai->Addr.Block.block_desc = "block";
796 ai->Addr.Block.block_szB = mc->szB;
797 ai->Addr.Block.rwoffset = 0;
798 ai->Addr.Block.allocated_at = MC_(allocated_at) (mc);
799 ai->Addr.Block.freed_at = MC_(freed_at) (mc);
804 void MC_(record_illegal_mempool_error) ( ThreadId tid, Addr a )
813 Addr src, Addr dst, SizeT szB )
821 tid, Err_Overlap, /*addr*/0, /*s*/function, &extra );
833 VG_(unique_error) ( tid, Err_Leak, /*Addr*/0, /*s*/NULL, &extra,
838 void MC_(record_user_error) ( ThreadId tid, Addr a,
908 return ( extra1->Err.Addr.szB == extra2->Err.Addr.szB
928 Bool addr_is_in_MC_Chunk_default_REDZONE_SZB(MC_Chunk* mc, Addr a)
934 Bool addr_is_in_MC_Chunk_with_REDZONE_SZB(MC_Chunk* mc, Addr a, SizeT rzB)
941 static Bool client_block_maybe_describe( Addr a, AddrInfo* ai );
942 static Bool mempool_block_maybe_describe( Addr a, AddrInfo* ai );
947 static void describe_addr ( Addr a, /*OUT*/AddrInfo* ai )
974 ai->Addr.Block.block_kind = Block_Mallocd;
976 ai->Addr.Block.block_desc = "recently re-allocated block";
978 ai->Addr.Block.block_desc = "block";
979 ai->Addr.Block.block_szB = mc->szB;
980 ai->Addr.Block.rwoffset = (Word)a - (Word)mc->data;
981 ai->Addr.Block.allocated_at = MC_(allocated_at)(mc);
982 ai->Addr.Block.freed_at = MC_(freed_at)(mc);
990 ai->Addr.Block.block_kind = Block_Freed;
991 ai->Addr.Block.block_desc = "block";
992 ai->Addr.Block.block_szB = mc->szB;
993 ai->Addr.Block.rwoffset = (Word)a - (Word)mc->data;
994 ai->Addr.Block.allocated_at = MC_(allocated_at)(mc);
995 ai->Addr.Block.freed_at = MC_(freed_at)(mc);
1003 void MC_(pp_describe_addr) ( Addr a )
1061 &extra->Err.Addr.ai );
1094 extra->Err.FreeMismatch.ai.Addr.Block.block_kind);
1105 static Bool client_block_maybe_describe( Addr a,
1123 ai->Addr.Block.block_kind = Block_UserG;
1124 ai->Addr.Block.block_desc = cgbs[i].desc;
1125 ai->Addr.Block.block_szB = cgbs[i].size;
1126 ai->Addr.Block.rwoffset = (Word)(a) - (Word)(cgbs[i].start);
1127 ai->Addr.Block.allocated_at = cgbs[i].where;
1128 ai->Addr.Block.freed_at = VG_(null_ExeContext)();;
1136 static Bool mempool_block_maybe_describe( Addr a,
1150 ai->Addr.Block.block_kind = Block_MempoolChunk;
1151 ai->Addr.Block.block_desc = "block";
1152 ai->Addr.Block.block_szB = mc->szB;
1153 ai->Addr.Block.rwoffset = (Word)a - (Word)mc->data;
1154 ai->Addr.Block.allocated_at = MC_(allocated_at)(mc);
1155 ai->Addr.Block.freed_at = MC_(freed_at)(mc);
1309 return (ekind == Err_Addr && extra->Err.Addr.szB == su_szB);
1362 switch ( extra->Err.Addr.szB ) {
1368 default: VG_(tool_panic)("unexpected size for Addr");