You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
1
(3) |
2
|
3
|
4
|
|
5
(13) |
6
(2) |
7
(5) |
8
(4) |
9
(3) |
10
(4) |
11
(4) |
|
12
(7) |
13
|
14
(1) |
15
|
16
|
17
(2) |
18
|
|
19
|
20
|
21
(3) |
22
(8) |
23
(7) |
24
(5) |
25
(4) |
|
26
(6) |
27
|
28
(9) |
29
|
30
(4) |
31
(5) |
|
|
From: Nicholas N. <nj...@so...> - 2023-03-26 21:59:29
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=d7081e936e60f7233edf046f654d25dc41639a40 commit d7081e936e60f7233edf046f654d25dc41639a40 Author: Nicholas Nethercote <n.n...@gm...> Date: Thu Mar 23 14:04:53 2023 +1100 Rename a bunch of `cg_annotate` test files. For more consistency. Diff: --- cachegrind/tests/Makefile.am | 13 +- .../tests/{diff.post.exp => ann-diff.post.exp} | 4 +- .../tests/{ann1.stderr.exp => ann-diff.stderr.exp} | 0 cachegrind/tests/ann-diff.vgtest | 6 + cachegrind/tests/{cgout-test => ann1.cgout} | 4 + cachegrind/tests/ann1.vgtest | 6 - cachegrind/tests/{ann1.post.exp => ann1a.post.exp} | 2 +- .../tests/{ann3.stderr.exp => ann1a.stderr.exp} | 0 cachegrind/tests/ann1a.vgtest | 6 + cachegrind/tests/{cgout-test2 => ann1b.cgout} | 0 cachegrind/tests/ann1b.post.exp | 51 ++++++ .../tests/{diff.stderr.exp => ann1b.stderr.exp} | 0 cachegrind/tests/ann1b.vgtest | 6 + .../ann3-via-I.rs => ann2-aux/ann2-via-I.rs} | 0 cachegrind/tests/{ann3-basic.rs => ann2-basic.rs} | 0 ...han-cgout.rs => ann2-more-recent-than-cgout.rs} | 0 .../tests/{ann3-negatives.rs => ann2-negatives.rs} | 0 .../{ann3-past-the-end.rs => ann2-past-the-end.rs} | 0 .../{ann3-unmentioned.rs => ann2-unmentioned.rs} | 0 cachegrind/tests/{cgout-test3 => ann2.cgout} | 20 +-- cachegrind/tests/ann2.post.exp | 171 ++++++++++++++++----- cachegrind/tests/ann2.vgtest | 13 +- cachegrind/tests/ann3.post.exp | 150 ------------------ cachegrind/tests/ann3.vgtest | 13 -- cachegrind/tests/diff.vgtest | 6 - 25 files changed, 237 insertions(+), 234 deletions(-) diff --git a/cachegrind/tests/Makefile.am b/cachegrind/tests/Makefile.am index ded05c8fdb..cee1f29167 100644 --- a/cachegrind/tests/Makefile.am +++ b/cachegrind/tests/Makefile.am @@ -10,16 +10,15 @@ DIST_SUBDIRS = x86 . dist_noinst_SCRIPTS = filter_stderr filter_cachesim_discards -# Note that test.c and a.c are not compiled. -# They just serve as input for cg_annotate in ann1 and ann2. +# Note that `test.c` and `a.c` are not compiled. +# They just serve as input for cg_annotate in `ann1a` and `ann1b`. EXTRA_DIST = \ - cgout-test \ - ann1.post.exp ann1.stderr.exp ann1.vgtest \ - ann2.post.exp ann2.stderr.exp ann2.vgtest \ - ann3.post.exp ann3.stderr.exp ann3.vgtest \ + ann-diff.post.exp ann-diff.stderr.exp ann-diff.vgtest \ + ann1a.post.exp ann1a.stderr.exp ann1a.vgtest ann1.cgout \ + ann1b.post.exp ann1b.stderr.exp ann1b.vgtest ann1b.cgout \ + ann2.post.exp ann2.stderr.exp ann2.vgtest ann2.cgout \ chdir.vgtest chdir.stderr.exp \ clreq.vgtest clreq.stderr.exp \ - diff.post.exp diff.stderr.exp diff.vgtest \ dlclose.vgtest dlclose.stderr.exp dlclose.stdout.exp \ notpower2.vgtest notpower2.stderr.exp \ test.c a.c \ diff --git a/cachegrind/tests/diff.post.exp b/cachegrind/tests/ann-diff.post.exp similarity index 96% rename from cachegrind/tests/diff.post.exp rename to cachegrind/tests/ann-diff.post.exp index ed95860ddf..986edf35ef 100644 --- a/cachegrind/tests/diff.post.exp +++ b/cachegrind/tests/ann-diff.post.exp @@ -1,7 +1,7 @@ -------------------------------------------------------------------------------- -Files compared: cgout-test; cgout-test2 +Files compared: ann1.cgout; ann1b.cgout Command: ./a.out; ./a.out -Data file: cgout-diff +Data file: ann-diff.cgout Events recorded: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw Events shown: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw Event sort order: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw diff --git a/cachegrind/tests/ann1.stderr.exp b/cachegrind/tests/ann-diff.stderr.exp similarity index 100% rename from cachegrind/tests/ann1.stderr.exp rename to cachegrind/tests/ann-diff.stderr.exp diff --git a/cachegrind/tests/ann-diff.vgtest b/cachegrind/tests/ann-diff.vgtest new file mode 100644 index 0000000000..e3dc0992e0 --- /dev/null +++ b/cachegrind/tests/ann-diff.vgtest @@ -0,0 +1,6 @@ +# The `prog` doesn't matter because we don't use its output. Instead we test +# the post-processing of the `ann{1,1b}.cgout` test files. +prog: ../../tests/true +vgopts: --cachegrind-out-file=cachegrind.out +post: perl ../../cachegrind/cg_diff ann1.cgout ann1b.cgout > ann-diff.cgout && perl ../../cachegrind/cg_annotate ann-diff.cgout +cleanup: rm ann-diff.cgout diff --git a/cachegrind/tests/cgout-test b/cachegrind/tests/ann1.cgout similarity index 99% rename from cachegrind/tests/cgout-test rename to cachegrind/tests/ann1.cgout index b625ec8ccd..fbe91822c3 100644 --- a/cachegrind/tests/cgout-test +++ b/cachegrind/tests/ann1.cgout @@ -3,6 +3,10 @@ desc: D1 cache: 32768 B, 64 B, 8-way associative desc: LL cache: 19922944 B, 64 B, 19-way associative cmd: ./a.out events: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw + +# Note: this file is called ann1.cgout because it is used by the tests `ann1a` +# and `ann1b`. + fl=/build/glibc-OTsEL5/glibc-2.27/csu/../csu/init-first.c fn=_init 52 8 1 1 0 0 0 4 0 0 diff --git a/cachegrind/tests/ann1.vgtest b/cachegrind/tests/ann1.vgtest deleted file mode 100644 index 660f524f09..0000000000 --- a/cachegrind/tests/ann1.vgtest +++ /dev/null @@ -1,6 +0,0 @@ -# The 'prog' doesn't matter because we don't use its output. Instead we test -# the post-processing of the cgout-test file. -prog: ../../tests/true -vgopts: --cachegrind-out-file=cachegrind.out -post: touch cgout-test && python3 ../../cachegrind/cg_annotate --show=Ir,I1mr,ILmr --show-percs=no cgout-test -cleanup: rm cachegrind.out diff --git a/cachegrind/tests/ann1.post.exp b/cachegrind/tests/ann1a.post.exp similarity index 99% rename from cachegrind/tests/ann1.post.exp rename to cachegrind/tests/ann1a.post.exp index e4c1d7c8d9..05e9c5afa6 100644 --- a/cachegrind/tests/ann1.post.exp +++ b/cachegrind/tests/ann1a.post.exp @@ -3,7 +3,7 @@ I1 cache: 32768 B, 64 B, 8-way associative D1 cache: 32768 B, 64 B, 8-way associative LL cache: 19922944 B, 64 B, 19-way associative Command: ./a.out -Data file: cgout-test +Data file: ann1.cgout Events recorded: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw Events shown: Ir I1mr ILmr Event sort order: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw diff --git a/cachegrind/tests/ann3.stderr.exp b/cachegrind/tests/ann1a.stderr.exp similarity index 100% rename from cachegrind/tests/ann3.stderr.exp rename to cachegrind/tests/ann1a.stderr.exp diff --git a/cachegrind/tests/ann1a.vgtest b/cachegrind/tests/ann1a.vgtest new file mode 100644 index 0000000000..1774f1b1c4 --- /dev/null +++ b/cachegrind/tests/ann1a.vgtest @@ -0,0 +1,6 @@ +# The `prog` doesn't matter because we don't use its output. Instead we test +# the post-processing of the `ann1.cgout` file. +prog: ../../tests/true +vgopts: --cachegrind-out-file=cachegrind.out +post: touch ann1.cgout && python3 ../../cachegrind/cg_annotate --show=Ir,I1mr,ILmr --show-percs=no ann1.cgout +cleanup: rm cachegrind.out diff --git a/cachegrind/tests/cgout-test2 b/cachegrind/tests/ann1b.cgout similarity index 100% rename from cachegrind/tests/cgout-test2 rename to cachegrind/tests/ann1b.cgout diff --git a/cachegrind/tests/ann1b.post.exp b/cachegrind/tests/ann1b.post.exp new file mode 100644 index 0000000000..302416a44d --- /dev/null +++ b/cachegrind/tests/ann1b.post.exp @@ -0,0 +1,51 @@ +-------------------------------------------------------------------------------- +I1 cache: 32768 B, 64 B, 8-way associative +D1 cache: 32768 B, 64 B, 8-way associative +LL cache: 19922944 B, 64 B, 19-way associative +Command: ./a.out +Data file: ann1.cgout +Events recorded: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw +Events shown: Dw Dr Ir +Event sort order: Dr +Threshold: 0.1 +Include dirs: +User annotated: a.c +Auto-annotation: off + +-------------------------------------------------------------------------------- +Dw Dr Ir +-------------------------------------------------------------------------------- +18,005 (100.0%) 4,057,955 (100.0%) 5,229,753 (100.0%) PROGRAM TOTALS + +-------------------------------------------------------------------------------- +Dw Dr Ir file:function +-------------------------------------------------------------------------------- + 3 (0.0%) 4,000,004 (98.6%) 5,000,015 (95.6%) a.c:main +4,543 (25.2%) 17,566 (0.4%) 47,993 (0.9%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-lookup.c:do_lookup_x +3,083 (17.1%) 5,750 (0.1%) 28,534 (0.5%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-lookup.c:_dl_lookup_symbol_x + 8 (0.0%) 5,521 (0.1%) 28,136 (0.5%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-tunables.c:__GI___tunables_init +2,490 (13.8%) 5,219 (0.1%) 21,821 (0.4%) /build/glibc-OTsEL5/glibc-2.27/elf/../sysdeps/x86_64/dl-machine.h:_dl_relocate_object + 0 5,158 (0.1%) 25,408 (0.5%) /build/glibc-OTsEL5/glibc-2.27/string/../sysdeps/x86_64/strcmp.S:strcmp + +-------------------------------------------------------------------------------- +-- User-annotated source: a.c +-------------------------------------------------------------------------------- +Dw Dr Ir + + 1 (0.0%) 0 2 (0.0%) int main(void) { + 1 (0.0%) 0 1 (0.0%) int z = 0; + 1 (0.0%) 2,000,001 (49.3%) 3,000,004 (57.4%) for (int i = 0; i < 1000000; i++) { + 0 2,000,000 (49.3%) 2,000,000 (38.2%) z += i; + . . . } + 0 1 (0.0%) 6 (0.0%) return z % 256; + 0 2 (0.0%) 2 (0.0%) } + +-------------------------------------------------------------------------------- +Dw Dr Ir +-------------------------------------------------------------------------------- + 3 (0.0%) 4,000,004 (98.6%) 5,000,015 (95.6%) annotated: files known & above threshold & readable, line numbers known + 0 0 0 annotated: files known & above threshold & readable, line numbers unknown + 0 0 0 unannotated: files known & above threshold & unreadable +18,002 (100.0%) 57,951 (1.4%) 229,738 (4.4%) unannotated: files known & below threshold + 0 0 0 unannotated: files unknown + diff --git a/cachegrind/tests/diff.stderr.exp b/cachegrind/tests/ann1b.stderr.exp similarity index 100% rename from cachegrind/tests/diff.stderr.exp rename to cachegrind/tests/ann1b.stderr.exp diff --git a/cachegrind/tests/ann1b.vgtest b/cachegrind/tests/ann1b.vgtest new file mode 100644 index 0000000000..5eacaa8b10 --- /dev/null +++ b/cachegrind/tests/ann1b.vgtest @@ -0,0 +1,6 @@ +# The `prog` doesn't matter because we don't use its output. Instead we test +# the post-processing of the `ann1.cgout` file. +prog: ../../tests/true +vgopts: --cachegrind-out-file=cachegrind.out +post: touch ann1.cgout && python3 ../../cachegrind/cg_annotate --sort=Dr --show=Dw,Dr,Ir --auto=no ann1.cgout a.c +cleanup: rm cachegrind.out diff --git a/cachegrind/tests/ann3-aux/ann3-via-I.rs b/cachegrind/tests/ann2-aux/ann2-via-I.rs similarity index 100% rename from cachegrind/tests/ann3-aux/ann3-via-I.rs rename to cachegrind/tests/ann2-aux/ann2-via-I.rs diff --git a/cachegrind/tests/ann3-basic.rs b/cachegrind/tests/ann2-basic.rs similarity index 100% rename from cachegrind/tests/ann3-basic.rs rename to cachegrind/tests/ann2-basic.rs diff --git a/cachegrind/tests/ann3-more-recent-than-cgout.rs b/cachegrind/tests/ann2-more-recent-than-cgout.rs similarity index 100% rename from cachegrind/tests/ann3-more-recent-than-cgout.rs rename to cachegrind/tests/ann2-more-recent-than-cgout.rs diff --git a/cachegrind/tests/ann3-negatives.rs b/cachegrind/tests/ann2-negatives.rs similarity index 100% rename from cachegrind/tests/ann3-negatives.rs rename to cachegrind/tests/ann2-negatives.rs diff --git a/cachegrind/tests/ann3-past-the-end.rs b/cachegrind/tests/ann2-past-the-end.rs similarity index 100% rename from cachegrind/tests/ann3-past-the-end.rs rename to cachegrind/tests/ann2-past-the-end.rs diff --git a/cachegrind/tests/ann3-unmentioned.rs b/cachegrind/tests/ann2-unmentioned.rs similarity index 100% rename from cachegrind/tests/ann3-unmentioned.rs rename to cachegrind/tests/ann2-unmentioned.rs diff --git a/cachegrind/tests/cgout-test3 b/cachegrind/tests/ann2.cgout similarity index 86% rename from cachegrind/tests/cgout-test3 rename to cachegrind/tests/ann2.cgout index 600ae9b317..08ddddc317 100644 --- a/cachegrind/tests/cgout-test3 +++ b/cachegrind/tests/ann2.cgout @@ -1,8 +1,8 @@ -cmd: ann3 +cmd: ann2 events: A SomeCount VeryLongEventName # A file testing various things. -fl=ann3-basic.rs +fl=ann2-basic.rs # This one has the counts to get the totals to 100,000/100,000/0. fn=f0 7 70091 90291 0 @@ -41,12 +41,12 @@ fn=f6 20 50 0 0 # File with source newer than the cgout file. -fl=ann3-more-recent-than-cgout.rs +fl=ann2-more-recent-than-cgout.rs fn=new 2 1000 0 0 # File with negative and positive values. -fl=ann3-negatives.rs +fl=ann2-negatives.rs # Various, and the sum is zero. fn=neg1 0 -1000 -1000 -1000 @@ -65,8 +65,8 @@ fn=neg3 11 10000 0 -20 # File with source newer than the cgout file. -fl=ann3-past-the-end.rs -# This filename is repeated in ann3-could-not-be-found.rs above. +fl=ann2-past-the-end.rs +# This filename is repeated in ann2-could-not-be-found.rs above. fn=f1 1 200 100 0 20 300 100 0 @@ -74,20 +74,20 @@ fn=f1 22 200 0 -1000 # File mentioned here, but not present on disk. -fl=ann3-could-not-be-found.rs +fl=ann2-could-not-be-found.rs fn=f1 100 3000 2000 0 101 3000 2000 0 102 3000 2000 0 -# File found in ann3-aux/, via -I. -fl=ann3-via-I.rs +# File found in ann2-aux/, via -I. +fl=ann2-via-I.rs fn=f1 1 1000 500 0 # File below the threshold. (It also doesn't exist, but that doesn't matter. We # don't try to open it because it's below the threshold.) -fl=ann3-below-threshold.rs +fl=ann2-below-threshold.rs fn=below1 1 100 50 0 2 100 50 0 diff --git a/cachegrind/tests/ann2.post.exp b/cachegrind/tests/ann2.post.exp index 98f083e912..204a472d3e 100644 --- a/cachegrind/tests/ann2.post.exp +++ b/cachegrind/tests/ann2.post.exp @@ -1,51 +1,150 @@ -------------------------------------------------------------------------------- -I1 cache: 32768 B, 64 B, 8-way associative -D1 cache: 32768 B, 64 B, 8-way associative -LL cache: 19922944 B, 64 B, 19-way associative -Command: ./a.out -Data file: cgout-test -Events recorded: Ir I1mr ILmr Dr D1mr DLmr Dw D1mw DLmw -Events shown: Dw Dr Ir -Event sort order: Dr -Threshold: 0.1 -Include dirs: -User annotated: a.c -Auto-annotation: off +Command: ann2 +Data file: ann2.cgout +Events recorded: A SomeCount VeryLongEventName +Events shown: A SomeCount VeryLongEventName +Event sort order: A SomeCount VeryLongEventName +Threshold: 0.5 +Include dirs: ann2-no-such-dir + ann2-no-such-dir-2 + ann2-aux +User annotated: ann2-unmentioned.rs + ann2-no-such-file.rs +Auto-annotation: on -------------------------------------------------------------------------------- -Dw Dr Ir +A SomeCount VeryLongEventName -------------------------------------------------------------------------------- -18,005 (100.0%) 4,057,955 (100.0%) 5,229,753 (100.0%) PROGRAM TOTALS +100,000 (100.0%) 100,000 (100.0%) 0 PROGRAM TOTALS -------------------------------------------------------------------------------- -Dw Dr Ir file:function +A SomeCount VeryLongEventName file:function -------------------------------------------------------------------------------- - 3 (0.0%) 4,000,004 (98.6%) 5,000,015 (95.6%) a.c:main -4,543 (25.2%) 17,566 (0.4%) 47,993 (0.9%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-lookup.c:do_lookup_x -3,083 (17.1%) 5,750 (0.1%) 28,534 (0.5%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-lookup.c:_dl_lookup_symbol_x - 8 (0.0%) 5,521 (0.1%) 28,136 (0.5%) /build/glibc-OTsEL5/glibc-2.27/elf/dl-tunables.c:__GI___tunables_init -2,490 (13.8%) 5,219 (0.1%) 21,821 (0.4%) /build/glibc-OTsEL5/glibc-2.27/elf/../sysdeps/x86_64/dl-machine.h:_dl_relocate_object - 0 5,158 (0.1%) 25,408 (0.5%) /build/glibc-OTsEL5/glibc-2.27/string/../sysdeps/x86_64/strcmp.S:strcmp +70,091 (70.1%) 90,291 (90.3%) 0 ann2-basic.rs:f0 +15,000 (15.0%) 600 (0.6%) 0 ann2-basic.rs:f1 + 9,000 (9.0%) 6,000 (6.0%) 0 ann2-could-not-be-found.rs:f1 + 2,000 (2.0%) 100 (0.1%) 0 ann2-basic.rs:f2 + 1,000 (1.0%) 500 (0.5%) 0 ann2-via-I.rs:f1 + 1,000 (1.0%) 300 (0.3%) -1,000 (n/a) ann2-past-the-end.rs:f1 +-1,000 (-1.0%) 0 0 ann2-negatives.rs:neg3 +-1,000 (-1.0%) 0 0 ann2-negatives.rs:neg2 + 1,000 (1.0%) 0 0 ann2-more-recent-than-cgout.rs:new + 1,000 (1.0%) 0 0 ???:unknown + 500 (0.5%) 0 0 ann2-basic.rs:f6 + 500 (0.5%) 0 0 ann2-basic.rs:f4 -------------------------------------------------------------------------------- --- User-annotated source: a.c +-- Auto-annotated source: ann2-basic.rs -------------------------------------------------------------------------------- -Dw Dr Ir +A SomeCount VeryLongEventName - 1 (0.0%) 0 2 (0.0%) int main(void) { - 1 (0.0%) 0 1 (0.0%) int z = 0; - 1 (0.0%) 2,000,001 (49.3%) 3,000,004 (57.4%) for (int i = 0; i < 1000000; i++) { - 0 2,000,000 (49.3%) 2,000,000 (38.2%) z += i; - . . . } - 0 1 (0.0%) 6 (0.0%) return z % 256; - 0 2 (0.0%) 2 (0.0%) } + 7,100 (7.1%) 100 (0.1%) 0 <unknown (line 0)> + +-- line 2 ---------------------------------------- + . . . two + . . . three + 5,000 (5.0%) 500 (0.5%) 0 four + 5,000 (5.0%) 100 (0.1%) 0 five + . . . six +70,091 (70.1%) 90,291 (90.3%) 0 seven + . . . eight + 110 (0.1%) 9 (0.0%) 0 nine + . . . ten + . . . eleven + 200 (0.2%) 0 0 twelve + 200 (0.2%) 0 0 thirteen + 100 (0.1%) 0 0 fourteen + 0 0 0 fifteen + 0 0 0 sixteen + 0 0 0 seventeen + 0 0 0 eighteen + 499 (0.5%) 2,000 (2.0%) 0 nineteen + 300 (0.3%) 0 0 twenty + +-------------------------------------------------------------------------------- +-- Auto-annotated source: ann2-more-recent-than-cgout.rs +-------------------------------------------------------------------------------- +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ Source file 'ann2-more-recent-than-cgout.rs' is more recent than input file 'ann2.cgout'. +@ Annotations may not be correct. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ + +A SomeCount VeryLongEventName + + . . . one +1,000 (1.0%) 0 0 two + . . . three + . . . four +-- line 4 ---------------------------------------- + +-------------------------------------------------------------------------------- +-- Auto-annotated source: ann2-negatives.rs +-------------------------------------------------------------------------------- +A SomeCount VeryLongEventName + + -2,000 (-2.0%) -1,000 (-1.0%) -990 (n/a) <unknown (line 0)> + + 2,000 (2.0%) 2,000 (2.0%) 2,000 (n/a) one + -1,000 (-1.0%) -1,000 (-1.0%) 0 two + . . . three + . . . four + 999,000 (999.0%) 0 -150,000 (n/a) five +-1,000,000 (-1000.0%) 0 150,000 (n/a) six + . . . seven + . . . eight + . . . nine + -10,000 (-10.0%) 0 10 (n/a) ten + 10,000 (10.0%) 0 -20 (n/a) eleven + . . . twelve + . . . thirteen +-- line 13 ---------------------------------------- + +-------------------------------------------------------------------------------- +-- Auto-annotated source: ann2-past-the-end.rs +-------------------------------------------------------------------------------- +A SomeCount VeryLongEventName + +200 (0.2%) 100 (0.1%) 0 one + . . . two + . . . three +-- line 3 ---------------------------------------- +-- line 18 ---------------------------------------- +300 (0.3%) 100 (0.1%) 0 <bogus line 20> +300 (0.3%) 100 (0.1%) 0 <bogus line 21> +200 (0.2%) 0 -1,000 (n/a) <bogus line 22> + +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@@ Information recorded about lines past the end of 'ann2-past-the-end.rs'. +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ + +-------------------------------------------------------------------------------- +-- User-annotated source: ann2-unmentioned.rs +-------------------------------------------------------------------------------- + No information has been collected for ann2-unmentioned.rs + +-------------------------------------------------------------------------------- +-- Auto-annotated source: ann2-aux/ann2-via-I.rs +-------------------------------------------------------------------------------- +A SomeCount VeryLongEventName + +1,000 (1.0%) 500 (0.5%) 0 one + +-------------------------------------------------------------------------------- +The following files chosen for auto-annotation could not be read: +-------------------------------------------------------------------------------- + ann2-could-not-be-found.rs + ann2-no-such-file.rs -------------------------------------------------------------------------------- -Dw Dr Ir +A SomeCount VeryLongEventName -------------------------------------------------------------------------------- - 3 (0.0%) 4,000,004 (98.6%) 5,000,015 (95.6%) annotated: files known & above threshold & readable, line numbers known - 0 0 0 annotated: files known & above threshold & readable, line numbers unknown - 0 0 0 unannotated: files known & above threshold & unreadable -18,002 (100.0%) 57,951 (1.4%) 229,738 (4.4%) unannotated: files known & below threshold - 0 0 0 unannotated: files unknown +84,500 (84.5%) 94,700 (94.7%) 990 (n/a) annotated: files known & above threshold & readable, line numbers known + 5,100 (5.1%) -900 (-0.9%) -990 (n/a) annotated: files known & above threshold & readable, line numbers unknown + 9,000 (9.0%) 6,000 (6.0%) 0 unannotated: files known & above threshold & unreadable + 400 (0.4%) 200 (0.2%) 0 unannotated: files known & below threshold + 1,000 (1.0%) 0 0 unannotated: files unknown diff --git a/cachegrind/tests/ann2.vgtest b/cachegrind/tests/ann2.vgtest index 9ef76e38e9..b2ec364c72 100644 --- a/cachegrind/tests/ann2.vgtest +++ b/cachegrind/tests/ann2.vgtest @@ -1,6 +1,13 @@ -# The 'prog' doesn't matter because we don't use its output. Instead we test -# the post-processing of the cgout-test file. +# This tests all sorts of edge cases. See the comments in `ann2.cgout` for +# more details. +# +# The `prog` doesn't matter because we don't use its output. Instead we test +# the post-processing of the `ann2.cgout` file. prog: ../../tests/true vgopts: --cachegrind-out-file=cachegrind.out -post: touch cgout-test && python3 ../../cachegrind/cg_annotate --sort=Dr --show=Dw,Dr,Ir --auto=no cgout-test a.c + +# The `sleep` is to ensure the mtime of the second touched file is greater than +# the mtime of the first touched file. +post: touch ann2.cgout && sleep 0.1 && touch ann2-more-recent-than-cgout.rs && python3 ../../cachegrind/cg_annotate --context 2 --auto --show-percs=yes --threshold=0.5 -Iann2-no-such-dir --include ann2-no-such-dir-2 -I=ann2-aux ann2.cgout ann2-unmentioned.rs ann2-no-such-file.rs + cleanup: rm cachegrind.out diff --git a/cachegrind/tests/ann3.post.exp b/cachegrind/tests/ann3.post.exp deleted file mode 100644 index 2b86957bc1..0000000000 --- a/cachegrind/tests/ann3.post.exp +++ /dev/null @@ -1,150 +0,0 @@ --------------------------------------------------------------------------------- -Command: ann3 -Data file: cgout-test3 -Events recorded: A SomeCount VeryLongEventName -Events shown: A SomeCount VeryLongEventName -Event sort order: A SomeCount VeryLongEventName -Threshold: 0.5 -Include dirs: ann3-no-such-dir - ann3-no-such-dir-2 - ann3-aux -User annotated: ann3-unmentioned.rs - ann3-no-such-file.rs -Auto-annotation: on - --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName --------------------------------------------------------------------------------- -100,000 (100.0%) 100,000 (100.0%) 0 PROGRAM TOTALS - --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName file:function --------------------------------------------------------------------------------- -70,091 (70.1%) 90,291 (90.3%) 0 ann3-basic.rs:f0 -15,000 (15.0%) 600 (0.6%) 0 ann3-basic.rs:f1 - 9,000 (9.0%) 6,000 (6.0%) 0 ann3-could-not-be-found.rs:f1 - 2,000 (2.0%) 100 (0.1%) 0 ann3-basic.rs:f2 - 1,000 (1.0%) 500 (0.5%) 0 ann3-via-I.rs:f1 - 1,000 (1.0%) 300 (0.3%) -1,000 (n/a) ann3-past-the-end.rs:f1 --1,000 (-1.0%) 0 0 ann3-negatives.rs:neg3 --1,000 (-1.0%) 0 0 ann3-negatives.rs:neg2 - 1,000 (1.0%) 0 0 ann3-more-recent-than-cgout.rs:new - 1,000 (1.0%) 0 0 ???:unknown - 500 (0.5%) 0 0 ann3-basic.rs:f6 - 500 (0.5%) 0 0 ann3-basic.rs:f4 - --------------------------------------------------------------------------------- --- Auto-annotated source: ann3-basic.rs --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName - - 7,100 (7.1%) 100 (0.1%) 0 <unknown (line 0)> - --- line 2 ---------------------------------------- - . . . two - . . . three - 5,000 (5.0%) 500 (0.5%) 0 four - 5,000 (5.0%) 100 (0.1%) 0 five - . . . six -70,091 (70.1%) 90,291 (90.3%) 0 seven - . . . eight - 110 (0.1%) 9 (0.0%) 0 nine - . . . ten - . . . eleven - 200 (0.2%) 0 0 twelve - 200 (0.2%) 0 0 thirteen - 100 (0.1%) 0 0 fourteen - 0 0 0 fifteen - 0 0 0 sixteen - 0 0 0 seventeen - 0 0 0 eighteen - 499 (0.5%) 2,000 (2.0%) 0 nineteen - 300 (0.3%) 0 0 twenty - --------------------------------------------------------------------------------- --- Auto-annotated source: ann3-more-recent-than-cgout.rs --------------------------------------------------------------------------------- -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -@@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -@ Source file 'ann3-more-recent-than-cgout.rs' is more recent than input file 'cgout-test3'. -@ Annotations may not be correct. -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ - -A SomeCount VeryLongEventName - - . . . one -1,000 (1.0%) 0 0 two - . . . three - . . . four --- line 4 ---------------------------------------- - --------------------------------------------------------------------------------- --- Auto-annotated source: ann3-negatives.rs --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName - - -2,000 (-2.0%) -1,000 (-1.0%) -990 (n/a) <unknown (line 0)> - - 2,000 (2.0%) 2,000 (2.0%) 2,000 (n/a) one - -1,000 (-1.0%) -1,000 (-1.0%) 0 two - . . . three - . . . four - 999,000 (999.0%) 0 -150,000 (n/a) five --1,000,000 (-1000.0%) 0 150,000 (n/a) six - . . . seven - . . . eight - . . . nine - -10,000 (-10.0%) 0 10 (n/a) ten - 10,000 (10.0%) 0 -20 (n/a) eleven - . . . twelve - . . . thirteen --- line 13 ---------------------------------------- - --------------------------------------------------------------------------------- --- Auto-annotated source: ann3-past-the-end.rs --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName - -200 (0.2%) 100 (0.1%) 0 one - . . . two - . . . three --- line 3 ---------------------------------------- --- line 18 ---------------------------------------- -300 (0.3%) 100 (0.1%) 0 <bogus line 20> -300 (0.3%) 100 (0.1%) 0 <bogus line 21> -200 (0.2%) 0 -1,000 (n/a) <bogus line 22> - -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -@@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ WARNING @@ -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -@@ Information recorded about lines past the end of 'ann3-past-the-end.rs'. -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ - --------------------------------------------------------------------------------- --- User-annotated source: ann3-unmentioned.rs --------------------------------------------------------------------------------- - No information has been collected for ann3-unmentioned.rs - --------------------------------------------------------------------------------- --- Auto-annotated source: ann3-aux/ann3-via-I.rs --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName - -1,000 (1.0%) 500 (0.5%) 0 one - --------------------------------------------------------------------------------- -The following files chosen for auto-annotation could not be read: --------------------------------------------------------------------------------- - ann3-could-not-be-found.rs - ann3-no-such-file.rs - --------------------------------------------------------------------------------- -A SomeCount VeryLongEventName --------------------------------------------------------------------------------- -84,500 (84.5%) 94,700 (94.7%) 990 (n/a) annotated: files known & above threshold & readable, line numbers known - 5,100 (5.1%) -900 (-0.9%) -990 (n/a) annotated: files known & above threshold & readable, line numbers unknown - 9,000 (9.0%) 6,000 (6.0%) 0 unannotated: files known & above threshold & unreadable - 400 (0.4%) 200 (0.2%) 0 unannotated: files known & below threshold - 1,000 (1.0%) 0 0 unannotated: files unknown - diff --git a/cachegrind/tests/ann3.vgtest b/cachegrind/tests/ann3.vgtest deleted file mode 100644 index c4fb4cb140..0000000000 --- a/cachegrind/tests/ann3.vgtest +++ /dev/null @@ -1,13 +0,0 @@ -# This tests all sorts of edge cases. See the comments in `cgout-test3` for -# more details. -# -# The `prog` doesn't matter because we don't use its output. Instead we test -# the post-processing of the cgout-test file. -prog: ../../tests/true -vgopts: --cachegrind-out-file=cachegrind.out - -# The `sleep` is to ensure the mtime of the second touched file is greater than -# the mtime of the first touched file. -post: touch cgout-test3 && sleep 0.1 && touch ann3-more-recent-than-cgout.rs && python3 ../../cachegrind/cg_annotate --context 2 --auto --show-percs=yes --threshold=0.5 -Iann3-no-such-dir --include ann3-no-such-dir-2 -I=ann3-aux cgout-test3 ann3-unmentioned.rs ann3-no-such-file.rs - -cleanup: rm cachegrind.out diff --git a/cachegrind/tests/diff.vgtest b/cachegrind/tests/diff.vgtest deleted file mode 100644 index f38361ec0e..0000000000 --- a/cachegrind/tests/diff.vgtest +++ /dev/null @@ -1,6 +0,0 @@ -# The 'prog' doesn't matter because we don't use its output. Instead we test -# the post-processing of the cgout-test file. -prog: ../../tests/true -vgopts: --cachegrind-out-file=cachegrind.out -post: perl ../../cachegrind/cg_diff cgout-test cgout-test2 > cgout-diff && perl ../../cachegrind/cg_annotate cgout-diff -cleanup: rm cgout-diff |
|
From: Paul F. <pa...@so...> - 2023-03-26 16:23:26
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=c7e01d28b4b08e07e4882159f2ba6d4b7d9691fb commit c7e01d28b4b08e07e4882159f2ba6d4b7d9691fb Author: Paul Floyd <pj...@wa...> Date: Sun Mar 26 18:21:42 2023 +0200 Solaris: improve syscall trace for sysfs More than just fix the format warning Diff: --- coregrind/m_syswrap/syswrap-solaris.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coregrind/m_syswrap/syswrap-solaris.c b/coregrind/m_syswrap/syswrap-solaris.c index 944b5036c9..8a2a140f95 100644 --- a/coregrind/m_syswrap/syswrap-solaris.c +++ b/coregrind/m_syswrap/syswrap-solaris.c @@ -4681,7 +4681,7 @@ POST(sys_ucredsys) PRE(sys_sysfs) { /* Kernel: int sysfs(int opcode, long a1, long a2); */ - PRINT("sys_sysfs ( %ld, %ld, %lu )", SARG1, SARG2, ARG3); + PRINT("sys_sysfs ( %ld, %ld, %ld )", SARG1, SARG2, SARG3); switch (ARG1 /*opcode*/) { case VKI_GETFSIND: |
|
From: Paul F. <pa...@so...> - 2023-03-26 15:07:19
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=5fd3b8947e3a1e5ea99744f6e3e01e0c580d709d commit 5fd3b8947e3a1e5ea99744f6e3e01e0c580d709d Author: Paul Floyd <pj...@wa...> Date: Sun Mar 26 17:05:25 2023 +0200 Regtest: put back a glibc version ofr memalign_args test I forgot that glibc aligned_alloc really is memalign, which changes the callstack. Diff: --- memcheck/tests/Makefile.am | 1 + memcheck/tests/memalign_args.stderr.exp-glibc | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index 6a6eb91ddc..7bfedb3058 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -225,6 +225,7 @@ EXTRA_DIST = \ memalign_test.stderr.exp memalign_test.vgtest \ memalign_test.stderr.exp-freebsd-clang \ memalign_args.vgtest memalign_args.stderr.exp \ + memalign_args.stderr.exp-glibc \ memcmptest.stderr.exp memcmptest.stderr.exp2 \ memcmptest.stdout.exp memcmptest.vgtest \ memmem.stderr.exp memmem.vgtest \ diff --git a/memcheck/tests/memalign_args.stderr.exp-glibc b/memcheck/tests/memalign_args.stderr.exp-glibc new file mode 100644 index 0000000000..8106196391 --- /dev/null +++ b/memcheck/tests/memalign_args.stderr.exp-glibc @@ -0,0 +1,15 @@ +Conditional jump or move depends on uninitialised value(s) + at 0x........: memalign (vg_replace_malloc.c:...) + by 0x........: main (memalign_args.c:19) + +Conditional jump or move depends on uninitialised value(s) + at 0x........: posix_memalign (vg_replace_malloc.c:...) + by 0x........: main (memalign_args.c:23) + +Conditional jump or move depends on uninitialised value(s) + at 0x........: memalign (vg_replace_malloc.c:...) + by 0x........: main (memalign_args.c:26) + +Conditional jump or move depends on uninitialised value(s) + at 0x........: valloc (vg_replace_malloc.c:...) + by 0x........: main (memalign_args.c:29) |
|
From: Paul F. <pa...@so...> - 2023-03-26 14:41:03
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=95ac41bc5827cdb5961f873a67d3b36313fb4145 commit 95ac41bc5827cdb5961f873a67d3b36313fb4145 Author: Paul Floyd <pj...@wa...> Date: Sun Mar 26 16:37:56 2023 +0200 Regtest: add a filter for aligned alloc uninit args tests These tests generate a varying number of errors per argument depending on the platform and compiler. The filter just prints the first unique error stanza which allows 8 expecteds to be removed. Diff: --- memcheck/tests/Makefile.am | 11 +-- memcheck/tests/filter_stanza | 5 ++ memcheck/tests/filter_stanza.awk | 22 +++++ memcheck/tests/memalign_args.stderr.exp | 17 ---- memcheck/tests/memalign_args.stderr.exp-arm | 40 --------- memcheck/tests/memalign_args.stderr.exp-glibc | 32 -------- memcheck/tests/memalign_args.stderr.exp-ppc64 | 44 ---------- memcheck/tests/memalign_args.stderr.exp-x86 | 28 ------- memcheck/tests/memalign_args.vgtest | 1 + .../tests/sized_aligned_new_delete_args.stderr.exp | 25 ------ .../sized_aligned_new_delete_args.stderr.exp-gcc | 80 ------------------ .../sized_aligned_new_delete_args.stderr.exp-s390 | 96 ---------------------- .../sized_aligned_new_delete_args.stderr.exp_32 | 72 ---------------- .../tests/sized_aligned_new_delete_args.vgtest | 1 + 14 files changed, 32 insertions(+), 442 deletions(-) diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index ec16313ddf..6a6eb91ddc 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -81,7 +81,9 @@ dist_noinst_SCRIPTS = \ filter_memcheck \ filter_overlaperror \ filter_malloc_free \ - filter_size_t + filter_size_t \ + filter_stanza \ + filter_stanza.awk noinst_HEADERS = leak.h @@ -142,9 +144,6 @@ EXTRA_DIST = \ cxx17_aligned_new.stdout.exp \ sized_aligned_new_delete_args.stderr.exp \ sized_aligned_new_delete_args.vgtest \ - sized_aligned_new_delete_args.stderr.exp_32 \ - sized_aligned_new_delete_args.stderr.exp-gcc \ - sized_aligned_new_delete_args.stderr.exp-s390 \ sized_aligned_new_delete_misaligned.stderr.exp \ sized_aligned_new_delete_misaligned.vgtest \ deep-backtrace.vgtest deep-backtrace.stderr.exp \ @@ -226,10 +225,6 @@ EXTRA_DIST = \ memalign_test.stderr.exp memalign_test.vgtest \ memalign_test.stderr.exp-freebsd-clang \ memalign_args.vgtest memalign_args.stderr.exp \ - memalign_args.stderr.exp-glibc \ - memalign_args.stderr.exp-ppc64 \ - memalign_args.stderr.exp-arm \ - memalign_args.stderr.exp-x86 \ memcmptest.stderr.exp memcmptest.stderr.exp2 \ memcmptest.stdout.exp memcmptest.vgtest \ memmem.stderr.exp memmem.vgtest \ diff --git a/memcheck/tests/filter_stanza b/memcheck/tests/filter_stanza new file mode 100755 index 0000000000..9152ff1090 --- /dev/null +++ b/memcheck/tests/filter_stanza @@ -0,0 +1,5 @@ +#! /bin/sh + + +./filter_stderr "$@" | +awk -f filter_stanza.awk diff --git a/memcheck/tests/filter_stanza.awk b/memcheck/tests/filter_stanza.awk new file mode 100644 index 0000000000..99aad77e00 --- /dev/null +++ b/memcheck/tests/filter_stanza.awk @@ -0,0 +1,22 @@ +BEGIN { + main="" + stanza="" +} +/main/ { + if ($0 != main) { + # first or different stanza + print stanza$0 + main=$0 + stanza="" + } else { + # duplicate stanza + main=$0 + stanza="" + } + next +} + +{ + # other lines + stanza = stanza $0 "\n" +} diff --git a/memcheck/tests/memalign_args.stderr.exp b/memcheck/tests/memalign_args.stderr.exp index 65e6122005..4d426d3696 100644 --- a/memcheck/tests/memalign_args.stderr.exp +++ b/memcheck/tests/memalign_args.stderr.exp @@ -2,26 +2,10 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: memalign (vg_replace_malloc.c:...) by 0x........: main (memalign_args.c:19) -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - Conditional jump or move depends on uninitialised value(s) at 0x........: posix_memalign (vg_replace_malloc.c:...) by 0x........: main (memalign_args.c:23) -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: aligned_alloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - Conditional jump or move depends on uninitialised value(s) at 0x........: aligned_alloc (vg_replace_malloc.c:...) by 0x........: main (memalign_args.c:26) @@ -29,4 +13,3 @@ Conditional jump or move depends on uninitialised value(s) Conditional jump or move depends on uninitialised value(s) at 0x........: valloc (vg_replace_malloc.c:...) by 0x........: main (memalign_args.c:29) - diff --git a/memcheck/tests/memalign_args.stderr.exp-arm b/memcheck/tests/memalign_args.stderr.exp-arm deleted file mode 100644 index 093accfb7e..0000000000 --- a/memcheck/tests/memalign_args.stderr.exp-arm +++ /dev/null @@ -1,40 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: valloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:29) - diff --git a/memcheck/tests/memalign_args.stderr.exp-glibc b/memcheck/tests/memalign_args.stderr.exp-glibc deleted file mode 100644 index 0261a8b930..0000000000 --- a/memcheck/tests/memalign_args.stderr.exp-glibc +++ /dev/null @@ -1,32 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: valloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:29) - diff --git a/memcheck/tests/memalign_args.stderr.exp-ppc64 b/memcheck/tests/memalign_args.stderr.exp-ppc64 deleted file mode 100644 index bc3c0aba46..0000000000 --- a/memcheck/tests/memalign_args.stderr.exp-ppc64 +++ /dev/null @@ -1,44 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: valloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:29) - diff --git a/memcheck/tests/memalign_args.stderr.exp-x86 b/memcheck/tests/memalign_args.stderr.exp-x86 deleted file mode 100644 index 1bb553ea6b..0000000000 --- a/memcheck/tests/memalign_args.stderr.exp-x86 +++ /dev/null @@ -1,28 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: posix_memalign (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:23) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: aligned_alloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: aligned_alloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:26) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: valloc (vg_replace_malloc.c:...) - by 0x........: main (memalign_args.c:29) - diff --git a/memcheck/tests/memalign_args.vgtest b/memcheck/tests/memalign_args.vgtest index 852e75e0dd..f20fe1fe79 100644 --- a/memcheck/tests/memalign_args.vgtest +++ b/memcheck/tests/memalign_args.vgtest @@ -1,3 +1,4 @@ prog: memalign_args vgopts: -q +stderr_filter: filter_stanza diff --git a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp b/memcheck/tests/sized_aligned_new_delete_args.stderr.exp index f79314a9f4..403bd06cd7 100644 --- a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp +++ b/memcheck/tests/sized_aligned_new_delete_args.stderr.exp @@ -2,10 +2,6 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:16) -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete(void*, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:17) @@ -14,10 +10,6 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:19) -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete[](void*, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:20) @@ -26,10 +18,6 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:24) -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete(void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:25) @@ -38,10 +26,6 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:27) -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete[](void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:28) @@ -58,15 +42,6 @@ Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:37) -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - Conditional jump or move depends on uninitialised value(s) at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) by 0x........: main (sized_aligned_new_delete_args.cpp:40) - diff --git a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-gcc b/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-gcc deleted file mode 100644 index 03eded9016..0000000000 --- a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-gcc +++ /dev/null @@ -1,80 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:17) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:20) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:25) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:28) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: ...operator delete... (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:31) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:34) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - diff --git a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-s390 b/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-s390 deleted file mode 100644 index ea74f0f3d7..0000000000 --- a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp-s390 +++ /dev/null @@ -1,96 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:17) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:20) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:25) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned long, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:28) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: ...operator delete... (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:31) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:34) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned long, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - diff --git a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp_32 b/memcheck/tests/sized_aligned_new_delete_args.stderr.exp_32 deleted file mode 100644 index 9a23649683..0000000000 --- a/memcheck/tests/sized_aligned_new_delete_args.stderr.exp_32 +++ /dev/null @@ -1,72 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:16) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:17) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:19) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:20) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned int, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new(unsigned int, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:24) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:25) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned int, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator new[](unsigned int, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:27) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, std::align_val_t, std::nothrow_t const&) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:28) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: ...operator delete... (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:31) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned int) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:34) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete(void*, unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:37) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - -Conditional jump or move depends on uninitialised value(s) - at 0x........: operator delete[](void*, unsigned int, std::align_val_t) (vg_replace_malloc.c:...) - by 0x........: main (sized_aligned_new_delete_args.cpp:40) - diff --git a/memcheck/tests/sized_aligned_new_delete_args.vgtest b/memcheck/tests/sized_aligned_new_delete_args.vgtest index 029fd4b661..282a4bcc81 100644 --- a/memcheck/tests/sized_aligned_new_delete_args.vgtest +++ b/memcheck/tests/sized_aligned_new_delete_args.vgtest @@ -1,3 +1,4 @@ prog: sized_aligned_new_delete_args prereq: test -e ./sized_aligned_new_delete_args vgopts: -q +stderr_filter: filter_stanza |
|
From: Paul F. <pa...@so...> - 2023-03-26 08:49:13
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=6bbe320a1a8b89ed05220ac6215023f6de98bb1c commit 6bbe320a1a8b89ed05220ac6215023f6de98bb1c Author: Paul Floyd <pj...@wa...> Date: Sun Mar 26 10:48:08 2023 +0200 Solaris: format warnings in syswrap functions Diff: --- coregrind/m_syswrap/syswrap-solaris.c | 40 +++++++++++++++++------------------ 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/coregrind/m_syswrap/syswrap-solaris.c b/coregrind/m_syswrap/syswrap-solaris.c index 1464674690..944b5036c9 100644 --- a/coregrind/m_syswrap/syswrap-solaris.c +++ b/coregrind/m_syswrap/syswrap-solaris.c @@ -627,7 +627,7 @@ void VG_(restore_context)(ThreadId tid, vki_ucontext_t *uc, CorePart part, VG_(dmsg)("restore_context, sigaltstack: tid %u, " "ss %p{%p,sz=%lu,flags=%#x}\n", tid, &uc->uc_stack, uc->uc_stack.ss_sp, - (SizeT)uc->uc_stack.ss_size, uc->uc_stack.ss_flags); + (SizeT)uc->uc_stack.ss_size, (UInt)uc->uc_stack.ss_flags); tst->altstack.ss_sp = uc->uc_stack.ss_sp; tst->altstack.ss_size = uc->uc_stack.ss_size; @@ -1745,7 +1745,7 @@ PRE(sys_open) if (ARG2 & VKI_O_CREAT) { /* 3-arg version */ - PRINT("sys_open ( %#lx(%s), %ld, %ld )", ARG1, (HChar *) ARG1, + PRINT("sys_open ( %#lx(%s), %ld, %lu )", ARG1, (HChar *) ARG1, SARG2, ARG3); PRE_REG_READ3(long, "open", const char *, filename, int, flags, vki_mode_t, mode); @@ -2032,7 +2032,7 @@ PRE(sys_brk) if (!VG_(setup_client_dataseg)()) { possibly_complain_brk("Cannot map memory to initialize brk segment in " - "thread #%d at %#lx\n", tid, VG_(brk_base)); + "thread #%u at %#lx\n", tid, VG_(brk_base)); SET_STATUS_Failure(VKI_ENOMEM); return; } @@ -2174,7 +2174,7 @@ PRE(sys_brk) Bool ok = VG_(am_create_reservation)(resvn_start, resvn_size, SmLower, anon_size); if (!ok) { - possibly_complain_brk("brk segment overflow in thread #%d: can not " + possibly_complain_brk("brk segment overflow in thread #%u: can not " "grow to %#lx\n", tid, new_brk); SET_STATUS_Failure(VKI_ENOMEM); return; @@ -2189,7 +2189,7 @@ PRE(sys_brk) sres = VG_(am_mmap_anon_fixed_client)(anon_start, anon_size, prot); if (sr_isError(sres)) { possibly_complain_brk("Cannot map memory to grow brk segment in " - "thread #%d to %#lx\n", tid, new_brk); + "thread #%u to %#lx\n", tid, new_brk); SET_STATUS_Failure(VKI_ENOMEM); return; } @@ -2247,7 +2247,7 @@ PRE(sys_mount) *flags |= SfMayBlock; if (ARG3 & VKI_MS_OPTIONSTR) { /* 8-argument mount */ - PRINT("sys_mount ( %#lx(%s), %#lx(%s), %ld, %#lx(%s), %#lx, %ld, " + PRINT("sys_mount ( %#lx(%s), %#lx(%s), %ld, %#lx(%s), %#lx, %lu, " "%#lx(%s), %ld )", ARG1, (HChar *) ARG1, ARG2, (HChar *) ARG2, SARG3, ARG4, (HChar *) ARG4, ARG5, ARG6, ARG7, (HChar *) ARG7, SARG8); PRE_REG_READ8(long, "mount", const char *, spec, const char *, dir, @@ -2352,7 +2352,7 @@ POST(sys_readlinkat) PRE(sys_stime) { /* Kernel: int stime(time_t time); */ - PRINT("sys_stime ( %ld )", ARG1); + PRINT("sys_stime ( %lu )", ARG1); PRE_REG_READ1(long, "stime", vki_time_t, time); } @@ -2731,7 +2731,7 @@ PRE(sys_shmsys) case VKI_SHMGET: /* Libc: int shmget(key_t key, size_t size, int shmflg); */ - PRINT("sys_shmsys ( %ld, %ld, %lu, %ld )", + PRINT("sys_shmsys ( %ld, %ld, %lu, %lu )", SARG1, SARG2, ARG3, ARG4); PRE_REG_READ4(long, SC2("shmsys", "shmget"), int, opcode, vki_key_t, key, vki_size_t, size, int, shmflg); @@ -3589,7 +3589,7 @@ PRE(sys_fchownat) This is different from Linux, for example, where glibc sign-extends it. */ Int fd = (Int) ARG1; - PRINT("sys_fchownat ( %d, %#lx(%s), %ld, %ld, %ld )", fd, + PRINT("sys_fchownat ( %d, %#lx(%s), %ld, %ld, %lu )", fd, ARG2, (HChar *) ARG2, SARG3, SARG4, ARG5); PRE_REG_READ5(long, "fchownat", int, fd, const char *, path, vki_uid_t, owner, vki_gid_t, group, int, flag); @@ -4681,7 +4681,7 @@ POST(sys_ucredsys) PRE(sys_sysfs) { /* Kernel: int sysfs(int opcode, long a1, long a2); */ - PRINT("sys_sysfs ( %ld, %ld, %ld )", SARG1, SARG2, ARG3); + PRINT("sys_sysfs ( %ld, %ld, %lu )", SARG1, SARG2, ARG3); switch (ARG1 /*opcode*/) { case VKI_GETFSIND: @@ -5216,7 +5216,7 @@ PRE(sys_sigsendsys) } if (VG_(clo_trace_signals)) - VG_(message)(Vg_DebugMsg, "sigsendsys: sending signal to process %d\n", + VG_(message)(Vg_DebugMsg, "sigsendsys: sending signal to process %u\n", pid); /* Handle SIGKILL specially. */ @@ -5358,7 +5358,7 @@ PRE(sys_sigresend) *flags |= SfPollAfter; if (VG_(clo_trace_signals)) - VG_(message)(Vg_DebugMsg, "sigresend: resending signal %ld\n", ARG1); + VG_(message)(Vg_DebugMsg, "sigresend: resending signal %lu\n", ARG1); /* Handle SIGKILL specially. */ if (ARG1 == VKI_SIGKILL && ML_(do_sigkill)(tid, -1)) { @@ -6102,7 +6102,7 @@ static SysRes mmapobj_process_phdrs(ThreadId tid, Int fd, "mmap failed: addr=%#lx size=%#lx prot=%#x " "flags=%#x fd=%d file offset=%#llx\n", (Addr) mrp->mr_addr, file_size, - prot, flags, fd, file_offset); + prot, flags, fd, (unsigned long long)file_offset); goto mmap_error; } @@ -6110,7 +6110,7 @@ static SysRes mmapobj_process_phdrs(ThreadId tid, Int fd, "segment: vaddr=%#lx size=%#lx prot=%#x " "flags=%#x fd=%d file offset=%#llx\n", (Addr) mrp->mr_addr, file_size, mrp->mr_prot, - flags, fd, file_offset); + flags, fd, (unsigned long long)file_offset); } if (zeroed_size > 0) { @@ -6177,7 +6177,7 @@ static SysRes mmapobj_process_phdrs(ThreadId tid, Int fd, VG_(brk_base) = VG_(brk_limit) = elfbrk; if (!VG_(setup_client_dataseg)()) { - VG_(umsg)("Cannot map memory to initialize brk segment in thread #%d " + VG_(umsg)("Cannot map memory to initialize brk segment in thread #%u " "at %#lx\n", tid, VG_(brk_base)); res = VG_(mk_SysRes_Error)(VKI_ENOMEM); goto mmap_error; @@ -6256,7 +6256,7 @@ static SysRes mmapobj_interpret(ThreadId tid, Int fd, if (header[VKI_EI_CLASS] != VG_ELF_CLASS) { if (VG_(clo_trace_syscalls)) VG_(debugLog)(3, "syswrap-solaris", "mmapobj_interpret: ELF class " - "mismatch (%u vs %u)\n", header[VKI_EI_CLASS], + "mismatch (%d vs %d)\n", header[VKI_EI_CLASS], VG_ELF_CLASS); return VG_(mk_SysRes_Error)(VKI_ENOTSUP); } @@ -6826,7 +6826,7 @@ PRE(sys_modctl) switch (ARG1 /*cmd*/) { case VKI_MODLOAD: /* int modctl_modload(int use_path, char *filename, int *rvp); */ - PRINT("sys_modctl ( %ld, %ld, %#lx(%s), %#lx )", + PRINT("sys_modctl ( %ld, %lu, %#lx(%s), %#lx )", SARG1, ARG2, ARG3, (HChar *) ARG3, ARG4); PRE_REG_READ4(long, SC2("modctl", "modload"), int, cmd, int, use_path, char *, filename, int *, rvp); @@ -7031,7 +7031,7 @@ PRE(sys_lwp_create) vki_ucontext_t uc; Bool tool_informed = False; - PRINT("sys_lwp_create ( %#lx, %ld, %#lx )", ARG1, ARG2, ARG3); + PRINT("sys_lwp_create ( %#lx, %lu, %#lx )", ARG1, ARG2, ARG3); PRE_REG_READ3(long, "lwp_create", ucontext_t *, ucp, int, flags, id_t *, new_lwp); @@ -9585,7 +9585,7 @@ POST(sys_door) VG_(debugLog)(1, "syswrap-solaris", "POST(sys_door), " "new segment: vaddr=%#lx, size=%#lx, " - "prot=%#x, flags=%#x, fd=%ld, offset=%#llx\n", + "prot=%#x, flags=%#x, fd=%lu, offset=%#llx\n", addr, size, prot, flags, (UWord)-1, (ULong)0); ML_(notify_core_and_tool_of_mmap)(addr, size, prot, flags, @@ -9823,7 +9823,7 @@ PRE(sys_pset) # endif /* SOLARIS_PSET_GET_NAME */ case VKI_PSET_SETATTR: /* Libc: int pset_setattr(psetid_t pset, uint_t attr); */ - PRINT("sys_pset ( %ld, %ld, %ld )", SARG1, SARG2, ARG3); + PRINT("sys_pset ( %ld, %ld, %lu )", SARG1, SARG2, ARG3); PRE_REG_READ3(long, SC2("pset", "setattr"), int, subcode, vki_psetid_t, pset, vki_uint_t, attr); break; |
|
From: Austin E. <aus...@gm...> - 2023-03-26 08:07:10
|
On Sat, Mar 25, 2023 at 3:32 PM Paul Floyd <pj...@wa...> wrote: > > On 25-03-23 01:23, Nicholas Nethercote wrote: > > > One way to do it is to divide the tests into "must pass on CI" and "the > > rest". I suspect there are plenty of tests that work on all platforms, > > which would give a lot of useful coverage from the start. Over time you > > can hopefully move tests from the first category to the second. > > > > The other way to do it is to divide the tests into "run on CI" and > > "don't run on CI", i.e. exceptions, which does require a mechanism for > > specifying those exceptions. In practice I think this works out much the > > same as the first approach, because a test that consistently fails on > > one platform isn't much use. (In fact, it can have negative value if its > > presence masks new failures in other tests.) > > > > One consequence of all this is that the CI platforms become gospel. E.g. > > if a test passes on CI but fails locally, that's good enough. This is > > fine in practice, assuming the CI platforms are reasonable choices. > > > > Flaky tests can be a problem. For rare failures you can always just > > trigger another CI run. For regular failures you should either fix the > > test or disable it. > > Our problems are different to most company testing systems that I've > used. Typical examples of flakiness are threading nondeterminism with > floating point, use of pointers as keys for ordered collections, . In a > corporate environment I'm used to using standardized build and test > machines, all running the same OS and using the same compiler and > generally on similar hardware. > > We do have a bit of thread non-determinism. Our build and test kit is > pretty much a random bunch of bits and bobs. Since a large number of our > tests are deliberately executing UB it's hard to have a set of > deterministic and reliable reference results. Things often change with > compiler or OS upgrades. > > If we do go for CI (and I'm in favour of it) then I also think that we > need to have some sort of tiering for platforms. > > At the moment we have glibc Linux amd64/PPC/s390 and FreeBSD amd64 that > are both fairly close to clean - less than 5 failures. After that it > goes downhill fairly rapidly. Linux aarch64 has 17 errors mostly related > to identifying variables i error messages. Last time I tried Solaris > 11.3 there were 20 or so failures, but there are many more on Illumos > and Solaris 11.4. Alipne Linux (musl based) is a mess and macOS is still > a basket case (counting on you Louis!). > > So I would say > Tier 1 - as "officially" supported as we can manage > glibc Linux amd64/PPC/s390 and FreeBSD amd64 > > Tier 2 - best effort support > glibc Linux aarch64 and FreeBSD x86 > > Tier 3 - practically unsupported, try to get them to build for releases > all the rest > > It's too early to tell how Loongson and riscv64 would fit in if/when > they get merged. > > A+ > Paul > For what it's worth, Wine deals with similar issues: * tests that are expected to work on windows, but not wine * tests that work on some windows versions, but not others (fwiw, generally, newer behavior is accepted) * flaky tests * tests that are expected to work on win32, but not win64) To work around that, there are various macros that are used to test for the appropriate conditions (and a generic todo_wine_if() that can be used to check for non-generic cases). See: https://gitlab.winehq.org/wine/wine/-/blob/master/include/wine/test.h Valgrind could do similar; add macros for various platforms/"feature levels", and consider the test as failed if it fails on those platforms. For platforms that it's expected to fail, ignore failure, but exit with non-zero status if the test succeeds. -- -Austin GPG: 267B CC1F 053F 0749 (expires 2024/02/17) |