From: Paul Floyd Date: Sun, 11 May 2025 13:41:10 +0000 (+0200) Subject: Bug 390310 - Output summaries in XML files X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7786b075abef51ca3d84b9717915f04b32950b32;p=thirdparty%2Fvalgrind.git Bug 390310 - Output summaries in XML files Original patch contributed by renaultd@free.fr --- diff --git a/coregrind/m_errormgr.c b/coregrind/m_errormgr.c index 2ce919482..8dfeefeed 100644 --- a/coregrind/m_errormgr.c +++ b/coregrind/m_errormgr.c @@ -1116,8 +1116,10 @@ static Bool show_used_suppressions ( void ) any_supp = True; } - if (VG_(clo_xml)) + if (VG_(clo_xml)) { VG_(printf_xml)("\n"); + VG_(printf_xml)("\n"); + } return any_supp; } @@ -1134,10 +1136,19 @@ void VG_(show_all_errors) ( Int verbosity, Bool xml, Int show_error_list) if (verbosity == 0 && show_error_list == 0) return; - /* If we're printing XML, just show the suppressions and stop. */ + /* If we're printing XML, show the suppressions, the summary and stop. */ if (xml) { if (show_error_list > 0) (void)show_used_suppressions(); + VG_(printf_xml)("\n" + " %u\n" + " %u\n" + " %u\n" + " %u\n" + "\n", + n_errs_found, n_err_contexts, + n_errs_suppressed, n_supp_contexts ); + VG_(printf_xml)("\n"); return; } diff --git a/coregrind/m_libcassert.c b/coregrind/m_libcassert.c index c6380d4e0..38b064021 100644 --- a/coregrind/m_libcassert.c +++ b/coregrind/m_libcassert.c @@ -498,6 +498,10 @@ static void report_and_quit ( const HChar* report, True, // stack_usage False, // exited_threads startRegsIN); + + if (VG_(clo_xml)) // After flushing outputs + VG_(printf_xml)("\n"); + VG_(printf)( "\n" "Note: see also the FAQ in the source distribution.\n" @@ -535,9 +539,6 @@ void VG_(assert_fail) ( Bool isCore, const HChar* expr, const HChar* file, bugs_to = VG_(details).bug_reports_to; } - if (VG_(clo_xml)) - VG_(printf_xml)("\n"); - // Treat vg_assert2(0, "foo") specially, as a panicky abort if (VG_STREQ(expr, "0")) { VG_(printf)("\n%s: %s:%d (%s): the 'impossible' happened.\n", @@ -567,8 +568,6 @@ __attribute__ ((noreturn)) static void panic ( const HChar* name, const HChar* report, const HChar* str, const UnwindStartRegs* startRegs ) { - if (VG_(clo_xml)) - VG_(printf_xml)("\n"); VG_(printf)("\n%s: the 'impossible' happened:\n %s\n", name, str); report_and_quit(report, startRegs); } diff --git a/coregrind/m_libcprint.c b/coregrind/m_libcprint.c index 593889da9..390c0a01a 100644 --- a/coregrind/m_libcprint.c +++ b/coregrind/m_libcprint.c @@ -151,11 +151,7 @@ void VG_(print_preamble)(Bool logging_to_fd) VG_(printf_xml)("\n"); VG_(printf_xml)("\n"); VG_(printf_xml)("\n"); - /* track-fds introduced some new elements. */ - if (VG_(clo_track_fds)) - VG_(printf_xml)("5\n"); - else - VG_(printf_xml)("4\n"); + VG_(printf_xml)("6\n"); VG_(printf_xml)("%s\n", VG_(clo_toolname)); VG_(printf_xml)("\n"); } diff --git a/coregrind/m_main.c b/coregrind/m_main.c index 4da156fb9..128e4298c 100644 --- a/coregrind/m_main.c +++ b/coregrind/m_main.c @@ -2309,9 +2309,7 @@ void shutdown_actions_NORETURN( ThreadId tid, // affects what order the messages come. //-------------------------------------------------------------- // First thing in the post-amble is a blank line. - if (VG_(clo_xml)) - VG_(printf_xml)("\n"); - else if (VG_(clo_verbosity) > 0) + if (VG_(clo_verbosity) > 0 && !VG_(clo_xml)) VG_(message)(Vg_UserMsg, "\n"); if (VG_(clo_xml)) { @@ -2353,9 +2351,7 @@ void shutdown_actions_NORETURN( ThreadId tid, } if (VG_(clo_xml)) { - VG_(printf_xml)("\n"); VG_(printf_xml)("\n"); - VG_(printf_xml)("\n"); } VG_(sanity_check_general)( True /*include expensive checks*/ ); diff --git a/coregrind/m_scheduler/scheduler.c b/coregrind/m_scheduler/scheduler.c index 51ba34361..1623dda5a 100644 --- a/coregrind/m_scheduler/scheduler.c +++ b/coregrind/m_scheduler/scheduler.c @@ -1982,7 +1982,7 @@ Int print_client_message( ThreadId tid, const HChar *format, VG_(get_and_pp_StackTrace)( tid, VG_(clo_backtrace_size) ); if (VG_(clo_xml)) - VG_(printf_xml)( "\n" ); + VG_(printf_xml)( "\n\n" ); return count; } diff --git a/docs/internals/xml-output-protocol6.txt b/docs/internals/xml-output-protocol6.txt new file mode 100644 index 000000000..071ed1182 --- /dev/null +++ b/docs/internals/xml-output-protocol6.txt @@ -0,0 +1,246 @@ +==================================================================== + +11 May 2025 + +Protocol 6 is now always used (unlike protocol 5 which was only +used with--track-fds). The main difference is that the xml output +now contains error summaries. + +==================================================================== + + +Global error summary +-------------------- + +Previously, the non-xml output contained a summary of errors and +suppressions used, like this: + +==3166== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 3 from 3) + +This was not included in the xml output. Starting with protocol 6 it will +be included. The above example would produce + + + 1 + 1 + 3 + 3 + + +Memcheck heap and leak summaries +-------------------------------- + +Memcheck produces two summaries that were not generated for XML. +These are the heap summary, such as + +==80874== HEAP SUMMARY: +==80874== in use at exit: 720 bytes in 5 blocks +==80874== total heap usage: 5 allocs, 0 frees, 720 bytes allocated + +This now generates with --xml=yes + + + + 720 + 5 + + + 5 + 0 + 720 + + + +false + +The final summary is the leak summary. An example of the non-xml output +is as follows: + +==24152== LEAK SUMMARY: +==24152== definitely lost: 48 bytes in 3 blocks +==24152== indirectly lost: 32 bytes in 2 blocks +==24152== possibly lost: 96 bytes in 6 blocks +==24152== still reachable: 64 bytes in 4 blocks +==24152== suppressed: 0 bytes in 0 blocks + +The example above now produces with xml output + + + + 48 + 3 + + + 32 + 2 + + + 96 + 6 + + + 64 + 4 + + + 0 + 0 + + + + +COMMON ELEMENTS +--------------- +BYTES and BLOCKS elements are common to the HEAP and LEAK summaries. + +The BYTES element is + +* INT + +This field indicates the number of bytes of memory that are not deallocated +at exit or user leak check. + +The BLOCKS element is + +* INT + +The block fields contains the number of blocks that have not been deallocated +at exit or user leak check. + + +HEAP SUMMARY +------------ + +The heap summary is contained in a heap_summary element. It contains the +following sub-elements: + +* BYTES AND BLOCKS ELEMENTS + +The second sub-element of heap_summary indicates the total heap usage. + +* ALLOCS FREES AND BYTES ELEMENTS + +The ALLOCS element is + +* INT + +This indicates the total number of allocations during the program run. + +The FREES element is + +* INT + +This indicates the total number of deallocation during the program run. + +The BYTES element is + +* INT + +This indicates the total number of bytes allocated during the program run. + + +ERROR SUMMARY +------------- + +The error summary is contained in an error_summary element. It contains the +following sub-elements: + +* INT + +This field indicates the number of unsuppressed errors that were encountered. + +* INT + +This field indicated the number of unique unsuppressed error contexts. + +* INT + +This is the number of errors that were suppressed. + +* INT + +This is the number of unique error contexts used by the suppressions. + +LEAK SUMMARY +------------ + +The leak summary is contained in a leak_summary element. + +The leak summary sub-elements are: + +* BYTES AND BLOCKS ELEMENTS + +Memory that was definitely lost. + +* BYTES AND BLOCKS ELEMENTS + +Memory that was indirectly lost. + +* BYTES AND BLOCKS ELEMENTS + +Memory that was lost but memcheck cannot determine if it is +definitely lost or still reachable. + +* BYTES BLOCKS AND (optional) REACHABLE_HEURISTIC ELEMENTS + +Memory that was still reachable at exit or the user leak check. + +If the --leak-check-heuristics= option was used then the still_reachable element +may contain further details on the memory and kind of heuristic that the block(s). +correspond to. + +The REACHABLE_HEURISTIC format is + + KIND + INT + INT + + +KIND is one of: + none, stdstring, length64, newarray, multipleinheritance + +* BYTES AND BLOCK ELEMENTS + +Information concerning the amount leaked that was suppressed. + + +Addendum +-------- + +Unfortunately the xml-output-protocol documents were not updated +to reflect some of the memcheck error conditions that were added. +This omission is being rectified here. + +* memcheck error element kind + + Added on 2023-03-10 + + ReallocSizeZero + + realloc() called with a size of zero. + + Added on 2023-09-02 + + InvalidSizeAndAlignment + + an aligned allocation was requested with an invalid size such + as a non-multiple of the alignment + + InvalidAlignment + + an alignment was used that is not allowed such as a non-power + of two + + InvalidSize + + a size of zero was used with an aligned allocation + + MismatchedAllocateDeallocateSize + + the size used for a sized deallocation does not match the + size of the allocated block + + MismatchedAllocateDeallocateAlignment + + the alignment used for a deallocation does not match the + alignment requested when the block was allocated diff --git a/drd/tests/annotate_barrier_xml.stderr.exp b/drd/tests/annotate_barrier_xml.stderr.exp index b34c787e8..702926c18 100644 --- a/drd/tests/annotate_barrier_xml.stderr.exp +++ b/drd/tests/annotate_barrier_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 drd @@ -284,7 +284,6 @@ Done. - FINISHED @@ -323,5 +322,6 @@ Done. ... - +... + diff --git a/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit b/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit index 888084b41..7688aaae7 100644 --- a/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit +++ b/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit @@ -2,7 +2,7 @@ -4 +6 drd @@ -287,7 +287,6 @@ uint64_t Done. - FINISHED @@ -298,5 +297,6 @@ Done. ... - +... + diff --git a/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit-clang b/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit-clang index 13c7a9e5a..057f96054 100644 --- a/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit-clang +++ b/drd/tests/annotate_trace_memory_xml.stderr.exp-32bit-clang @@ -2,7 +2,7 @@ -4 +6 drd @@ -287,7 +287,6 @@ uint64_t Done. - FINISHED @@ -298,5 +297,6 @@ Done. ... - +... + diff --git a/drd/tests/annotate_trace_memory_xml.stderr.exp-64bit b/drd/tests/annotate_trace_memory_xml.stderr.exp-64bit index 8a62b6c46..6f4e8ff4a 100644 --- a/drd/tests/annotate_trace_memory_xml.stderr.exp-64bit +++ b/drd/tests/annotate_trace_memory_xml.stderr.exp-64bit @@ -2,7 +2,7 @@ -4 +6 drd @@ -251,7 +251,6 @@ uint64_t Done. - FINISHED @@ -262,5 +261,6 @@ Done. ... - +... + diff --git a/drd/tests/annotate_trace_memory_xml.stderr.exp-arm b/drd/tests/annotate_trace_memory_xml.stderr.exp-arm index 2af2455ca..146d6574d 100644 --- a/drd/tests/annotate_trace_memory_xml.stderr.exp-arm +++ b/drd/tests/annotate_trace_memory_xml.stderr.exp-arm @@ -2,7 +2,7 @@ -4 +6 drd @@ -299,7 +299,6 @@ uint64_t Done. - FINISHED @@ -310,5 +309,6 @@ Done. ... - +... + diff --git a/drd/tests/annotate_trace_memory_xml.stderr.exp-mips32 b/drd/tests/annotate_trace_memory_xml.stderr.exp-mips32 index 9fc793a41..ef8597835 100644 --- a/drd/tests/annotate_trace_memory_xml.stderr.exp-mips32 +++ b/drd/tests/annotate_trace_memory_xml.stderr.exp-mips32 @@ -2,7 +2,7 @@ -4 +6 drd @@ -323,7 +323,6 @@ uint64_t Done. - FINISHED @@ -334,5 +333,6 @@ Done. ... - +... + diff --git a/drd/tests/bar_bad_xml.stderr.exp b/drd/tests/bar_bad_xml.stderr.exp index 8539f75c7..c6150b899 100644 --- a/drd/tests/bar_bad_xml.stderr.exp +++ b/drd/tests/bar_bad_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 drd @@ -231,5 +231,6 @@ destroy a barrier that was never initialised ... - +... + diff --git a/drd/tests/bar_bad_xml.stderr.exp-freebsd b/drd/tests/bar_bad_xml.stderr.exp-freebsd index 24ac7fe95..460d7f77a 100644 --- a/drd/tests/bar_bad_xml.stderr.exp-freebsd +++ b/drd/tests/bar_bad_xml.stderr.exp-freebsd @@ -2,7 +2,7 @@ -4 +6 drd @@ -251,7 +251,6 @@ destroy a barrier that was never initialised - FINISHED @@ -282,5 +281,6 @@ destroy a barrier that was never initialised ... - +... + diff --git a/drd/tests/bar_bad_xml.stderr.exp-no-barrier b/drd/tests/bar_bad_xml.stderr.exp-no-barrier index 1b7db90d3..26ee071ec 100644 --- a/drd/tests/bar_bad_xml.stderr.exp-no-barrier +++ b/drd/tests/bar_bad_xml.stderr.exp-no-barrier @@ -2,7 +2,7 @@ -4 +6 drd @@ -209,5 +209,6 @@ destroy a barrier that was never initialised ... - +... + diff --git a/drd/tests/bar_bad_xml.stderr.exp-nohang b/drd/tests/bar_bad_xml.stderr.exp-nohang index a47cd603b..14e2fcf45 100644 --- a/drd/tests/bar_bad_xml.stderr.exp-nohang +++ b/drd/tests/bar_bad_xml.stderr.exp-nohang @@ -2,7 +2,7 @@ -4 +6 drd @@ -229,7 +229,6 @@ destroy a barrier that was never initialised - FINISHED @@ -260,5 +259,6 @@ destroy a barrier that was never initialised ... - +... + diff --git a/drd/tests/bar_bad_xml.stderr.exp-solaris b/drd/tests/bar_bad_xml.stderr.exp-solaris index acb965656..59a0c89d5 100644 --- a/drd/tests/bar_bad_xml.stderr.exp-solaris +++ b/drd/tests/bar_bad_xml.stderr.exp-solaris @@ -2,7 +2,7 @@ -4 +6 drd @@ -276,7 +276,6 @@ destroy a barrier that was never initialised - FINISHED @@ -311,5 +310,6 @@ destroy a barrier that was never initialised ... - +... + diff --git a/drd/tests/fp_race_xml.stderr.exp b/drd/tests/fp_race_xml.stderr.exp index 05ffe71e5..17409062b 100644 --- a/drd/tests/fp_race_xml.stderr.exp +++ b/drd/tests/fp_race_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 drd @@ -81,7 +81,6 @@ drd_post_thread_join joiner = 1, joinee = 2, new vc: [ ... ] drd_thread_finished tid = 1 - FINISHED @@ -100,5 +99,6 @@ ... - +... + diff --git a/drd/tests/fp_race_xml.stderr.exp-mips32-be b/drd/tests/fp_race_xml.stderr.exp-mips32-be index 2960a3907..d5bfdd99f 100644 --- a/drd/tests/fp_race_xml.stderr.exp-mips32-be +++ b/drd/tests/fp_race_xml.stderr.exp-mips32-be @@ -2,7 +2,7 @@ -4 +6 drd @@ -154,5 +154,6 @@ ... - +... + diff --git a/drd/tests/fp_race_xml.stderr.exp-mips32-le b/drd/tests/fp_race_xml.stderr.exp-mips32-le index a0edb5e89..d6703d641 100644 --- a/drd/tests/fp_race_xml.stderr.exp-mips32-le +++ b/drd/tests/fp_race_xml.stderr.exp-mips32-le @@ -2,7 +2,7 @@ -4 +6 drd @@ -154,5 +154,6 @@ ... - +... + diff --git a/drd/tests/fp_race_xml.stderr.exp-solaris b/drd/tests/fp_race_xml.stderr.exp-solaris index 05ffe71e5..2063aa4f0 100644 --- a/drd/tests/fp_race_xml.stderr.exp-solaris +++ b/drd/tests/fp_race_xml.stderr.exp-solaris @@ -2,7 +2,7 @@ -4 +6 drd diff --git a/drd/tests/thread_name_xml.stderr.exp b/drd/tests/thread_name_xml.stderr.exp index 36b53604e..0e47f5fff 100644 --- a/drd/tests/thread_name_xml.stderr.exp +++ b/drd/tests/thread_name_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 drd @@ -388,7 +388,6 @@ thread_func instance 10 - FINISHED @@ -439,5 +438,6 @@ thread_func instance 10 ... - +... + diff --git a/helgrind/tests/filter_xml b/helgrind/tests/filter_xml index cc0b71ea0..e9475f04a 100755 --- a/helgrind/tests/filter_xml +++ b/helgrind/tests/filter_xml @@ -40,7 +40,8 @@ my %patterns = ( "0x([0-9a-zA-Z]+)" => "........", "Using Valgrind-([^\\s]*)" => "X.Y.X", "Copyright \\(C\\) ([0-9]{4}-[0-9]{4}).*" => "XXXX-YYYY", - 'pthread_.*(@\*)' => "" + 'pthread_.*(@\*)' => "", + "(.*)" => "..." ); # List of XML sections to be ignored. diff --git a/helgrind/tests/tc06_two_races_xml.stderr.exp b/helgrind/tests/tc06_two_races_xml.stderr.exp index a442a285e..800ef543f 100644 --- a/helgrind/tests/tc06_two_races_xml.stderr.exp +++ b/helgrind/tests/tc06_two_races_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 helgrind @@ -245,7 +245,6 @@ declared at tc06_two_races.c:9 tc06_two_races.c 9 - FINISHED @@ -255,5 +254,11 @@ ... - + + 4 + 4 + 7 + ... + + diff --git a/helgrind/tests/tc06_two_races_xml.stderr.exp-freebsd b/helgrind/tests/tc06_two_races_xml.stderr.exp-freebsd index 65a79a759..724649cb6 100644 --- a/helgrind/tests/tc06_two_races_xml.stderr.exp-freebsd +++ b/helgrind/tests/tc06_two_races_xml.stderr.exp-freebsd @@ -2,7 +2,7 @@ -4 +6 helgrind @@ -237,7 +237,6 @@ declared at tc06_two_races.c:9 tc06_two_races.c 9 - FINISHED @@ -247,5 +246,11 @@ ... - + + 4 + 4 + 7 + ... + + diff --git a/memcheck/mc_leakcheck.c b/memcheck/mc_leakcheck.c index 83a2b74e2..3099a04dd 100644 --- a/memcheck/mc_leakcheck.c +++ b/memcheck/mc_leakcheck.c @@ -1722,7 +1722,9 @@ static void print_results(ThreadId tid, LeakCheckParams* lcp) VG_(XT_delete)(leak_xt); } - if (VG_(clo_verbosity) > 0 && !VG_(clo_xml)) { + UInt (*umsg_or_xml)( const HChar *, ... ) + = VG_(clo_xml) ? VG_(printf_xml) : VG_(umsg); + if (VG_(clo_verbosity) > 0) { HChar d_bytes[31]; HChar d_blocks[31]; # define DBY(new,old) \ @@ -1732,23 +1734,42 @@ static void print_results(ThreadId tid, LeakCheckParams* lcp) MC_(snprintf_delta) (d_blocks, sizeof(d_blocks), (new), (old), \ lcp->deltamode) - VG_(umsg)("LEAK SUMMARY:\n"); - VG_(umsg)(" definitely lost: %'lu%s bytes in %'lu%s blocks\n", + umsg_or_xml(VG_(clo_xml) ? "\n" : "LEAK SUMMARY:\n"); + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %'lu%s\n" + " %'lu%s\n" + " \n" : + " definitely lost: %'lu%s bytes in %'lu%s blocks\n", MC_(bytes_leaked), DBY (MC_(bytes_leaked), old_bytes_leaked), MC_(blocks_leaked), DBL (MC_(blocks_leaked), old_blocks_leaked)); - VG_(umsg)(" indirectly lost: %'lu%s bytes in %'lu%s blocks\n", + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %'lu%s\n" + " %'lu%s\n" + " \n" : + " indirectly lost: %'lu%s bytes in %'lu%s blocks\n", MC_(bytes_indirect), DBY (MC_(bytes_indirect), old_bytes_indirect), MC_(blocks_indirect), DBL (MC_(blocks_indirect), old_blocks_indirect)); - VG_(umsg)(" possibly lost: %'lu%s bytes in %'lu%s blocks\n", + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %'lu%s\n" + " %'lu%s\n" + " \n" : + " possibly lost: %'lu%s bytes in %'lu%s blocks\n", MC_(bytes_dubious), DBY (MC_(bytes_dubious), old_bytes_dubious), MC_(blocks_dubious), DBL (MC_(blocks_dubious), old_blocks_dubious)); - VG_(umsg)(" still reachable: %'lu%s bytes in %'lu%s blocks\n", + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %'lu%s\n" + " %'lu%s\n" : + " still reachable: %'lu%s bytes in %'lu%s blocks\n", MC_(bytes_reachable), DBY (MC_(bytes_reachable), old_bytes_reachable), MC_(blocks_reachable), @@ -1756,15 +1777,21 @@ static void print_results(ThreadId tid, LeakCheckParams* lcp) for (i = 0; i < N_LEAK_CHECK_HEURISTICS; i++) if (old_blocks_heuristically_reachable[i] > 0 || MC_(blocks_heuristically_reachable)[i] > 0) { - VG_(umsg)(" of which " + umsg_or_xml(VG_(clo_xml) ? "" : " of which " "reachable via heuristic:\n"); break; } for (i = 0; i < N_LEAK_CHECK_HEURISTICS; i++) if (old_blocks_heuristically_reachable[i] > 0 || MC_(blocks_heuristically_reachable)[i] > 0) - VG_(umsg)(" %-19s: " - "%'lu%s bytes in %'lu%s blocks\n", + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %ls\n" + " %'lu%s\n" + " %'lu%s\n" + " \n" : + " %-19s: " + "%'lu%s bytes in %'lu%s blocks\n", pp_heuristic(i), MC_(bytes_heuristically_reachable)[i], DBY (MC_(bytes_heuristically_reachable)[i], @@ -1772,32 +1799,41 @@ static void print_results(ThreadId tid, LeakCheckParams* lcp) MC_(blocks_heuristically_reachable)[i], DBL (MC_(blocks_heuristically_reachable)[i], old_blocks_heuristically_reachable[i])); - VG_(umsg)(" suppressed: %'lu%s bytes in %'lu%s blocks\n", - MC_(bytes_suppressed), - DBY (MC_(bytes_suppressed), old_bytes_suppressed), + if (VG_(clo_xml) && MC_(bytes_reachable)) { + umsg_or_xml(" \n"); + } + umsg_or_xml(VG_(clo_xml) ? + " \n" + " %'lu%s\n" + " %'lu%s\n" + " \n" : + " suppressed: %'lu%s bytes in %'lu%s blocks\n", + MC_(bytes_suppressed), + DBY (MC_(bytes_suppressed), old_bytes_suppressed), MC_(blocks_suppressed), DBL (MC_(blocks_suppressed), old_blocks_suppressed)); if (lcp->mode != LC_Full && (MC_(blocks_leaked) + MC_(blocks_indirect) + MC_(blocks_dubious) + MC_(blocks_reachable)) > 0) { if (lcp->requested_by_monitor_command) - VG_(umsg)("To see details of leaked memory, " - "give 'full' arg to leak_check\n"); + umsg_or_xml(VG_(clo_xml) ? "" : "To see details of leaked memory, " + "give 'full' arg to leak_check\n"); else - VG_(umsg)("Rerun with --leak-check=full to see details " - "of leaked memory\n"); + umsg_or_xml(VG_(clo_xml) ? "" : "Rerun with --leak-check=full to " + "see details of leaked memory\n"); } if (lcp->mode == LC_Full && MC_(blocks_reachable) > 0 && !RiS(Reachable,lcp->show_leak_kinds)) { - VG_(umsg)("Reachable blocks (those to which a pointer " - "was found) are not shown.\n"); + umsg_or_xml(VG_(clo_xml) ? "" : "Reachable blocks (those to which a " + "pointer was found) are not shown.\n"); if (lcp->requested_by_monitor_command) - VG_(umsg)("To see them, add 'reachable any' args to leak_check\n"); + umsg_or_xml(VG_(clo_xml) ? "" : "To see them, add 'reachable any' " + "args to leak_check\n"); else - VG_(umsg)("To see them, rerun with: --leak-check=full " - "--show-leak-kinds=all\n"); + umsg_or_xml(VG_(clo_xml) ? "" : "To see them, rerun with: " + "--leak-check=full --show-leak-kinds=all\n"); } - VG_(umsg)("\n"); + umsg_or_xml(VG_(clo_xml) ? "\n\n" : "\n"); #undef DBL #undef DBY } @@ -2056,11 +2092,17 @@ void MC_(detect_memory_leaks) ( ThreadId tid, LeakCheckParams* lcp) VG_(OSetGen_Destroy) (lr_table); lr_table = NULL; } - if (VG_(clo_verbosity) >= 1 && !VG_(clo_xml)) { - VG_(umsg)("All heap blocks were freed -- no leaks are possible\n"); - VG_(umsg)("\n"); + if (VG_(clo_verbosity) >= 1) { + if (!VG_(clo_xml)) { + VG_(umsg)("All heap blocks were freed -- no leaks are possible\n"); + VG_(umsg)("\n"); + } else + VG_(printf_xml)("true\n\n"); } return; + } else { + if (VG_(clo_verbosity) >= 1 && VG_(clo_xml)) + VG_(printf_xml)("false\n\n"); } // Sanity check -- make sure they don't overlap. One exception is that @@ -2301,4 +2343,3 @@ void MC_(who_points_at) ( Addr address, SizeT szB) /*--------------------------------------------------------------------*/ /*--- end ---*/ /*--------------------------------------------------------------------*/ - diff --git a/memcheck/mc_malloc_wrappers.c b/memcheck/mc_malloc_wrappers.c index 48f26902c..584afa50e 100644 --- a/memcheck/mc_malloc_wrappers.c +++ b/memcheck/mc_malloc_wrappers.c @@ -1229,8 +1229,6 @@ void MC_(print_malloc_stats) ( void ) if (VG_(clo_verbosity) == 0) return; - if (VG_(clo_xml)) - return; /* Count memory still in use. */ VG_(HT_ResetIter)(MC_(malloc_list)); @@ -1239,6 +1237,27 @@ void MC_(print_malloc_stats) ( void ) nbytes += (ULong)mc->szB; } + if (VG_(clo_xml)) { + VG_(printf_xml)( + "\n" + " \n" + " %'llu\n" + " %'lu\n" + " \n" + " \n" + " %'lu\n" + " %'lu\n" + " %'llu\n" + " \n" + "\n" + "\n", + nbytes, nblocks, + cmalloc_n_mallocs, + cmalloc_n_frees, cmalloc_bs_mallocd + ); + return; + } + VG_(umsg)( "HEAP SUMMARY:\n" " in use at exit: %'llu bytes in %'lu blocks\n" diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index 928ac16e6..db6cd1786 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -257,7 +257,7 @@ EXTRA_DIST = \ leak-segv-jmp.vgtest leak-segv-jmp.stderr.exp \ lks.vgtest lks.stdout.exp lks.supp lks.stderr.exp \ long_namespace_xml.vgtest long_namespace_xml.stdout.exp \ - long_namespace_xml.stderr.exp \ + long_namespace_xml.stderr.exp long_namespace_xml.stderr.exp-freebsd \ long-supps.vgtest long-supps.stderr.exp long-supps.supp \ mallinfo.stderr.exp mallinfo.vgtest \ malloc_free_fill.vgtest \ diff --git a/memcheck/tests/client-msg-as-xml.stderr.exp b/memcheck/tests/client-msg-as-xml.stderr.exp index af97c61ab..609f5826b 100644 --- a/memcheck/tests/client-msg-as-xml.stderr.exp +++ b/memcheck/tests/client-msg-as-xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -81,10 +81,13 @@ +... + ... - +... + diff --git a/memcheck/tests/exit_on_first_error_with_xml.stderr.exp b/memcheck/tests/exit_on_first_error_with_xml.stderr.exp index 3a02ca532..6061fc19a 100644 --- a/memcheck/tests/exit_on_first_error_with_xml.stderr.exp +++ b/memcheck/tests/exit_on_first_error_with_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck diff --git a/memcheck/tests/filter_xml b/memcheck/tests/filter_xml index 9244706c3..2c63cddbc 100755 --- a/memcheck/tests/filter_xml +++ b/memcheck/tests/filter_xml @@ -22,13 +22,20 @@ sed "s/operator delete\[\](void\*, unsigned int/operator delete[](void*, unsigne sed "s/4294967295/18446744073709551615/" | sed "s/malloc_zone_memalign/posix_memalign/" | perl -p -e "s/(m_replacemalloc\/)?vg_replace_malloc.c/vg_replace_malloc.c/" | +perl -0 -p -e "s/.*<\/heap_summary>/...<\/heap_summary>/s" | +perl -0 -p -e "s/.*<\/error_summary>/...<\/error_summary>/s" | +perl -0 -p -e "s/.*<\/leak_summary>/...<\/leak_summary>/s" | perl -0 -p -e "s/.*<\/suppcounts>/...<\/suppcounts>/s" | perl -p -e "s/ diff --git a/memcheck/tests/freebsd/delete_sized_mismatch_xml.stderr.exp b/memcheck/tests/freebsd/delete_sized_mismatch_xml.stderr.exp index 55225906f..f63cdadb9 100644 --- a/memcheck/tests/freebsd/delete_sized_mismatch_xml.stderr.exp +++ b/memcheck/tests/freebsd/delete_sized_mismatch_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -116,12 +116,13 @@ - FINISHED +... + ... @@ -135,5 +136,6 @@ ... - +... + diff --git a/memcheck/tests/gone_abrt_xml.stderr.exp b/memcheck/tests/gone_abrt_xml.stderr.exp index b0faf73bd..9f7b1f52f 100644 --- a/memcheck/tests/gone_abrt_xml.stderr.exp +++ b/memcheck/tests/gone_abrt_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -48,16 +48,18 @@ aborting ... - FINISHED +... + ... - +... + diff --git a/memcheck/tests/gone_abrt_xml.stderr.exp-freebsd b/memcheck/tests/gone_abrt_xml.stderr.exp-freebsd index c97485faf..04643bbff 100644 --- a/memcheck/tests/gone_abrt_xml.stderr.exp-freebsd +++ b/memcheck/tests/gone_abrt_xml.stderr.exp-freebsd @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -48,16 +48,20 @@ aborting ... - FINISHED +... + +... + ... - +... + diff --git a/memcheck/tests/gone_abrt_xml.stderr.exp-solaris b/memcheck/tests/gone_abrt_xml.stderr.exp-solaris index a6c88df27..1c307433f 100644 --- a/memcheck/tests/gone_abrt_xml.stderr.exp-solaris +++ b/memcheck/tests/gone_abrt_xml.stderr.exp-solaris @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -50,16 +50,18 @@ aborting ... - FINISHED +... + ... - +... + diff --git a/memcheck/tests/long_namespace_xml.stderr.exp b/memcheck/tests/long_namespace_xml.stderr.exp index 775fac002..522996592 100644 --- a/memcheck/tests/long_namespace_xml.stderr.exp +++ b/memcheck/tests/long_namespace_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -80,12 +80,13 @@ - FINISHED +... + ... @@ -95,5 +96,6 @@ ... - +... + diff --git a/memcheck/tests/long_namespace_xml.stderr.exp-freebsd b/memcheck/tests/long_namespace_xml.stderr.exp-freebsd new file mode 100644 index 000000000..e4a9b08fc --- /dev/null +++ b/memcheck/tests/long_namespace_xml.stderr.exp-freebsd @@ -0,0 +1,103 @@ + + + + +6 +memcheck + + + ... + ... + ... + ... + + +... +... +memcheck + + + ... + + ./long_namespace_xml + + + + + RUNNING + + + + + 0x........ + ... + InvalidWrite + Invalid write of size 1 + + + 0x........ + ... + _ZN5304abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz5304ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ1fEv + ... + long_namespace_xml.cpp + ... + + + 0x........ + ... + main + ... + long_namespace_xml.cpp + ... + + + Address 0x........ is 1 bytes after a block of size 4 alloc'd + + + 0x........ + ... + malloc + ... + vg_replace_malloc.c + ... + + + 0x........ + ... + _ZN5304abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz5304ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ1fEv + ... + long_namespace_xml.cpp + ... + + + 0x........ + ... + main + ... + long_namespace_xml.cpp + ... + + + + + + FINISHED + + + +... + +... + + + + ... + 0x........ + + + +... + +... + + diff --git a/memcheck/tests/mismatches_xml.stderr.exp b/memcheck/tests/mismatches_xml.stderr.exp index 95c77bf3c..20e9a7ead 100644 --- a/memcheck/tests/mismatches_xml.stderr.exp +++ b/memcheck/tests/mismatches_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -292,12 +292,13 @@ - FINISHED +... + ... @@ -327,5 +328,6 @@ ... - +... + diff --git a/memcheck/tests/mismatches_xml.stderr.exp2 b/memcheck/tests/mismatches_xml.stderr.exp2 index 17972cd06..19eb022f3 100644 --- a/memcheck/tests/mismatches_xml.stderr.exp2 +++ b/memcheck/tests/mismatches_xml.stderr.exp2 @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -380,12 +380,13 @@ - FINISHED +... + ... @@ -423,5 +424,6 @@ ... - +... + diff --git a/memcheck/tests/posix_memalign_xml.stderr.exp b/memcheck/tests/posix_memalign_xml.stderr.exp index ad30c3d10..ce9ded320 100644 --- a/memcheck/tests/posix_memalign_xml.stderr.exp +++ b/memcheck/tests/posix_memalign_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -278,12 +278,13 @@ - FINISHED +... + ... @@ -329,5 +330,6 @@ ... - +... + diff --git a/memcheck/tests/realloc_size_zero_xml.stderr.exp b/memcheck/tests/realloc_size_zero_xml.stderr.exp index 3b6450ff4..db198b7ce 100644 --- a/memcheck/tests/realloc_size_zero_xml.stderr.exp +++ b/memcheck/tests/realloc_size_zero_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -72,7 +72,6 @@ - FINISHED @@ -85,6 +84,4 @@ - - diff --git a/memcheck/tests/sized_aligned_new_delete_misaligned1_xml.stderr.exp b/memcheck/tests/sized_aligned_new_delete_misaligned1_xml.stderr.exp index b8e230165..5a2602b46 100644 --- a/memcheck/tests/sized_aligned_new_delete_misaligned1_xml.stderr.exp +++ b/memcheck/tests/sized_aligned_new_delete_misaligned1_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -454,12 +454,13 @@ - FINISHED +... + ... @@ -521,5 +522,6 @@ ... - +... + diff --git a/memcheck/tests/sized_aligned_new_delete_misaligned2_xml.stderr.exp b/memcheck/tests/sized_aligned_new_delete_misaligned2_xml.stderr.exp index 321ed1dce..a785bd236 100644 --- a/memcheck/tests/sized_aligned_new_delete_misaligned2_xml.stderr.exp +++ b/memcheck/tests/sized_aligned_new_delete_misaligned2_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -58,6 +58,7 @@ new/new[] aligned failed and should throw an exception, but Valgrind + ... cannot throw exceptions and so is aborting instead. Sorry. @@ -95,6 +96,8 @@ +... + ... @@ -104,5 +107,6 @@ ... - +... + diff --git a/memcheck/tests/sized_aligned_new_delete_misaligned3_xml.stderr.exp b/memcheck/tests/sized_aligned_new_delete_misaligned3_xml.stderr.exp index f2fe0134b..f7c23306f 100644 --- a/memcheck/tests/sized_aligned_new_delete_misaligned3_xml.stderr.exp +++ b/memcheck/tests/sized_aligned_new_delete_misaligned3_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -58,6 +58,7 @@ new/new[] aligned failed and should throw an exception, but Valgrind + ... cannot throw exceptions and so is aborting instead. Sorry. @@ -95,6 +96,8 @@ +... + ... @@ -104,5 +107,6 @@ ... - +... + diff --git a/memcheck/tests/threadname_xml.stderr.exp b/memcheck/tests/threadname_xml.stderr.exp index 3f9e593e2..1671b50a2 100644 --- a/memcheck/tests/threadname_xml.stderr.exp +++ b/memcheck/tests/threadname_xml.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -191,6 +191,7 @@ I am in child_fn_1 + 0x........ ... @@ -296,12 +297,15 @@ - FINISHED +... + +... + ... @@ -327,5 +331,6 @@ ... - +... + diff --git a/memcheck/tests/xml1.stderr.exp b/memcheck/tests/xml1.stderr.exp index 3eba80599..8ff61a531 100644 --- a/memcheck/tests/xml1.stderr.exp +++ b/memcheck/tests/xml1.stderr.exp @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -344,12 +344,13 @@ Syscall param exit(status) contains uninitialised byte(s) - FINISHED +... + 0x........ ... @@ -403,6 +404,8 @@ +... + ... @@ -432,5 +435,6 @@ ... - +... + diff --git a/memcheck/tests/xml1.stderr.exp-s390x-mvc b/memcheck/tests/xml1.stderr.exp-s390x-mvc index e1abac28a..d7bf2095e 100644 --- a/memcheck/tests/xml1.stderr.exp-s390x-mvc +++ b/memcheck/tests/xml1.stderr.exp-s390x-mvc @@ -2,7 +2,7 @@ -4 +6 memcheck @@ -344,12 +344,13 @@ Syscall param exit(status) contains uninitialised byte(s) - FINISHED +... + 0x........ ... @@ -403,6 +404,8 @@ +... + ... @@ -432,5 +435,6 @@ ... - +... + diff --git a/none/tests/double_close_range_xml.stderr.exp b/none/tests/double_close_range_xml.stderr.exp index c21a2bcdd..22027dc1a 100644 --- a/none/tests/double_close_range_xml.stderr.exp +++ b/none/tests/double_close_range_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -123,7 +123,6 @@ Double closing range (5, 7). - FINISHED @@ -140,6 +139,4 @@ Double closing range (5, 7). - - diff --git a/none/tests/fdleak_cmsg_xml.stderr.exp b/none/tests/fdleak_cmsg_xml.stderr.exp index 39b739be7..2fbb664b4 100644 --- a/none/tests/fdleak_cmsg_xml.stderr.exp +++ b/none/tests/fdleak_cmsg_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -37,7 +37,6 @@ - FINISHED @@ -150,6 +149,4 @@ ... - - diff --git a/none/tests/fdleak_cmsg_xml.stderr.exp-ppc64le b/none/tests/fdleak_cmsg_xml.stderr.exp-ppc64le index 6294094eb..1ab6c6fe0 100644 --- a/none/tests/fdleak_cmsg_xml.stderr.exp-ppc64le +++ b/none/tests/fdleak_cmsg_xml.stderr.exp-ppc64le @@ -2,7 +2,7 @@ -5 +6 none diff --git a/none/tests/fdleak_creat_xml.stderr.exp b/none/tests/fdleak_creat_xml.stderr.exp index fbdc261d6..5c585a224 100644 --- a/none/tests/fdleak_creat_xml.stderr.exp +++ b/none/tests/fdleak_creat_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -88,6 +87,4 @@ ... - - diff --git a/none/tests/fdleak_dup2_xml.stderr.exp b/none/tests/fdleak_dup2_xml.stderr.exp index 318093bd3..de6ed7833 100644 --- a/none/tests/fdleak_dup2_xml.stderr.exp +++ b/none/tests/fdleak_dup2_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -126,6 +125,4 @@ ... - - diff --git a/none/tests/fdleak_dup_xml.stderr.exp b/none/tests/fdleak_dup_xml.stderr.exp index 3fc08d342..f56d83767 100644 --- a/none/tests/fdleak_dup_xml.stderr.exp +++ b/none/tests/fdleak_dup_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -107,6 +106,4 @@ ... - - diff --git a/none/tests/fdleak_fcntl_xml.stderr.exp b/none/tests/fdleak_fcntl_xml.stderr.exp index 4f33dc9e3..81605e2ae 100644 --- a/none/tests/fdleak_fcntl_xml.stderr.exp +++ b/none/tests/fdleak_fcntl_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -107,6 +106,4 @@ ... - - diff --git a/none/tests/fdleak_ipv4_xml.stderr.exp b/none/tests/fdleak_ipv4_xml.stderr.exp index 38797041a..e55277422 100644 --- a/none/tests/fdleak_ipv4_xml.stderr.exp +++ b/none/tests/fdleak_ipv4_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -101,7 +101,6 @@ - FINISHED @@ -143,5 +142,11 @@ - + + 2 + 2 + 0 + 0 + + diff --git a/none/tests/fdleak_ipv4_xml.stderr.exp-nomain b/none/tests/fdleak_ipv4_xml.stderr.exp-nomain index 8eaa4f20f..e55277422 100644 --- a/none/tests/fdleak_ipv4_xml.stderr.exp-nomain +++ b/none/tests/fdleak_ipv4_xml.stderr.exp-nomain @@ -2,7 +2,7 @@ -5 +6 none @@ -52,6 +52,14 @@ fdleak_ipv4.c 70 + + 0x........ + ... + main + ... + fdleak_ipv4.c + 90 + Previously closed @@ -63,6 +71,14 @@ fdleak_ipv4.c 69 + + 0x........ + ... + main + ... + fdleak_ipv4.c + 90 + Originally opened @@ -74,10 +90,17 @@ fdleak_ipv4.c 68 + + 0x........ + ... + main + ... + fdleak_ipv4.c + 90 + - FINISHED @@ -119,5 +142,11 @@ - + + 2 + 2 + 0 + 0 + + diff --git a/none/tests/fdleak_ipv4_xml.stderr.exp-ppc64le b/none/tests/fdleak_ipv4_xml.stderr.exp-ppc64le index df413b628..27c304f47 100644 --- a/none/tests/fdleak_ipv4_xml.stderr.exp-ppc64le +++ b/none/tests/fdleak_ipv4_xml.stderr.exp-ppc64le @@ -2,7 +2,7 @@ -5 +6 none @@ -101,7 +101,6 @@ - FINISHED @@ -135,5 +134,11 @@ - + + 2 + 2 + 0 + 0 + + diff --git a/none/tests/fdleak_open_xml.stderr.exp b/none/tests/fdleak_open_xml.stderr.exp index 2cde2d190..5e67f9d25 100644 --- a/none/tests/fdleak_open_xml.stderr.exp +++ b/none/tests/fdleak_open_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -61,6 +60,4 @@ - - diff --git a/none/tests/fdleak_pipe_xml.stderr.exp b/none/tests/fdleak_pipe_xml.stderr.exp index 2abb5a266..2fb93ce90 100644 --- a/none/tests/fdleak_pipe_xml.stderr.exp +++ b/none/tests/fdleak_pipe_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -78,6 +77,4 @@ - - diff --git a/none/tests/fdleak_socketpair_xml.stderr.exp b/none/tests/fdleak_socketpair_xml.stderr.exp index bdd31860d..6d2e2b41b 100644 --- a/none/tests/fdleak_socketpair_xml.stderr.exp +++ b/none/tests/fdleak_socketpair_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -78,6 +77,4 @@ - - diff --git a/none/tests/fdleak_socketpair_xml.stderr.exp-illumos b/none/tests/fdleak_socketpair_xml.stderr.exp-illumos index f01a80440..8b578188e 100644 --- a/none/tests/fdleak_socketpair_xml.stderr.exp-illumos +++ b/none/tests/fdleak_socketpair_xml.stderr.exp-illumos @@ -2,7 +2,7 @@ -5 +6 none @@ -36,7 +36,6 @@ - FINISHED @@ -78,6 +77,4 @@ - - diff --git a/none/tests/file_dclose_xml.stderr.exp b/none/tests/file_dclose_xml.stderr.exp index 4e4bd773c..c6a25d510 100644 --- a/none/tests/file_dclose_xml.stderr.exp +++ b/none/tests/file_dclose_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -96,7 +96,6 @@ time passes and we close 3 again - FINISHED @@ -109,6 +108,4 @@ time passes and we close 3 again - - diff --git a/none/tests/file_dclose_xml.stderr.exp-nomain b/none/tests/file_dclose_xml.stderr.exp-nomain index b0cfc10c5..6c5406c03 100644 --- a/none/tests/file_dclose_xml.stderr.exp-nomain +++ b/none/tests/file_dclose_xml.stderr.exp-nomain @@ -2,7 +2,7 @@ -5 +6 none diff --git a/none/tests/socket_close_xml.stderr.exp b/none/tests/socket_close_xml.stderr.exp index 69a2c514e..11c2054ca 100644 --- a/none/tests/socket_close_xml.stderr.exp +++ b/none/tests/socket_close_xml.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -88,7 +88,6 @@ and close the socket again 3 - FINISHED @@ -101,6 +100,4 @@ and close the socket again 3 - - diff --git a/none/tests/socket_close_xml.stderr.exp-ppc64le b/none/tests/socket_close_xml.stderr.exp-ppc64le index 2f2bc9831..1de993059 100644 --- a/none/tests/socket_close_xml.stderr.exp-ppc64le +++ b/none/tests/socket_close_xml.stderr.exp-ppc64le @@ -2,7 +2,7 @@ -5 +6 none diff --git a/none/tests/xml-track-fds.stderr.exp b/none/tests/xml-track-fds.stderr.exp index b06da9d72..2d17ef763 100644 --- a/none/tests/xml-track-fds.stderr.exp +++ b/none/tests/xml-track-fds.stderr.exp @@ -2,7 +2,7 @@ -5 +6 none @@ -36,12 +36,9 @@ - FINISHED - -