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
(32) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
|
1
(15) |
|
2
(11) |
3
(3) |
4
(20) |
5
(16) |
6
(17) |
7
(16) |
8
(11) |
|
9
(3) |
10
(15) |
11
(16) |
12
(14) |
13
(17) |
14
(17) |
15
(18) |
|
16
(13) |
17
(17) |
18
(17) |
19
(19) |
20
(19) |
21
(14) |
22
(15) |
|
23
(66) |
24
(18) |
25
(27) |
26
(15) |
27
(12) |
28
(1) |
29
(14) |
|
30
(11) |
|
|
|
|
|
|
|
From: Tom H. <to...@co...> - 2014-11-04 04:26:29
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) GDB: GNU gdb (GDB) Fedora (7.3.1-48.fc15) Assembler: GNU assembler version 2.21.51.0.6-6.fc15 20110118 C library: GNU C Library stable release version 2.14.1 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2014-11-04 03:12:28 GMT Ended at 2014-11-04 04:26:16 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 696 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (15.0x, -----) me: 3.4s (31.0x, -----) ca:14.3s (129.7x, -----) he: 2.0s (18.5x, -----) ca: 3.9s (35.2x, -----) dr: 2.0s (18.0x, -----) ma: 2.0s (17.9x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (15.0x, 0.0%) me: 3.4s (30.7x, 0.9%) ca:14.3s (130.0x, -0.2%) he: 2.0s (18.4x, 1.0%) ca: 3.8s (34.8x, 1.0%) dr: 2.0s (18.0x, 0.0%) ma: 2.0s (17.8x, 0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.2x, -----) me: 8.5s (77.3x, -----) ca:25.8s (234.3x, -----) he: 5.0s (45.2x, -----) ca: 7.4s (67.3x, -----) dr: 4.7s (42.5x, -----) ma: 4.6s (42.2x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.0x, 0.5%) me: 8.5s (76.9x, 0.5%) ca:25.3s (229.7x, 1.9%) he: 5.0s (45.1x, 0.2%) ca: 7.3s (66.5x, 1.2%) dr: 4.7s (43.1x, -1.3%) ma: 4.6s (41.6x, 1.3%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.7s (10.9x, -----) ca:13.2s (25.4x, -----) he: 8.4s (16.2x, -----) ca:10.8s (20.8x, -----) dr:10.5s (20.1x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, 1.2%) me: 5.7s (11.0x, -0.9%) ca:13.2s (25.3x, 0.2%) he: 8.4s (16.2x, -0.5%) ca:10.9s (20.9x, -0.7%) dr:10.5s (20.1x, 0.1%) ma: 1.6s ( 3.1x, -1.3%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.7s (17.0x, -----) ca: 5.5s (25.2x, -----) he: 2.7s (12.5x, -----) ca: 3.1s (14.1x, -----) dr: 2.7s (12.3x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 0.0%) me: 3.7s (16.9x, 0.3%) ca: 5.5s (25.1x, 0.2%) he: 2.7s (12.5x, 0.0%) ca: 3.1s (14.0x, 0.6%) dr: 2.6s (11.9x, 3.3%) ma: 1.1s ( 4.8x, 0.0%) -- ffbench -- ffbench valgrind-new:0.20s no: 0.9s ( 4.7x, -----) me: 2.8s (14.0x, -----) ca: 1.8s ( 9.1x, -----) he: 5.9s (29.4x, -----) ca: 4.2s (20.8x, -----) dr: 3.4s (16.8x, -----) ma: 0.9s ( 4.4x, -----) ffbench valgrind-old:0.20s no: 0.9s ( 4.7x, 0.0%) me: 2.9s (14.4x, -2.5%) ca: 1.9s ( 9.2x, -1.6%) he: 5.9s (29.4x, 0.2%) ca: 4.2s (21.0x, -1.2%) dr: 3.4s (17.0x, -1.2%) ma: 0.9s ( 4.3x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.4x, -----) me: 5.0s (63.1x, -----) ca: 6.2s (78.1x, -----) he: 6.8s (85.5x, -----) ca: 3.3s (41.1x, -----) dr: 4.7s (58.1x, -----) ma: 4.7s (58.8x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.4x, 0.0%) me: 4.9s (61.7x, 2.2%) ca: 6.2s (77.9x, 0.3%) he: 6.9s (86.0x, -0.6%) ca: 3.2s (40.6x, 1.2%) dr: 4.5s (56.6x, 2.6%) ma: 4.6s (57.8x, 1.7%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.0x, -----) me: 8.6s (78.3x, -----) ca: 7.0s (63.2x, -----) he: 7.7s (69.6x, -----) ca: 3.5s (31.8x, -----) dr: 5.0s (45.8x, -----) ma: 5.0s (45.2x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 5.9x, 1.5%) me: 8.4s (76.2x, 2.7%) ca: 7.0s (64.1x, -1.4%) he: 7.5s (68.4x, 1.8%) ca: 3.5s (32.3x, -1.4%) dr: 4.9s (44.5x, 2.8%) ma: 4.9s (44.7x, 1.0%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.4s (138.0x, -----) ca: 1.0s (102.0x, -----) he: 1.2s (117.0x, -----) ca: 0.7s (65.0x, -----) dr: 1.0s (104.0x, -----) ma: 1.0s (96.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (24.0x, 4.0%) me: 1.3s (131.0x, 5.1%) ca: 1.0s (99.0x, 2.9%) he: 1.2s (116.0x, 0.9%) ca: 0.7s (66.0x, -1.5%) dr: 1.1s (106.0x, -1.9%) ma: 1.0s (98.0x, -2.1%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.3x, -----) me: 1.9s (62.0x, -----) ca: 2.6s (88.3x, -----) he: 2.2s (73.3x, -----) ca: 1.0s (32.7x, -----) dr: 1.6s (52.0x, -----) ma: 1.4s (48.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, -3.2%) me: 2.0s (65.3x, -5.4%) ca: 2.6s (85.3x, 3.4%) he: 2.2s (74.3x, -1.4%) ca: 1.0s (32.7x, 0.0%) dr: 1.6s (52.3x, -0.6%) ma: 1.4s (47.3x, 1.4%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.3s (115.5x, -----) ca: 1.9s (92.5x, -----) he: 7.1s (354.0x, -----) ca: 0.9s (47.5x, -----) dr: 1.0s (51.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.5s (127.5x,-10.4%) ca: 1.9s (93.0x, -0.5%) he: 6.7s (335.5x, 5.2%) ca: 1.0s (48.0x, -1.1%) dr: 1.0s (49.0x, 3.9%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.9x, -----) me: 9.2s (57.6x, -----) ca:11.2s (69.8x, -----) he: 9.7s (60.7x, -----) ca: 8.1s (50.8x, -----) dr: 8.2s (50.9x, -----) ma: 2.5s (15.7x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 9.0x, -1.4%) me: 9.2s (57.2x, 0.5%) ca:11.2s (69.9x, -0.2%) he:10.2s (63.9x, -5.4%) ca: 8.1s (50.6x, 0.4%) dr: 8.2s (50.9x, 0.0%) ma: 2.5s (15.3x, 2.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m30.189s user 33m37.395s sys 0m20.822s |
|
From: Tom H. <to...@co...> - 2014-11-04 04:18:34
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) GDB: GNU gdb (GDB) Fedora (7.3.50.20110722-16.fc16) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2014-11-04 03:02:13 GMT Ended at 2014-11-04 04:18:22 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 696 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.7s (15.2x, -----) me: 3.4s (30.9x, -----) ca:14.4s (131.3x, -----) he: 2.1s (18.9x, -----) ca: 3.9s (35.0x, -----) dr: 2.0s (18.5x, -----) ma: 2.0s (17.8x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (15.0x, 1.2%) me: 3.4s (30.5x, 1.2%) ca:14.6s (132.6x, -1.0%) he: 2.1s (19.1x, -1.0%) ca: 3.9s (35.4x, -1.0%) dr: 2.0s (18.5x, 0.0%) ma: 2.0s (18.2x, -2.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.1x, -----) me: 8.6s (78.4x, -----) ca:26.5s (241.2x, -----) he: 5.1s (46.7x, -----) ca: 7.5s (68.3x, -----) dr: 4.8s (43.4x, -----) ma: 4.8s (43.5x, -----) bigcode2 valgrind-old:0.11s no: 4.1s (37.4x, -3.5%) me: 9.1s (82.5x, -5.2%) ca:27.2s (247.6x, -2.7%) he: 5.0s (45.8x, 1.9%) ca: 7.3s (66.3x, 2.9%) dr: 4.8s (43.2x, 0.4%) ma: 4.6s (42.0x, 3.3%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.9s (11.4x, -----) ca:13.2s (25.4x, -----) he: 8.3s (16.1x, -----) ca:10.9s (21.0x, -----) dr:10.5s (20.2x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, -1.2%) me: 5.9s (11.3x, 0.5%) ca:13.3s (25.5x, -0.5%) he: 8.4s (16.2x, -1.0%) ca:11.1s (21.2x, -1.0%) dr:10.5s (20.2x, 0.4%) ma: 1.6s ( 3.1x, -0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.7s (17.0x, -----) ca: 5.6s (25.6x, -----) he: 2.9s (13.1x, -----) ca: 3.1s (14.3x, -----) dr: 2.7s (12.2x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.8s (17.0x, -0.3%) ca: 5.7s (25.7x, -0.4%) he: 2.9s (13.1x, 0.3%) ca: 3.2s (14.4x, -1.0%) dr: 2.7s (12.3x, -0.7%) ma: 1.1s ( 4.8x, 0.9%) -- ffbench -- ffbench valgrind-new:0.23s no: 0.9s ( 4.1x, -----) me: 3.0s (12.8x, -----) ca: 1.9s ( 8.1x, -----) he: 5.8s (25.0x, -----) ca: 4.2s (18.2x, -----) dr: 3.5s (15.0x, -----) ma: 0.9s ( 3.9x, -----) ffbench valgrind-old:0.23s no: 0.9s ( 4.1x, 0.0%) me: 2.9s (12.7x, 0.7%) ca: 1.9s ( 8.2x, -1.6%) he: 5.4s (23.5x, 6.2%) ca: 4.2s (18.3x, -0.7%) dr: 3.5s (15.0x, 0.0%) ma: 0.9s ( 3.9x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.8x, -----) me: 5.2s (65.4x, -----) ca: 6.7s (83.6x, -----) he: 6.7s (84.2x, -----) ca: 3.4s (41.9x, -----) dr: 4.5s (56.8x, -----) ma: 4.8s (60.0x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.9x, -1.6%) me: 5.1s (64.2x, 1.7%) ca: 6.7s (83.5x, 0.1%) he: 6.7s (83.4x, 1.0%) ca: 3.3s (41.6x, 0.6%) dr: 4.4s (55.1x, 2.9%) ma: 4.8s (59.6x, 0.6%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.8x, -----) me: 8.8s (87.5x, -----) ca: 7.3s (72.6x, -----) he: 7.8s (78.5x, -----) ca: 3.7s (36.6x, -----) dr: 5.1s (51.0x, -----) ma: 5.0s (50.0x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 7.2x, -5.9%) me: 8.8s (87.5x, 0.0%) ca: 7.2s (72.3x, 0.4%) he: 7.9s (79.4x, -1.1%) ca: 3.7s (37.3x, -1.9%) dr: 5.1s (50.6x, 0.8%) ma: 5.0s (49.9x, 0.2%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (27.0x, -----) me: 1.4s (143.0x, -----) ca: 1.1s (108.0x, -----) he: 1.2s (124.0x, -----) ca: 0.7s (68.0x, -----) dr: 1.1s (113.0x, -----) ma: 1.0s (101.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 3.7%) me: 1.4s (143.0x, 0.0%) ca: 1.1s (109.0x, -0.9%) he: 1.2s (124.0x, 0.0%) ca: 0.7s (68.0x, 0.0%) dr: 1.1s (112.0x, 0.9%) ma: 1.0s (101.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (11.0x, -----) me: 1.9s (65.0x, -----) ca: 2.7s (91.0x, -----) he: 2.2s (73.3x, -----) ca: 1.0s (33.0x, -----) dr: 1.6s (52.3x, -----) ma: 1.4s (48.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 3.0%) me: 1.9s (65.0x, 0.0%) ca: 2.8s (92.7x, -1.8%) he: 2.2s (73.3x, 0.0%) ca: 1.0s (32.0x, 3.0%) dr: 1.6s (52.0x, 0.6%) ma: 1.5s (48.7x, -1.4%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.3s (116.5x, -----) ca: 1.8s (88.0x, -----) he: 6.8s (341.5x, -----) ca: 1.1s (52.5x, -----) dr: 1.0s (51.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.5s (127.5x, -9.4%) ca: 1.8s (88.0x, 0.0%) he: 6.7s (332.5x, 2.6%) ca: 1.1s (52.5x, 0.0%) dr: 1.0s (52.0x, -2.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.9x, -----) me: 9.1s (56.9x, -----) ca:11.0s (68.8x, -----) he: 9.8s (61.4x, -----) ca: 8.0s (50.2x, -----) dr: 8.0s (50.1x, -----) ma: 2.4s (15.2x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.8x, 0.7%) me: 9.0s (56.0x, 1.5%) ca:11.1s (69.2x, -0.6%) he: 9.9s (61.8x, -0.7%) ca: 8.1s (50.9x, -1.4%) dr: 8.0s (49.8x, 0.5%) ma: 2.4s (15.1x, 0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m25.949s user 34m25.753s sys 0m22.308s |
|
From: Tom H. <to...@co...> - 2014-11-04 04:07:33
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) GDB: GNU gdb (GDB) Fedora (7.4.50.20120120-54.fc17) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2014-11-04 02:51:05 GMT Ended at 2014-11-04 04:07:19 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 4 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcmain_pic (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.7s (15.2x, -----) me: 3.5s (31.8x, -----) ca:13.9s (126.7x, -----) he: 2.1s (19.5x, -----) ca: 3.8s (34.9x, -----) dr: 2.2s (20.2x, -----) ma: 2.1s (18.8x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.4x, -1.2%) me: 3.5s (31.5x, 1.1%) ca:13.7s (124.7x, 1.6%) he: 2.1s (19.1x, 1.9%) ca: 3.8s (34.2x, 2.1%) dr: 2.1s (19.5x, 3.2%) ma: 2.0s (17.8x, 5.3%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.1s (37.0x, -----) me: 9.3s (84.5x, -----) ca:26.6s (241.8x, -----) he: 5.1s (46.3x, -----) ca: 7.3s (66.2x, -----) dr: 4.8s (43.6x, -----) ma: 4.6s (41.9x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.6x, 1.0%) me: 8.8s (80.2x, 5.1%) ca:29.4s (266.8x,-10.3%) he: 5.2s (46.8x, -1.2%) ca: 7.1s (64.6x, 2.3%) dr: 4.7s (42.8x, 1.9%) ma: 4.6s (42.1x, -0.4%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.8s (11.1x, -----) ca:12.4s (23.9x, -----) he: 8.4s (16.2x, -----) ca:10.3s (19.8x, -----) dr:11.0s (21.2x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, -0.6%) me: 5.8s (11.1x, -0.3%) ca:12.3s (23.7x, 1.0%) he: 8.5s (16.3x, -0.8%) ca:10.4s (20.0x, -1.2%) dr:11.0s (21.2x, -0.3%) ma: 1.6s ( 3.2x, -1.2%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.6s (16.4x, -----) ca: 5.5s (25.0x, -----) he: 2.8s (12.7x, -----) ca: 2.9s (13.3x, -----) dr: 2.5s (11.5x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 1.9%) me: 3.6s (16.3x, 0.6%) ca: 5.5s (24.9x, 0.5%) he: 2.7s (12.5x, 2.1%) ca: 3.0s (13.7x, -3.4%) dr: 2.6s (11.7x, -2.4%) ma: 1.1s ( 4.9x, -0.9%) -- ffbench -- ffbench valgrind-new:0.24s no: 1.0s ( 4.0x, -----) me: 3.0s (12.4x, -----) ca: 1.8s ( 7.6x, -----) he: 6.9s (28.8x, -----) ca: 4.0s (16.8x, -----) dr: 3.5s (14.6x, -----) ma: 0.9s ( 3.7x, -----) ffbench valgrind-old:0.24s no: 0.9s ( 4.0x, 2.1%) me: 3.0s (12.4x, 0.3%) ca: 1.9s ( 7.8x, -2.2%) he: 7.2s (30.0x, -3.9%) ca: 4.0s (16.8x, 0.0%) dr: 3.5s (14.6x, 0.0%) ma: 0.9s ( 3.8x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.4x, -----) me: 5.3s (66.5x, -----) ca: 6.0s (75.2x, -----) he: 7.1s (89.2x, -----) ca: 3.0s (37.2x, -----) dr: 4.3s (53.5x, -----) ma: 4.7s (58.9x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, -1.7%) me: 5.4s (67.1x, -0.9%) ca: 5.9s (74.2x, 1.3%) he: 7.2s (89.6x, -0.4%) ca: 3.0s (37.9x, -1.7%) dr: 4.3s (54.4x, -1.6%) ma: 4.9s (60.9x, -3.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.7x, -----) me: 9.0s (89.7x, -----) ca: 6.6s (65.6x, -----) he: 7.9s (79.4x, -----) ca: 3.4s (33.5x, -----) dr: 4.9s (48.7x, -----) ma: 4.9s (49.4x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.8x, -1.5%) me: 8.9s (89.1x, 0.7%) ca: 6.6s (65.8x, -0.3%) he: 7.7s (77.3x, 2.6%) ca: 3.3s (32.9x, 1.8%) dr: 4.9s (48.6x, 0.2%) ma: 5.0s (49.9x, -1.0%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.5s (148.0x, -----) ca: 1.0s (100.0x, -----) he: 1.3s (126.0x, -----) ca: 0.6s (64.0x, -----) dr: 1.1s (115.0x, -----) ma: 1.0s (102.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, -4.0%) me: 1.4s (144.0x, 2.7%) ca: 1.0s (99.0x, 1.0%) he: 1.3s (126.0x, 0.0%) ca: 0.7s (65.0x, -1.6%) dr: 1.2s (116.0x, -0.9%) ma: 1.0s (104.0x, -2.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.3x, -----) me: 1.9s (64.0x, -----) ca: 2.6s (86.7x, -----) he: 2.4s (80.3x, -----) ca: 0.9s (30.7x, -----) dr: 1.5s (50.7x, -----) ma: 1.5s (51.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 0.0%) me: 1.9s (64.0x, 0.0%) ca: 2.6s (85.7x, 1.2%) he: 2.4s (79.3x, 1.2%) ca: 0.9s (30.7x, 0.0%) dr: 1.5s (50.3x, 0.7%) ma: 1.5s (50.7x, 0.7%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.5s (122.5x, -----) ca: 1.8s (87.5x, -----) he: 7.1s (354.0x, -----) ca: 0.9s (43.0x, -----) dr: 1.0s (50.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.4s (122.0x, 0.4%) ca: 1.7s (85.5x, 2.3%) he: 7.1s (356.5x, -0.7%) ca: 0.9s (43.5x, -1.2%) dr: 1.0s (50.0x, 0.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.3s ( 8.4x, -----) me: 8.4s (52.6x, -----) ca:10.6s (66.5x, -----) he: 9.8s (60.9x, -----) ca: 7.5s (46.9x, -----) dr: 7.5s (47.1x, -----) ma: 2.4s (15.2x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.4x, -0.7%) me: 8.5s (53.0x, -0.8%) ca:10.6s (66.4x, 0.2%) he: 9.7s (60.5x, 0.7%) ca: 7.5s (47.2x, -0.5%) dr: 7.6s (47.2x, -0.4%) ma: 2.4s (15.0x, 1.2%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m11.582s user 34m2.659s sys 0m23.021s |
|
From: Tom H. <to...@co...> - 2014-11-04 03:58:42
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8) GDB: GNU gdb (GDB) Fedora 7.5.1-42.fc18 Assembler: GNU assembler version 2.23.51.0.1-10.fc18 20120806 C library: GNU C Library stable release version 2.16 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 18 (Spherical Cow) Nightly build on bristol ( x86_64, Fedora 18 (Spherical Cow) ) Started at 2014-11-04 02:41:16 GMT Ended at 2014-11-04 03:58:26 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 1 stderr failure, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.8s (16.0x, -----) me: 3.6s (32.9x, -----) ca:14.0s (127.2x, -----) he: 2.2s (20.0x, -----) ca: 3.8s (34.5x, -----) dr: 2.1s (18.7x, -----) ma: 2.0s (18.0x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.4x, 4.0%) me: 3.5s (31.6x, 3.9%) ca:13.4s (122.2x, 3.9%) he: 2.4s (21.4x, -6.8%) ca: 3.8s (34.7x, -0.8%) dr: 2.1s (18.7x, 0.0%) ma: 2.0s (18.2x, -1.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.4x, -----) me: 8.9s (81.0x, -----) ca:27.0s (245.5x, -----) he: 5.4s (49.2x, -----) ca: 7.4s (67.6x, -----) dr: 4.8s (43.4x, -----) ma: 4.6s (41.5x, -----) bigcode2 valgrind-old:0.11s no: 4.1s (37.2x, -2.2%) me: 9.1s (82.6x, -2.0%) ca:27.7s (251.7x, -2.6%) he: 5.1s (46.0x, 6.5%) ca: 7.2s (65.2x, 3.6%) dr: 4.8s (43.8x, -1.0%) ma: 4.7s (42.7x, -3.1%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.7s ( 3.2x, -----) me: 5.9s (11.3x, -----) ca:12.8s (24.5x, -----) he: 9.0s (17.3x, -----) ca:10.4s (20.1x, -----) dr:11.3s (21.8x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.2x, 1.8%) me: 5.7s (11.0x, 2.9%) ca:12.5s (24.0x, 2.2%) he: 8.5s (16.3x, 5.9%) ca:11.2s (21.5x, -7.3%) dr:11.7s (22.5x, -3.0%) ma: 1.7s ( 3.2x, -1.2%) -- fbench -- fbench valgrind-new:0.22s no: 1.1s ( 4.9x, -----) me: 3.7s (16.8x, -----) ca: 5.5s (24.8x, -----) he: 2.9s (13.2x, -----) ca: 3.1s (14.0x, -----) dr: 2.5s (11.5x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 3.7%) me: 3.7s (16.9x, -0.8%) ca: 5.5s (25.0x, -1.1%) he: 2.7s (12.4x, 5.9%) ca: 3.1s (14.2x, -1.6%) dr: 2.8s (12.8x,-11.5%) ma: 1.1s ( 5.0x, -0.9%) -- ffbench -- ffbench valgrind-new:0.25s no: 1.0s ( 3.8x, -----) me: 3.0s (12.1x, -----) ca: 1.9s ( 7.6x, -----) he: 8.0s (31.9x, -----) ca: 4.1s (16.5x, -----) dr: 3.6s (14.5x, -----) ma: 0.9s ( 3.6x, -----) ffbench valgrind-old:0.25s no: 1.0s ( 3.8x, 0.0%) me: 3.0s (11.9x, 1.7%) ca: 1.9s ( 7.6x, 1.0%) he: 6.0s (24.0x, 24.7%) ca: 4.1s (16.4x, 0.5%) dr: 3.5s (14.0x, 3.0%) ma: 0.9s ( 3.6x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.5x, -----) me: 5.4s (67.4x, -----) ca: 6.3s (78.5x, -----) he: 7.1s (88.6x, -----) ca: 3.0s (38.1x, -----) dr: 4.5s (56.6x, -----) ma: 4.6s (58.0x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 0.0%) me: 5.3s (65.8x, 2.4%) ca: 6.1s (76.4x, 2.7%) he: 7.0s (88.1x, 0.6%) ca: 3.1s (38.4x, -0.7%) dr: 4.6s (57.9x, -2.2%) ma: 4.9s (60.8x, -4.7%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.2x, -----) me: 8.9s (81.3x, -----) ca: 6.7s (60.5x, -----) he: 7.9s (72.1x, -----) ca: 3.4s (30.7x, -----) dr: 5.0s (45.5x, -----) ma: 5.0s (45.4x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.5x, -4.4%) me: 8.9s (81.0x, 0.3%) ca: 6.7s (60.8x, -0.5%) he: 8.1s (73.4x, -1.8%) ca: 3.6s (32.5x, -5.9%) dr: 5.1s (46.3x, -1.8%) ma: 5.2s (47.1x, -3.8%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.5s (147.0x, -----) ca: 1.0s (101.0x, -----) he: 1.3s (129.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.2s (118.0x, -----) ma: 1.1s (113.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.5s (154.0x, -4.8%) ca: 1.0s (101.0x, 0.0%) he: 1.3s (127.0x, 1.6%) ca: 0.7s (65.0x, 1.5%) dr: 1.1s (115.0x, 2.5%) ma: 1.1s (106.0x, 6.2%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.9s (64.7x, -----) ca: 2.6s (87.0x, -----) he: 2.4s (80.3x, -----) ca: 0.9s (30.3x, -----) dr: 1.6s (51.7x, -----) ma: 1.6s (52.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.9s (65.0x, -0.5%) ca: 2.6s (87.3x, -0.4%) he: 2.4s (80.0x, 0.4%) ca: 0.9s (30.3x, 0.0%) dr: 1.5s (51.0x, 1.3%) ma: 1.6s (52.3x, -0.6%) -- sarp -- sarp valgrind-new:0.01s no: 0.3s (29.0x, -----) me: 2.3s (228.0x, -----) ca: 1.7s (174.0x, -----) he: 7.3s (733.0x, -----) ca: 0.9s (88.0x, -----) dr: 1.0s (103.0x, -----) ma: 0.3s (30.0x, -----) sarp valgrind-old:0.01s no: 0.3s (28.0x, 3.4%) me: 2.3s (230.0x, -0.9%) ca: 1.7s (169.0x, 2.9%) he: 7.4s (741.0x, -1.1%) ca: 0.9s (89.0x, -1.1%) dr: 1.0s (102.0x, 1.0%) ma: 0.3s (29.0x, 3.3%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.5x, -----) me: 8.5s (53.4x, -----) ca:10.6s (66.1x, -----) he: 9.8s (61.1x, -----) ca: 7.7s (48.1x, -----) dr: 7.7s (47.8x, -----) ma: 2.4s (15.1x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.5x, -0.0%) me: 8.9s (55.4x, -3.9%) ca:10.7s (66.9x, -1.1%) he: 9.7s (60.8x, 0.6%) ca: 7.6s (47.5x, 1.3%) dr: 7.6s (47.6x, 0.5%) ma: 2.4s (15.1x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 36m27.134s user 35m16.602s sys 0m24.084s |
|
From: Tom H. <to...@co...> - 2014-11-04 03:50:21
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7) GDB: GNU gdb (GDB) Fedora 7.6.1-46.fc19 Assembler: GNU assembler version 2.23.52.0.1-9.fc19 20130226 C library: GNU C Library (GNU libc) stable release version 2.17 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 19 (Schrödingerâs Cat) Nightly build on bristol ( x86_64, Fedora 19 (Schrödingerâs Cat) ) Started at 2014-11-04 02:31:40 GMT Ended at 2014-11-04 03:50:05 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 696 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (15.0x, -----) me: 3.5s (31.4x, -----) ca:13.3s (121.4x, -----) he: 2.2s (19.6x, -----) ca: 4.2s (38.2x, -----) dr: 2.6s (23.3x, -----) ma: 2.0s (18.3x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.8x, 1.2%) me: 3.5s (31.5x, -0.3%) ca:14.1s (127.9x, -5.4%) he: 2.1s (19.3x, 1.9%) ca: 4.3s (39.5x, -3.3%) dr: 2.1s (19.0x, 18.4%) ma: 2.1s (18.9x, -3.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.1x, -----) me: 8.6s (78.4x, -----) ca:26.6s (241.5x, -----) he: 5.1s (46.1x, -----) ca: 7.5s (68.1x, -----) dr: 4.7s (43.1x, -----) ma: 4.5s (41.0x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.5x, 1.8%) me: 8.6s (77.8x, 0.7%) ca:28.0s (254.3x, -5.3%) he: 5.0s (45.7x, 0.8%) ca: 7.8s (71.3x, -4.7%) dr: 4.9s (44.9x, -4.2%) ma: 4.6s (41.5x, -1.1%) -- bz2 -- bz2 valgrind-new:0.50s no: 1.6s ( 3.3x, -----) me: 6.0s (12.0x, -----) ca:13.1s (26.3x, -----) he: 9.8s (19.6x, -----) ca:12.1s (24.1x, -----) dr:11.0s (22.1x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.50s no: 1.6s ( 3.2x, 3.1%) me: 6.2s (12.3x, -3.2%) ca:12.4s (24.9x, 5.3%) he:10.0s (19.9x, -1.7%) ca:12.0s (24.0x, 0.6%) dr:11.1s (22.2x, -0.6%) ma: 1.6s ( 3.1x, 1.3%) -- fbench -- fbench valgrind-new:0.22s no: 1.1s ( 5.0x, -----) me: 3.5s (16.1x, -----) ca: 5.6s (25.4x, -----) he: 2.8s (12.6x, -----) ca: 3.3s (15.1x, -----) dr: 2.6s (11.8x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 8.1%) me: 3.5s (16.0x, 0.6%) ca: 5.9s (26.8x, -5.5%) he: 2.8s (12.8x, -1.1%) ca: 3.4s (15.4x, -2.1%) dr: 2.8s (12.5x, -6.2%) ma: 1.1s ( 5.0x, -4.7%) -- ffbench -- ffbench valgrind-new:0.28s no: 1.0s ( 3.6x, -----) me: 3.0s (10.9x, -----) ca: 1.9s ( 6.7x, -----) he: 6.4s (22.8x, -----) ca: 4.9s (17.6x, -----) dr: 3.4s (12.2x, -----) ma: 0.9s ( 3.3x, -----) ffbench valgrind-old:0.28s no: 1.0s ( 3.4x, 5.9%) me: 3.0s (10.8x, 0.7%) ca: 1.9s ( 6.9x, -3.2%) he: 6.5s (23.2x, -2.0%) ca: 5.1s (18.3x, -4.1%) dr: 3.5s (12.6x, -3.5%) ma: 0.9s ( 3.3x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.1s (63.5x, -----) ca: 6.2s (76.9x, -----) he: 7.3s (91.0x, -----) ca: 3.7s (46.8x, -----) dr: 4.4s (55.1x, -----) ma: 4.8s (60.6x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.8x, -1.6%) me: 5.2s (64.6x, -1.8%) ca: 6.1s (76.2x, 0.8%) he: 6.9s (86.2x, 5.2%) ca: 3.6s (45.4x, 2.9%) dr: 4.4s (55.0x, 0.2%) ma: 5.2s (65.6x, -8.2%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.8x, -----) me: 9.0s (89.7x, -----) ca: 6.8s (68.0x, -----) he: 8.3s (82.6x, -----) ca: 4.0s (40.3x, -----) dr: 5.1s (51.1x, -----) ma: 5.1s (50.6x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.9x, -1.5%) me: 9.1s (91.1x, -1.6%) ca: 6.7s (67.0x, 1.5%) he: 8.3s (83.5x, -1.1%) ca: 4.1s (41.0x, -1.7%) dr: 5.1s (51.2x, -0.2%) ma: 5.7s (56.6x,-11.9%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (30.0x, -----) me: 1.5s (152.0x, -----) ca: 1.0s (100.0x, -----) he: 1.3s (134.0x, -----) ca: 0.7s (72.0x, -----) dr: 1.2s (122.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (27.0x, 10.0%) me: 1.5s (148.0x, 2.6%) ca: 1.0s (102.0x, -2.0%) he: 1.4s (135.0x, -0.7%) ca: 0.7s (72.0x, 0.0%) dr: 1.2s (122.0x, 0.0%) ma: 1.1s (107.0x, -1.9%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.6s (55.0x, -----) ca: 2.6s (87.3x, -----) he: 2.3s (76.3x, -----) ca: 1.0s (33.3x, -----) dr: 1.6s (51.7x, -----) ma: 1.6s (52.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.7s (56.0x, -1.8%) ca: 2.6s (87.3x, 0.0%) he: 2.3s (75.7x, 0.9%) ca: 1.0s (33.0x, 1.0%) dr: 1.5s (51.0x, 1.3%) ma: 1.6s (52.7x, -1.3%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.5x, -----) me: 2.3s (113.5x, -----) ca: 1.7s (84.5x, -----) he: 6.5s (322.5x, -----) ca: 1.0s (51.0x, -----) dr: 1.1s (55.0x, -----) ma: 0.3s (15.5x, -----) sarp valgrind-old:0.02s no: 0.3s (14.5x, 0.0%) me: 2.4s (118.0x, -4.0%) ca: 1.7s (85.5x, -1.2%) he: 6.5s (323.0x, -0.2%) ca: 1.0s (51.0x, 0.0%) dr: 1.1s (54.0x, 1.8%) ma: 0.3s (15.5x, 0.0%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.3x, -----) me: 8.0s (53.2x, -----) ca:10.8s (71.7x, -----) he:10.4s (69.3x, -----) ca: 8.5s (56.4x, -----) dr: 8.2s (54.9x, -----) ma: 2.5s (16.5x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.3x, 0.0%) me: 8.1s (53.8x, -1.1%) ca:10.8s (72.2x, -0.7%) he:10.3s (68.5x, 1.2%) ca: 8.1s (53.8x, 4.6%) dr: 8.2s (54.9x, 0.0%) ma: 2.6s (17.3x, -5.3%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 38m7.730s user 36m6.774s sys 0m25.776s |
|
From: Tom H. <to...@co...> - 2014-11-04 03:41:18
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7) GDB: GNU gdb (GDB) Fedora 7.7.1-21.fc20 Assembler: GNU assembler version 2.23.2 C library: GNU C Library (GNU libc) stable release version 2.18 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 20 (Heisenbug) Nightly build on bristol ( x86_64, Fedora 20 ) Started at 2014-11-04 02:22:29 GMT Ended at 2014-11-04 03:41:00 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 696 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.8x, -----) me: 3.4s (30.5x, -----) ca:13.3s (121.3x, -----) he: 2.1s (19.1x, -----) ca: 4.1s (37.0x, -----) dr: 2.0s (18.5x, -----) ma: 1.9s (17.5x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.7x, 0.6%) me: 3.4s (30.5x, -0.3%) ca:13.3s (121.3x, 0.0%) he: 2.1s (18.8x, 1.4%) ca: 4.2s (38.5x, -4.2%) dr: 2.0s (18.5x, 0.0%) ma: 1.9s (17.6x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.5x, -----) me: 8.5s (77.6x, -----) ca:25.1s (227.8x, -----) he: 5.0s (45.1x, -----) ca: 7.3s (66.8x, -----) dr: 4.7s (42.5x, -----) ma: 4.5s (40.8x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.5x, 0.0%) me: 8.5s (77.1x, 0.7%) ca:26.1s (237.5x, -4.3%) he: 5.0s (45.1x, 0.0%) ca: 7.5s (68.1x, -1.9%) dr: 5.5s (49.7x,-16.9%) ma: 4.6s (41.5x, -1.8%) -- bz2 -- bz2 valgrind-new:0.50s no: 1.6s ( 3.2x, -----) me: 5.9s (11.7x, -----) ca:12.4s (24.9x, -----) he: 8.6s (17.2x, -----) ca:13.6s (27.2x, -----) dr:10.4s (20.8x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.50s no: 1.6s ( 3.2x, -0.6%) me: 5.9s (11.7x, 0.0%) ca:14.1s (28.1x,-12.9%) he: 8.6s (17.2x, 0.1%) ca:11.8s (23.6x, 13.2%) dr:10.8s (21.7x, -4.0%) ma: 1.8s ( 3.6x, -9.9%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.6s (16.5x, -----) ca: 5.7s (25.8x, -----) he: 3.1s (14.0x, -----) ca: 3.6s (16.5x, -----) dr: 2.6s (11.8x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.5s (15.7x, 4.7%) ca: 6.8s (31.0x,-19.9%) he: 3.2s (14.4x, -2.6%) ca: 3.4s (15.5x, 6.3%) dr: 2.7s (12.4x, -5.0%) ma: 1.2s ( 5.5x,-13.1%) -- ffbench -- ffbench valgrind-new:0.24s no: 1.0s ( 4.0x, -----) me: 3.0s (12.5x, -----) ca: 1.9s ( 7.9x, -----) he: 7.8s (32.5x, -----) ca: 4.9s (20.6x, -----) dr: 3.6s (15.2x, -----) ma: 1.0s ( 4.2x, -----) ffbench valgrind-old:0.24s no: 0.9s ( 4.0x, 2.1%) me: 3.0s (12.5x, 0.0%) ca: 1.9s ( 8.0x, -1.6%) he: 7.0s (29.3x, 9.8%) ca: 5.0s (20.9x, -1.4%) dr: 3.4s (14.2x, 6.6%) ma: 0.9s ( 3.8x, 9.0%) -- heap -- heap valgrind-new:0.07s no: 0.6s ( 8.9x, -----) me: 5.0s (71.0x, -----) ca: 6.2s (87.9x, -----) he: 7.3s (104.6x, -----) ca: 4.1s (58.6x, -----) dr: 4.3s (61.7x, -----) ma: 5.0s (70.9x, -----) heap valgrind-old:0.07s no: 0.6s ( 8.9x, 0.0%) me: 5.0s (72.0x, -1.4%) ca: 6.1s (87.6x, 0.3%) he: 7.7s (109.4x, -4.6%) ca: 3.8s (54.4x, 7.1%) dr: 4.6s (65.9x, -6.7%) ma: 4.9s (70.4x, 0.6%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.9x, -----) me: 8.8s (87.6x, -----) ca: 6.6s (66.0x, -----) he: 8.0s (79.8x, -----) ca: 4.0s (39.6x, -----) dr: 5.0s (50.2x, -----) ma: 5.1s (50.9x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.7x, 2.9%) me: 9.1s (91.0x, -3.9%) ca: 6.8s (68.0x, -3.0%) he: 8.0s (79.7x, 0.1%) ca: 4.0s (39.7x, -0.3%) dr: 4.9s (49.2x, 2.0%) ma: 5.1s (51.0x, -0.2%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.5s (147.0x, -----) ca: 1.2s (122.0x, -----) he: 1.3s (130.0x, -----) ca: 0.7s (72.0x, -----) dr: 1.2s (117.0x, -----) ma: 1.1s (113.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (29.0x,-11.5%) me: 1.5s (149.0x, -1.4%) ca: 1.1s (111.0x, 9.0%) he: 1.4s (139.0x, -6.9%) ca: 0.8s (75.0x, -4.2%) dr: 1.1s (114.0x, 2.6%) ma: 1.1s (113.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.3s ( 8.0x, -----) me: 1.6s (41.0x, -----) ca: 2.6s (66.0x, -----) he: 2.2s (56.0x, -----) ca: 1.1s (28.5x, -----) dr: 1.6s (40.8x, -----) ma: 1.6s (38.8x, -----) many-xpts valgrind-old:0.04s no: 0.3s ( 7.8x, 3.1%) me: 1.7s (42.0x, -2.4%) ca: 2.6s (65.5x, 0.8%) he: 2.3s (57.8x, -3.1%) ca: 1.1s (27.5x, 3.5%) dr: 1.7s (41.5x, -1.8%) ma: 1.7s (41.5x, -7.1%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.5x, -----) me: 2.5s (123.5x, -----) ca: 1.8s (88.0x, -----) he: 6.7s (335.5x, -----) ca: 1.0s (50.5x, -----) dr: 1.1s (54.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (15.0x, -3.4%) me: 2.4s (121.0x, 2.0%) ca: 1.8s (88.5x, -0.6%) he: 6.9s (344.0x, -2.5%) ca: 1.2s (61.5x,-21.8%) dr: 1.1s (57.0x, -4.6%) ma: 0.3s (15.5x, -3.3%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.9x, -----) me: 8.8s (54.8x, -----) ca:12.1s (75.8x, -----) he:10.6s (65.9x, -----) ca: 8.8s (55.1x, -----) dr: 8.3s (51.8x, -----) ma: 2.4s (15.1x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.6x, 3.5%) me: 8.2s (51.1x, 6.6%) ca:11.9s (74.6x, 1.5%) he:11.1s (69.1x, -4.7%) ca: 8.2s (51.4x, 6.7%) dr: 8.8s (54.9x, -5.9%) ma: 2.5s (15.8x, -4.1%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 37m2.752s user 35m53.381s sys 0m25.762s |
|
From: <ma...@bu...> - 2014-11-04 02:11:55
|
valgrind revision: 14685 VEX revision: 2986 C compiler: gcc (Debian 4.7.2-5) 4.7.2 GDB: GNU gdb (GDB) 7.4.1-debian Assembler: GNU assembler (GNU Binutils for Debian) 2.22 C library: GNU C Library (Debian EGLIBC 2.13-38+deb7u6) stable release version 2.13 uname -mrs: Linux 3.2.0-4-amd64 x86_64 Vendor version: Debian GNU/Linux 7 (wheezy) Nightly build on wildebeest ( Debian 7.7 wheezy x86_64 ) Started at 2014-11-04 00:00:01 UTC Ended at 2014-11-04 02:11:26 UTC Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 684 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.14s no: 2.2s (15.7x, -----) me: 4.9s (34.8x, -----) ca:18.2s (130.1x, -----) he: 2.9s (20.6x, -----) ca: 5.2s (37.2x, -----) dr: 2.8s (20.2x, -----) ma: 2.6s (18.5x, -----) bigcode1 valgrind-old:0.14s no: 2.3s (16.6x, -5.9%) me: 4.5s (31.9x, 8.4%) ca:17.7s (126.1x, 3.1%) he: 2.9s (20.9x, -1.4%) ca: 5.3s (37.6x, -1.2%) dr: 2.8s (19.6x, 2.8%) ma: 2.6s (18.8x, -1.5%) -- bigcode2 -- bigcode2 valgrind-new:0.14s no: 5.5s (39.0x, -----) me:11.7s (83.4x, -----) ca:36.1s (257.7x, -----) he: 6.8s (48.8x, -----) ca: 9.6s (68.3x, -----) dr: 6.5s (46.1x, -----) ma: 6.3s (44.7x, -----) bigcode2 valgrind-old:0.14s no: 5.4s (38.9x, 0.4%) me:11.5s (82.0x, 1.7%) ca:34.6s (247.2x, 4.1%) he: 6.9s (49.6x, -1.6%) ca: 9.4s (67.4x, 1.3%) dr: 6.3s (44.8x, 2.9%) ma: 6.1s (43.6x, 2.6%) -- bz2 -- bz2 valgrind-new:0.69s no: 2.1s ( 3.1x, -----) me: 7.5s (10.8x, -----) ca:16.7s (24.3x, -----) he:11.1s (16.1x, -----) ca:13.9s (20.2x, -----) dr:14.9s (21.6x, -----) ma: 2.2s ( 3.2x, -----) bz2 valgrind-old:0.69s no: 2.1s ( 3.1x, 1.9%) me: 7.7s (11.2x, -2.9%) ca:16.0s (23.1x, 4.7%) he:11.1s (16.1x, 0.4%) ca:13.7s (19.9x, 1.7%) dr:14.8s (21.4x, 1.1%) ma: 2.1s ( 3.1x, 2.7%) -- fbench -- fbench valgrind-new:0.28s no: 1.4s ( 4.9x, -----) me: 5.1s (18.2x, -----) ca: 7.8s (28.0x, -----) he: 3.5s (12.5x, -----) ca: 3.8s (13.6x, -----) dr: 3.2s (11.4x, -----) ma: 1.4s ( 4.9x, -----) fbench valgrind-old:0.28s no: 1.4s ( 5.0x, -2.9%) me: 4.6s (16.4x, 10.0%) ca: 7.3s (26.1x, 6.8%) he: 3.6s (13.0x, -3.7%) ca: 4.0s (14.2x, -4.2%) dr: 3.2s (11.5x, -0.9%) ma: 1.4s ( 5.0x, -0.7%) -- ffbench -- ffbench valgrind-new:0.26s no: 1.2s ( 4.7x, -----) me: 3.8s (14.6x, -----) ca: 2.4s ( 9.1x, -----) he: 8.7s (33.3x, -----) ca: 5.2s (20.1x, -----) dr: 4.4s (16.8x, -----) ma: 1.2s ( 4.7x, -----) ffbench valgrind-old:0.26s no: 1.2s ( 4.7x, -0.8%) me: 3.8s (14.4x, 1.1%) ca: 2.4s ( 9.0x, 0.4%) he: 8.6s (33.2x, 0.3%) ca: 5.2s (20.0x, 0.6%) dr: 4.5s (17.2x, -2.1%) ma: 1.2s ( 4.6x, 0.8%) -- heap -- heap valgrind-new:0.12s no: 0.9s ( 7.5x, -----) me: 7.0s (58.3x, -----) ca: 8.0s (66.9x, -----) he: 9.8s (81.5x, -----) ca: 4.1s (34.1x, -----) dr: 5.6s (46.9x, -----) ma: 6.3s (52.2x, -----) heap valgrind-old:0.12s no: 0.9s ( 7.5x, 0.0%) me: 7.3s (61.2x, -5.2%) ca: 8.7s (72.4x, -8.2%) he: 8.9s (74.4x, 8.7%) ca: 4.2s (34.8x, -2.2%) dr: 5.8s (48.3x, -3.0%) ma: 6.3s (52.3x, -0.2%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.14s no: 1.0s ( 7.1x, -----) me:11.9s (84.9x, -----) ca: 8.6s (61.4x, -----) he:10.7s (76.1x, -----) ca: 4.4s (31.7x, -----) dr: 6.4s (45.9x, -----) ma: 6.2s (44.4x, -----) heap_pdb4 valgrind-old:0.14s no: 1.0s ( 7.1x, -1.0%) me:12.0s (85.5x, -0.8%) ca: 8.5s (60.7x, 1.2%) he:10.6s (75.9x, 0.2%) ca: 4.5s (31.9x, -0.7%) dr: 6.5s (46.7x, -1.7%) ma: 6.5s (46.3x, -4.2%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.4s (36.0x, -----) me: 1.9s (187.0x, -----) ca: 1.3s (134.0x, -----) he: 1.7s (166.0x, -----) ca: 0.9s (90.0x, -----) dr: 1.5s (148.0x, -----) ma: 1.3s (133.0x, -----) many-loss-records valgrind-old:0.01s no: 0.4s (37.0x, -2.8%) me: 1.9s (186.0x, 0.5%) ca: 1.3s (130.0x, 3.0%) he: 1.6s (165.0x, 0.6%) ca: 0.9s (86.0x, 4.4%) dr: 1.5s (147.0x, 0.7%) ma: 1.4s (136.0x, -2.3%) -- many-xpts -- many-xpts valgrind-new:0.05s no: 0.4s ( 8.8x, -----) me: 2.4s (48.8x, -----) ca: 3.3s (66.8x, -----) he: 3.2s (63.6x, -----) ca: 1.2s (24.0x, -----) dr: 1.9s (38.8x, -----) ma: 2.0s (39.6x, -----) many-xpts valgrind-old:0.05s no: 0.4s ( 8.8x, 0.0%) me: 2.5s (49.8x, -2.0%) ca: 3.4s (68.0x, -1.8%) he: 3.1s (62.4x, 1.9%) ca: 1.2s (24.6x, -2.5%) dr: 1.9s (38.2x, 1.5%) ma: 2.0s (39.8x, -0.5%) -- sarp -- sarp valgrind-new:0.02s no: 0.4s (19.5x, -----) me: 3.1s (156.0x, -----) ca: 2.3s (113.0x, -----) he: 9.8s (489.0x, -----) ca: 1.2s (58.0x, -----) dr: 1.2s (62.5x, -----) ma: 0.5s (24.0x, -----) sarp valgrind-old:0.02s no: 0.4s (19.0x, 2.6%) me: 3.1s (156.5x, -0.3%) ca: 2.3s (114.0x, -0.9%) he: 9.8s (491.5x, -0.5%) ca: 1.2s (58.0x, 0.0%) dr: 1.3s (63.5x, -1.6%) ma: 0.4s (20.5x, 14.6%) -- tinycc -- tinycc valgrind-new:0.24s no: 2.0s ( 8.2x, -----) me:11.2s (46.6x, -----) ca:14.4s (60.1x, -----) he:13.1s (54.8x, -----) ca:10.6s (44.2x, -----) dr:10.1s (42.0x, -----) ma: 3.2s (13.3x, -----) tinycc valgrind-old:0.24s no: 1.9s ( 7.9x, 4.5%) me:11.4s (47.7x, -2.4%) ca:14.5s (60.3x, -0.3%) he:13.5s (56.3x, -2.8%) ca:10.6s (44.2x, 0.1%) dr:10.2s (42.6x, -1.3%) ma: 3.3s (13.9x, -4.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= 2730.46user 31.85system 1:23:27elapsed 55%CPU (0avgtext+0avgdata 500768maxresident)k 148320inputs+453120outputs (315major+11746875minor)pagefaults 0swaps Congratulations, all tests passed! |
|
From: <sv...@va...> - 2014-11-03 22:43:52
|
Author: florian
Date: Mon Nov 3 22:43:42 2014
New Revision: 14685
Log:
Merge r14308 from the BUF_REMOVAL branch to trunk
Changes VG_(describe_IP) to return the untruncated result in a statically
allocated local buffer. Fix call sites and update two .exp files who had
truncated names.
Modified:
trunk/ (props changed)
trunk/coregrind/m_debuginfo/debuginfo.c
trunk/coregrind/m_gdbserver/m_gdbserver.c
trunk/coregrind/m_gdbserver/target.c
trunk/coregrind/m_stacktrace.c
trunk/include/pub_tool_debuginfo.h
trunk/massif/ms_main.c
trunk/massif/tests/long-names.c
trunk/massif/tests/long-names.post.exp
trunk/memcheck/tests/long_namespace_xml.cpp
trunk/memcheck/tests/long_namespace_xml.stderr.exp
Modified: trunk/coregrind/m_debuginfo/debuginfo.c
==============================================================================
--- trunk/coregrind/m_debuginfo/debuginfo.c (original)
+++ trunk/coregrind/m_debuginfo/debuginfo.c Mon Nov 3 22:43:42 2014
@@ -1,4 +1,4 @@
-
+/* -*- mode: C; c-basic-offset: 3; -*- */
/*--------------------------------------------------------------------*/
/*--- Top level management of symbols and debugging information. ---*/
@@ -2154,86 +2154,75 @@
}
-/* VG_(describe_IP): print into buf info on code address, function
- name and filename. */
-
-/* Copy str into buf starting at n, but not going past buf[n_buf-1]
- and always ensuring that buf is zero-terminated. */
+/* VG_(describe_IP): return info on code address, function name and
+ filename. The returned string is allocated in a static buffer and will
+ be overwritten in the next invocation. */
-static Int putStr ( Int n, Int n_buf, HChar* buf, const HChar* str )
+/* Copy str into *buf starting at n, ensuring that buf is zero-terminated.
+ Return the index of the terminating null character. */
+static SizeT
+putStr( SizeT n, HChar** buf, SizeT *bufsiz, const HChar* str )
{
- vg_assert(n_buf > 0);
- vg_assert(n >= 0 && n < n_buf);
- for (; n < n_buf-1 && *str != 0; n++,str++)
- buf[n] = *str;
- vg_assert(n >= 0 && n < n_buf);
- buf[n] = '\0';
- return n;
-}
+ SizeT slen = VG_(strlen)(str);
+ SizeT need = n + slen + 1;
-/* Same as putStr, but escaping chars for XML output, and
- also not adding more than count chars to n_buf. */
+ if (need > *bufsiz) {
+ if (need < 256) need = 256;
+ *bufsiz = need;
+ *buf = ML_(dinfo_realloc)("putStr", *buf, *bufsiz);
+ }
-static Int putStrEsc ( Int n, Int n_buf, Int count, HChar* buf,
- const HChar* str )
+ VG_(strcpy)(*buf + n, str);
+
+ return n + slen;
+}
+
+/* Same as putStr, but escaping chars for XML output. */
+static SizeT
+putStrEsc( SizeT n, HChar** buf, SizeT *bufsiz, const HChar* str )
{
HChar alt[2];
- vg_assert(n_buf > 0);
- vg_assert(count >= 0 && count < n_buf);
- vg_assert(n >= 0 && n < n_buf);
+
for (; *str != 0; str++) {
- vg_assert(count >= 0);
- if (count <= 0)
- goto done;
switch (*str) {
case '&':
- if (count < 5) goto done;
- n = putStr( n, n_buf, buf, "&");
- count -= 5;
+ n = putStr( n, buf, bufsiz, "&");
break;
case '<':
- if (count < 4) goto done;
- n = putStr( n, n_buf, buf, "<");
- count -= 4;
+ n = putStr( n, buf, bufsiz, "<");
break;
case '>':
- if (count < 4) goto done;
- n = putStr( n, n_buf, buf, ">");
- count -= 4;
+ n = putStr( n, buf, bufsiz, ">");
break;
default:
- if (count < 1) goto done;
alt[0] = *str;
alt[1] = 0;
- n = putStr( n, n_buf, buf, alt );
- count -= 1;
+ n = putStr( n, buf, bufsiz, alt );
break;
}
}
- done:
- vg_assert(count >= 0); /* should not go -ve in loop */
- vg_assert(n >= 0 && n < n_buf);
return n;
}
-HChar* VG_(describe_IP)(Addr eip, HChar* buf, Int n_buf, InlIPCursor *iipc)
+const HChar* VG_(describe_IP)(Addr eip, const InlIPCursor *iipc)
{
+ static HChar *buf = NULL;
+ static SizeT bufsiz = 0;
# define APPEND(_str) \
- n = putStr(n, n_buf, buf, _str)
-# define APPEND_ESC(_count,_str) \
- n = putStrEsc(n, n_buf, (_count), buf, (_str))
-# define BUF_LEN 4096
+ n = putStr(n, &buf, &bufsiz, _str)
+# define APPEND_ESC(_str) \
+ n = putStrEsc(n, &buf, &bufsiz, _str)
UInt lineno;
- HChar ibuf[50];
- Int n = 0;
+ HChar ibuf[50]; // large enough
+ SizeT n = 0;
vg_assert (!iipc || iipc->eip == eip);
- static const HChar *buf_fn;
- static const HChar *buf_obj;
- static const HChar *buf_srcloc;
- static const HChar *buf_dirname;
+ const HChar *buf_fn;
+ const HChar *buf_obj;
+ const HChar *buf_srcloc;
+ const HChar *buf_dirname;
Bool know_dirinfo = False;
Bool know_fnname;
@@ -2251,7 +2240,7 @@
: NULL;
vg_assert (next_inl);
// The function we are in is called by next_inl.
- buf_fn = next_inl->inlinedfn; // FIXME: IS THIS SAFE ??
+ buf_fn = next_inl->inlinedfn;
know_fnname = True;
// INLINED????
@@ -2302,11 +2291,7 @@
const HChar* maybe_newline2 = human_readable ? "\n " : "";
/* Print in XML format, dumping in as much info as we know.
- Ensure all tags are balanced even if the individual strings
- are too long. Allocate 1/10 of BUF_LEN to the object name,
- 6/10s to the function name, 1/10 to the directory name and
- 1/10 to the file name, leaving 1/10 for all the fixed-length
- stuff. */
+ Ensure all tags are balanced. */
APPEND("<frame>");
VG_(sprintf)(ibuf,"<ip>0x%llX</ip>", (ULong)eip);
APPEND(maybe_newline);
@@ -2314,25 +2299,25 @@
if (know_objname) {
APPEND(maybe_newline);
APPEND("<obj>");
- APPEND_ESC(1*BUF_LEN/10, buf_obj);
+ APPEND_ESC(buf_obj);
APPEND("</obj>");
}
if (know_fnname) {
APPEND(maybe_newline);
APPEND("<fn>");
- APPEND_ESC(6*BUF_LEN/10, buf_fn);
+ APPEND_ESC(buf_fn);
APPEND("</fn>");
}
if (know_srcloc) {
if (know_dirinfo) {
APPEND(maybe_newline);
APPEND("<dir>");
- APPEND_ESC(1*BUF_LEN/10, buf_dirname);
+ APPEND_ESC(buf_dirname);
APPEND("</dir>");
}
APPEND(maybe_newline);
APPEND("<file>");
- APPEND_ESC(1*BUF_LEN/10, buf_srcloc);
+ APPEND_ESC(buf_srcloc);
APPEND("</file>");
APPEND(maybe_newline);
APPEND("<line>");
@@ -2412,7 +2397,6 @@
# undef APPEND
# undef APPEND_ESC
-# undef BUF_LEN
}
Modified: trunk/coregrind/m_gdbserver/m_gdbserver.c
==============================================================================
--- trunk/coregrind/m_gdbserver/m_gdbserver.c (original)
+++ trunk/coregrind/m_gdbserver/m_gdbserver.c Mon Nov 3 22:43:42 2014
@@ -146,8 +146,8 @@
if (w == 2) w = 0;
if (is_code) {
- HChar name[200];
- VG_(describe_IP) (addr, name, 200, NULL); // FIXME: get rid of name
+ const HChar *name;
+ name = VG_(describe_IP) (addr, NULL);
if (buf[w]) VG_(free)(buf[w]);
buf[w] = VG_(strdup)("gdbserver sym", name);
} else {
Modified: trunk/coregrind/m_gdbserver/target.c
==============================================================================
--- trunk/coregrind/m_gdbserver/target.c (original)
+++ trunk/coregrind/m_gdbserver/target.c Mon Nov 3 22:43:42 2014
@@ -176,11 +176,9 @@
}
static
-char* sym (Addr addr)
+const HChar* sym (Addr addr)
{
- static char buf[200];
- VG_(describe_IP) (addr, buf, 200, NULL);
- return buf;
+ return VG_(describe_IP) (addr, NULL);
}
ThreadId vgdb_interrupted_tid = 0;
Modified: trunk/coregrind/m_stacktrace.c
==============================================================================
--- trunk/coregrind/m_stacktrace.c (original)
+++ trunk/coregrind/m_stacktrace.c Mon Nov 3 22:43:42 2014
@@ -1449,14 +1449,10 @@
static void printIpDesc(UInt n, Addr ip, void* uu_opaque)
{
- #define BUF_LEN 4096
-
- static HChar buf[BUF_LEN];
-
InlIPCursor *iipc = VG_(new_IIPC)(ip);
do {
- VG_(describe_IP)(ip, buf, BUF_LEN, iipc);
+ const HChar *buf = VG_(describe_IP)(ip, iipc);
if (VG_(clo_xml)) {
VG_(printf_xml)(" %s\n", buf);
} else {
Modified: trunk/include/pub_tool_debuginfo.h
==============================================================================
--- trunk/include/pub_tool_debuginfo.h (original)
+++ trunk/include/pub_tool_debuginfo.h Mon Nov 3 22:43:42 2014
@@ -129,28 +129,29 @@
by doing successive calls to VG_(describe_IP). */
typedef struct _InlIPCursor InlIPCursor;
-/* Puts into 'buf' info about the code address %eip: the address, function
+/* Returns info about the code address %eip: the address, function
name (if known) and filename/line number (if known), like this:
0x4001BF05: realloc (vg_replace_malloc.c:339)
- 'n_buf' gives length of 'buf'. Returns 'buf'.
-
eip can possibly corresponds to inlined function call(s).
To describe eip and the inlined function calls, the following must
be done:
InlIPCursor *iipc = VG_(new_IIPC)(eip);
do {
- VG_(describe_IP)(eip, buf, n_buf, iipc);
+ buf = VG_(describe_IP)(eip, iipc);
... use buf ...
} while (VG_(next_IIPC)(iipc));
VG_(delete_IIPC)(iipc);
To only describe eip, without the inlined calls at eip, give a NULL iipc:
- VG_(describe_IP)(eip, buf, n_buf, NULL);
+ buf = VG_(describe_IP)(eip, NULL);
+
+ Note, that the returned string is allocated in a static buffer local to
+ VG_(describe_IP). That buffer will be overwritten with every invocation.
+ Therefore, callers need to possibly stash away the string.
*/
-extern HChar* VG_(describe_IP)(Addr eip, HChar* buf, Int n_buf,
- InlIPCursor* iipc);
+extern const HChar* VG_(describe_IP)(Addr eip, const InlIPCursor* iipc);
/* Builds a IIPC (Inlined IP Cursor) to describe eip and all the inlined calls
at eip. Such a cursor must be deleted after use using VG_(delete_IIPC). */
Modified: trunk/massif/ms_main.c
==============================================================================
--- trunk/massif/ms_main.c (original)
+++ trunk/massif/ms_main.c Mon Nov 3 22:43:42 2014
@@ -2135,8 +2135,7 @@
// Used for printing function names. Is made static to keep it out
// of the stack frame -- this function is recursive. Obviously this
// now means its contents are trashed across the recursive call.
- static HChar ip_desc_array[BUF_LEN];
- const HChar* ip_desc = ip_desc_array;
+ const HChar* ip_desc;
switch (sxpt->tag) {
case SigSXPt:
@@ -2166,7 +2165,7 @@
}
// We need the -1 to get the line number right, But I'm not sure why.
- ip_desc = VG_(describe_IP)(sxpt->Sig.ip-1, ip_desc_array, BUF_LEN, NULL);
+ ip_desc = VG_(describe_IP)(sxpt->Sig.ip-1, NULL);
}
// Do the non-ip_desc part first...
@@ -2187,28 +2186,13 @@
}
}
}
- // Nb: We treat this specially (ie. we don't use FP) so that if the
- // ip_desc is too long (eg. due to a long C++ function name), it'll
- // get truncated, but the '\n' is still there so its a valid file.
- // (At one point we were truncating without adding the '\n', which
- // caused bug #155929.)
- //
- // Also, we account for the length of the address in ip_desc when
- // truncating. (The longest address we could have is 18 chars: "0x"
- // plus 16 address digits.) This ensures that the truncated function
- // name always has the same length, which makes truncation
- // deterministic and thus makes testing easier.
- tl_assert(j <= 18);
- // FIXME: this whole code block will go away, once VG_(describe_IP)
- // FIXME: has been fixed; I'm keeping it for now so testcases won't fail
- HChar FP_buf[BUF_LEN];
- VG_(snprintf)(FP_buf, BUF_LEN, "%s\n", ip_desc);
- FP_buf[BUF_LEN-18+j-5] = '.'; // "..." at the end make the
- FP_buf[BUF_LEN-18+j-4] = '.'; // truncation more obvious.
- FP_buf[BUF_LEN-18+j-3] = '.';
- FP_buf[BUF_LEN-18+j-2] = '\n'; // The last char is '\n'.
- FP_buf[BUF_LEN-18+j-1] = '\0'; // The string is terminated.
- VG_(fprintf)(fp, "%s", FP_buf);
+ // It used to be that ip_desc was truncated at the end.
+ // But there does not seem to be a good reason for that. Besides,
+ // the string was truncated at the right, which is less than ideal.
+ // Truncation at the beginning of the string would have been preferable.
+ // Think several nested namespaces in C++....
+ // Anyhow, we spit out the full-length string now.
+ VG_(fprintf)(fp, "%s\n", ip_desc);
// Indent.
tl_assert(depth+1 < depth_str_len-1); // -1 for end NUL char
@@ -2232,7 +2216,7 @@
if (InsigSXPt == child->tag)
n_insig_children_sxpts++;
- // Ok, print the child. NB: contents of ip_desc_array will be
+ // Ok, print the child. NB: contents of ip_desc will be
// trashed by this recursive call. Doesn't matter currently,
// but worth noting.
pp_snapshot_SXPt(fp, child, depth+1, depth_str, depth_str_len,
Modified: trunk/massif/tests/long-names.c
==============================================================================
--- trunk/massif/tests/long-names.c (original)
+++ trunk/massif/tests/long-names.c Mon Nov 3 22:43:42 2014
@@ -1,8 +1,8 @@
#include <stdio.h>
#include <stdlib.h>
-// This function name is long enough to get truncated. Nb: we need multiple
-// .exp.out* files because different length addresses can occur, which
-// result in a different number of chars from this name being truncated.
+// Long function name. Make sure it is not truncated.
+
+
#define A2500 \
abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghij\
abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghij\
Modified: trunk/massif/tests/long-names.post.exp
==============================================================================
--- trunk/massif/tests/long-names.post.exp (original)
+++ trunk/massif/tests/long-names.post.exp Mon Nov 3 22:43:42 2014
@@ -39,10 +39,10 @@
1 2,000 2,000 2,000 0 0
2 4,000 4,000 4,000 0 0
100.00% (4,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->100.00% (4,000B) 0x........: abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefgh
ijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefg
hijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabc...
+->100.00% (4,000B) 0x........: abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefgh
ijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefg
hijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghij (long-names.c:61)
->50.00% (2,000B) 0x........: main (long-names.c:68)
|
- ->50.00% (2,000B) 0x........: abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefg
hijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdef
ghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabc...
+ ->50.00% (2,000B) 0x........: abcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefg
hijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdef
ghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghijabcdefghijABCDEFGHIJabcdefghijABCDEFGHIJabcdefghij (long-names.c:62)
->50.00% (2,000B) 0x........: main (long-names.c:68)
--------------------------------------------------------------------------------
Modified: trunk/memcheck/tests/long_namespace_xml.cpp
==============================================================================
--- trunk/memcheck/tests/long_namespace_xml.cpp (original)
+++ trunk/memcheck/tests/long_namespace_xml.cpp Mon Nov 3 22:43:42 2014
@@ -1,5 +1,5 @@
-/* Check that very long function names are safely truncated in
+/* Check that very long function names are NOT truncated in
memcheck's XML output. */
Modified: trunk/memcheck/tests/long_namespace_xml.stderr.exp
==============================================================================
--- trunk/memcheck/tests/long_namespace_xml.stderr.exp (original)
+++ trunk/memcheck/tests/long_namespace_xml.stderr.exp Mon Nov 3 22:43:42 2014
@@ -37,7 +37,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopq
rstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqr
stuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopq
rstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqr
stuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrs
tuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrst
uvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstu
vwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz::ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRST
UVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTU
VWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV
WXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVW
XYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWX
YZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ::f()</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
@@ -64,7 +64,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopq
rstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqr
stuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopq
rstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqr
stuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrs
tuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrst
uvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstu
vwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz::ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRST
UVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTU
VWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV
WXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVW
XYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWX
YZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ::f()</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
|
|
From: Rhys K. <rhy...@gm...> - 2014-11-03 14:42:12
|
Hi list,
In the changeset from r14683, I'm fairly sure the HUGETLB option as a
shmflg to shmget() is a Linux 2.6+ only flag.
i.e. the changes to trunk/coregrind/m_syswrap/syswrap-darwin.c can be reversed.
The patch to the darwin file is currently causing compiler errors on
that platform.
On 2 November 2014 09:00, <sv...@va...> wrote:
> Author: philippe
> Date: Sat Nov 1 22:00:50 2014
> New Revision: 14683
>
> Log:
> fix 338995 shmat with hugepages (SHM_HUGETLB) fails with EINVAL
>
> Bug is not really fixed, instead the SHM_HUGETLB flag is ignored.
> Note that it is not straightforward to properly fix this,
> as this implies either to learn aspacemgr what huge pages are.
> Also, the trick used in the fix for 333051 cannot be used easily,
> because the SHM_HUGETLB flag is given in shmget, while the mmap
> is done in shmat.
>
> So, the easiest is to just ignore the SHM_HUGETLB flag.
>
> SHM_HUGETLB is supposed to only give a performance impact.
> Ignoring it should be benign.
> Theoretically, the caller might expect a sucessful shmget(SHM_HUGETLB)+shmat
> to give pages aligned on e.g. 1MB.
> In this case, bad luck, the program will misbehave under valgrind.
> To warn of this, a warning is given (once) when SHM_HUGETLB is seen.
>
> The map_unmap.c test has been restructured somewaht to allow
> TEST_SHM_HUGETLB to be tested independently (or not) of the TEST_MAP_HUGETLB.
>
> Note also that by default, testing MAP_HUGETLB and SHM_HUGETLB
> is disabled as usually, huge pages are not enabled.
>
>
>
> Modified:
> trunk/NEWS
> trunk/coregrind/m_syswrap/syswrap-darwin.c
> trunk/coregrind/m_syswrap/syswrap-linux.c
> trunk/include/vki/vki-linux.h
> trunk/none/tests/map_unmap.c
>
> Modified: trunk/NEWS
> ==============================================================================
> --- trunk/NEWS (original)
> +++ trunk/NEWS Sat Nov 1 22:00:50 2014
> @@ -31,6 +31,7 @@
> 335440 arm64: ld1 (single structure) is not implemented
> 335713 arm64: unhanded instruction: prfm (immediate)
> 338731 ppc: Fix testuite build for toolchains not supporting -maltivec
> +338995 shmat with hugepages (SHM_HUGETLB) fails with EINVAL
> 339020 ppc64: memcheck/tests/ppc64/power_ISA2_05 failing in nightly build
> 339156 gdbsrv not called for fatal signal
> 339442 Fix testsuite build failure on OS X 10.9
>
> Modified: trunk/coregrind/m_syswrap/syswrap-darwin.c
> ==============================================================================
> --- trunk/coregrind/m_syswrap/syswrap-darwin.c (original)
> +++ trunk/coregrind/m_syswrap/syswrap-darwin.c Sat Nov 1 22:00:50 2014
> @@ -2310,6 +2310,15 @@
> {
> PRINT("shmget ( %ld, %ld, %ld )",ARG1,ARG2,ARG3);
> PRE_REG_READ3(long, "shmget", vki_key_t, key, vki_size_t, size, int, shmflg);
> + if (ARG3 & VKI_SHM_HUGETLB) {
> + static Bool warning_given = False;
> + ARG3 &= ~VKI_SHM_HUGETLB;
> + if (!warning_given) {
> + warning_given = True;
> + VG_(umsg)(
> + "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
> + }
> + }
> }
>
> PRE(shm_open)
>
> Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
> ==============================================================================
> --- trunk/coregrind/m_syswrap/syswrap-linux.c (original)
> +++ trunk/coregrind/m_syswrap/syswrap-linux.c Sat Nov 1 22:00:50 2014
> @@ -3593,6 +3593,15 @@
> case VKI_SHMGET:
> PRE_REG_READ4(int, "ipc",
> vki_uint, call, int, first, int, second, int, third);
> + if (ARG4 & VKI_SHM_HUGETLB) {
> + static Bool warning_given = False;
> + ARG4 &= ~VKI_SHM_HUGETLB;
> + if (!warning_given) {
> + warning_given = True;
> + VG_(umsg)(
> + "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
> + }
> + }
> break;
> case VKI_SHMCTL: /* IPCOP_shmctl */
> PRE_REG_READ5(int, "ipc",
> @@ -3795,6 +3804,15 @@
> {
> PRINT("sys_shmget ( %ld, %ld, %ld )",ARG1,ARG2,ARG3);
> PRE_REG_READ3(long, "shmget", vki_key_t, key, vki_size_t, size, int, shmflg);
> + if (ARG3 & VKI_SHM_HUGETLB) {
> + static Bool warning_given = False;
> + ARG3 &= ~VKI_SHM_HUGETLB;
> + if (!warning_given) {
> + warning_given = True;
> + VG_(umsg)(
> + "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
> + }
> + }
> }
>
> PRE(wrap_sys_shmat)
>
> Modified: trunk/include/vki/vki-linux.h
> ==============================================================================
> --- trunk/include/vki/vki-linux.h (original)
> +++ trunk/include/vki/vki-linux.h Sat Nov 1 22:00:50 2014
> @@ -1160,6 +1160,9 @@
>
> #define VKI_IPC_64 0x0100 /* New version (support 32-bit UIDs, bigger
> message sizes, etc. */
> +// From /usr/include/bits/shm.h
> +# define VKI_SHM_HUGETLB 04000
> +
>
> //----------------------------------------------------------------------
> // From linux-2.6.8.1/include/linux/sem.h
>
> Modified: trunk/none/tests/map_unmap.c
> ==============================================================================
> --- trunk/none/tests/map_unmap.c (original)
> +++ trunk/none/tests/map_unmap.c Sat Nov 1 22:00:50 2014
> @@ -10,7 +10,7 @@
> echo 20 > /proc/sys/vm/nr_hugepages
> Once this is done, uncomment the below, and recompile.
> */
> -// #define TEST_MAP_HUGETLB 1
> +//#define TEST_MAP_HUGETLB 1
>
> /* Similarly, testing SHM_HUGETLB huge pages is disabled by default.
> To have shmget/shmat big pages working, do (as root)
> @@ -18,13 +18,12 @@
> where 500 is the groupid of the user that runs this test
> Once this is done, uncomment the below, and recompile.
> */
> -// #define TEST_SHM_HUGETLB 1
> +//#define TEST_SHM_HUGETLB 1
>
> -#ifdef TEST_MAP_HUGETLB
> -#include <sys/ipc.h>
> -#include <sys/shm.h>
> -#include <sys/stat.h>
> +// Size to use for huge pages
> +#define HUGESZ (4 * 1024 * 1024)
>
> +#ifdef TEST_MAP_HUGETLB
> /* Ensure this compiles on pre 2.6 systems, or on glibc missing MAP_HUGETLB */
> #ifndef MAP_HUGETLB
> /* The below works for me on an f12/x86 linux */
> @@ -34,6 +33,9 @@
> #endif /* TEST_MAP_HUGETLB */
>
> #ifdef TEST_SHM_HUGETLB
> +#include <sys/ipc.h>
> +#include <sys/shm.h>
> +#include <sys/stat.h>
> #ifndef SHM_HUGETLB
> #define SHM_HUGETLB 04000
> #endif
> @@ -114,7 +116,6 @@
> }
>
> #ifdef TEST_MAP_HUGETLB
> -#define HUGESZ (4 * 1024 * 1024)
> {
> void *expect3;
> expect3 = domap(HUGESZ, MAP_HUGETLB);
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
|
|
From: <sv...@va...> - 2014-11-03 09:53:10
|
Author: sewardj
Date: Mon Nov 3 09:52:57 2014
New Revision: 14684
Log:
Add tests for all SIMD FP instructions, except int<->fp conversions.
Modified:
trunk/none/tests/arm64/fp_and_simd.c
trunk/none/tests/arm64/fp_and_simd.stdout.exp
Modified: trunk/none/tests/arm64/fp_and_simd.c
==============================================================================
--- trunk/none/tests/arm64/fp_and_simd.c (original)
+++ trunk/none/tests/arm64/fp_and_simd.c Mon Nov 3 09:52:57 2014
@@ -11,6 +11,9 @@
typedef signed int Int;
typedef unsigned char UChar;
typedef unsigned long long int ULong;
+typedef signed long long int Long;
+typedef double Double;
+typedef float Float;
typedef unsigned char Bool;
#define False ((Bool)0)
@@ -28,8 +31,8 @@
UShort u16[8];
UInt u32[4];
ULong u64[2];
- float f32[4];
- double f64[2];
+ Float f32[4];
+ Double f64[2];
};
typedef union _V128 V128;
@@ -78,6 +81,17 @@
printf("%02x", (Int)v->u8[i]);
}
+static void showBlock ( const char* msg, V128* block, Int nBlock )
+{
+ Int i;
+ printf("%s\n", msg);
+ for (i = 0; i < nBlock; i++) {
+ printf(" ");
+ showV128(&block[i]);
+ printf("\n");
+ }
+}
+
__attribute__((unused))
static void* memalign16(size_t szB)
{
@@ -88,11 +102,146 @@
return x;
}
+static ULong dup4x16 ( UInt x )
+{
+ ULong r = x & 0xF;
+ r |= (r << 4);
+ r |= (r << 8);
+ r |= (r << 16);
+ r |= (r << 32);
+ return r;
+}
+
+// Generate a random double-precision number. About 1 time in 2,
+// instead return a special value (+/- Inf, +/-Nan, denorm).
+// This ensures that many of the groups of 4 calls here will
+// return a special value.
+
+static Double special_values[10];
+static Bool special_values_initted = False;
+
+static __attribute__((noinline))
+Double negate ( Double d ) { return -d; }
+static __attribute__((noinline))
+Double divf64 ( Double x, Double y ) { return x/y; }
+
+static __attribute__((noinline))
+Double plusZero ( void ) { return 0.0; }
+static __attribute__((noinline))
+Double minusZero ( void ) { return negate(plusZero()); }
+
+static __attribute__((noinline))
+Double plusOne ( void ) { return 1.0; }
+static __attribute__((noinline))
+Double minusOne ( void ) { return negate(plusOne()); }
+
+static __attribute__((noinline))
+Double plusInf ( void ) { return 1.0 / 0.0; }
+static __attribute__((noinline))
+Double minusInf ( void ) { return negate(plusInf()); }
+
+static __attribute__((noinline))
+Double plusNaN ( void ) { return divf64(plusInf(),plusInf()); }
+static __attribute__((noinline))
+Double minusNaN ( void ) { return negate(plusNaN()); }
+
+static __attribute__((noinline))
+Double plusDenorm ( void ) { return 1.23e-315 / 1e3; }
+static __attribute__((noinline))
+Double minusDenorm ( void ) { return negate(plusDenorm()); }
+
+
+static void ensure_special_values_initted ( void )
+{
+ if (special_values_initted) return;
+ special_values[0] = plusZero();
+ special_values[1] = minusZero();
+ special_values[2] = plusOne();
+ special_values[3] = minusOne();
+ special_values[4] = plusInf();
+ special_values[5] = minusInf();
+ special_values[6] = plusNaN();
+ special_values[7] = minusNaN();
+ special_values[8] = plusDenorm();
+ special_values[9] = minusDenorm();
+ special_values_initted = True;
+ int i;
+ printf("\n");
+ for (i = 0; i < 10; i++) {
+ printf("special value %d = %e\n", i, special_values[i]);
+ }
+ printf("\n");
+}
+
+static Double randDouble ( void )
+{
+ ensure_special_values_initted();
+ UChar c = randUChar();
+ if (c >= 128) {
+ // return a normal number most of the time.
+ // 0 .. 2^63-1
+ ULong u64 = randULong(TyDF);
+ // -2^62 .. 2^62-1
+ Long s64 = (Long)u64;
+ // -2^55 .. 2^55-1
+ s64 >>= (62-55);
+ // and now as a float
+ return (Double)s64;
+ }
+ c = randUChar() % 10;
+ return special_values[c];
+}
+
+static Float randFloat ( void )
+{
+ ensure_special_values_initted();
+ UChar c = randUChar();
+ if (c >= 128) {
+ // return a normal number most of the time.
+ // 0 .. 2^63-1
+ ULong u64 = randULong(TyDF);
+ // -2^62 .. 2^62-1
+ Long s64 = (Long)u64;
+ // -2^25 .. 2^25-1
+ s64 >>= (62-25);
+ // and now as a float
+ return (Float)s64;
+ }
+ c = randUChar() % 10;
+ return special_values[c];
+}
+
+void randBlock_Doubles ( V128* block, Int nBlock )
+{
+ Int i;
+ for (i = 0; i < nBlock; i++) {
+ block[i].f64[0] = randDouble();
+ block[i].f64[1] = randDouble();
+ }
+}
+
+void randBlock_Floats ( V128* block, Int nBlock )
+{
+ Int i;
+ for (i = 0; i < nBlock; i++) {
+ block[i].f32[0] = randFloat();
+ block[i].f32[1] = randFloat();
+ block[i].f32[2] = randFloat();
+ block[i].f32[3] = randFloat();
+ }
+}
+
/* ---------------------------------------------------------------- */
-/* -- Test macros -- */
+/* -- Parameterisable test macros -- */
/* ---------------------------------------------------------------- */
+#define DO50(_action) \
+ do { \
+ Int _qq; for (_qq = 0; _qq < 50; _qq++) { _action ; } \
+ } while (0)
+
+
/* Note this also sets the destination register to a known value (0x55..55)
since it can sometimes be an input to the instruction too. */
#define GEN_UNARY_TEST(INSN,SUFFIXD,SUFFIXN) \
@@ -292,8 +441,58 @@
}
+/* Generate a test that involves four vector regs,
+ with no bias as towards which is input or output. It's also OK
+ to use v16, v17, v18 as scratch. */
+#define GEN_FOURVEC_TEST(TESTNAME,INSN,VECREG1NO,VECREG2NO, \
+ VECREG3NO,VECREG4NO) \
+ __attribute__((noinline)) \
+ static void test_##TESTNAME ( LaneTy ty ) { \
+ Int i; \
+ for (i = 0; i < ITERS; i++) { \
+ V128 block[8+1]; \
+ memset(block, 0x55, sizeof(block)); \
+ randV128(&block[0], ty); \
+ randV128(&block[1], ty); \
+ randV128(&block[2], ty); \
+ randV128(&block[3], ty); \
+ randV128(&block[4], ty); \
+ randV128(&block[5], ty); \
+ randV128(&block[6], ty); \
+ randV128(&block[7], ty); \
+ __asm__ __volatile__( \
+ "mov x30, #0 ; msr fpsr, x30 ; " \
+ "ldr q"#VECREG1NO", [%0, #0] ; " \
+ "ldr q"#VECREG2NO", [%0, #16] ; " \
+ "ldr q"#VECREG3NO", [%0, #32] ; " \
+ "ldr q"#VECREG4NO", [%0, #48] ; " \
+ INSN " ; " \
+ "str q"#VECREG1NO", [%0, #64] ; " \
+ "str q"#VECREG2NO", [%0, #80] ; " \
+ "str q"#VECREG3NO", [%0, #96] ; " \
+ "str q"#VECREG4NO", [%0, #112] ; " \
+ "mrs x30, fpsr ; str x30, [%0, #128] " \
+ : : "r"(&block[0]) \
+ : "memory", "v"#VECREG1NO, "v"#VECREG2NO, \
+ "v"#VECREG3NO, "v"#VECREG4NO, \
+ "v16", "v17", "v18", "x30" \
+ ); \
+ printf(INSN " "); \
+ UInt fpsr = 0xFFFFFF60 & block[8].u32[0]; \
+ showV128(&block[0]); printf(" "); \
+ showV128(&block[1]); printf(" "); \
+ showV128(&block[2]); printf(" "); \
+ showV128(&block[3]); printf(" "); \
+ showV128(&block[4]); printf(" "); \
+ showV128(&block[5]); printf(" "); \
+ showV128(&block[6]); printf(" "); \
+ showV128(&block[7]); printf(" fpsr=%08x\n", fpsr); \
+ } \
+ }
+
+
/* ---------------------------------------------------------------- */
-/* -- Test functions -- */
+/* -- Test functions and non-parameterisable test macros -- */
/* ---------------------------------------------------------------- */
void test_UMINV ( void )
@@ -891,6 +1090,991 @@
}
+//======== FCCMP_D ========//
+
+#define GEN_test_FCCMP_D_D_0xF_EQ \
+ __attribute__((noinline)) static void test_FCCMP_D_D_0xF_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_D_D_0xF_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp d29, d11, #0xf, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_D_D_0xF_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_D_D_0xF_NE \
+ __attribute__((noinline)) static void test_FCCMP_D_D_0xF_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_D_D_0xF_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp d29, d11, #0xf, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_D_D_0xF_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_D_D_0x0_EQ \
+ __attribute__((noinline)) static void test_FCCMP_D_D_0x0_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_D_D_0x0_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp d29, d11, #0x0, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_D_D_0x0_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_D_D_0x0_NE \
+ __attribute__((noinline)) static void test_FCCMP_D_D_0x0_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_D_D_0x0_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp d29, d11, #0x0, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_D_D_0x0_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCCMP_S ========//
+
+#define GEN_test_FCCMP_S_S_0xF_EQ \
+ __attribute__((noinline)) static void test_FCCMP_S_S_0xF_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0xF_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp s29, s11, #0xf, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_S_S_0xF_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_S_S_0xF_NE \
+ __attribute__((noinline)) static void test_FCCMP_S_S_0xF_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0xF_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp s29, s11, #0xf, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_S_S_0xF_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_S_S_0x0_EQ \
+ __attribute__((noinline)) static void test_FCCMP_S_S_0x0_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0x0_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp s29, s11, #0x0, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_S_S_0x0_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMP_S_S_0x0_NE \
+ __attribute__((noinline)) static void test_FCCMP_S_S_0x0_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0x0_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmp s29, s11, #0x0, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMP_S_S_0x0_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCCMPE_D ========//
+
+#define GEN_test_FCCMPE_D_D_0xF_EQ \
+ __attribute__((noinline)) static void test_FCCMPE_D_D_0xF_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMPE_D_D_0xF_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe d29, d11, #0xf, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_D_D_0xF_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_D_D_0xF_NE \
+ __attribute__((noinline)) static void test_FCCMPE_D_D_0xF_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMPE_D_D_0xF_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe d29, d11, #0xf, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_D_D_0xF_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_D_D_0x0_EQ \
+ __attribute__((noinline)) static void test_FCCMPE_D_D_0x0_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMPE_D_D_0x0_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe d29, d11, #0x0, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_D_D_0x0_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_D_D_0x0_NE \
+ __attribute__((noinline)) static void test_FCCMPE_D_D_0x0_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMPE_D_D_0x0_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe d29, d11, #0x0, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_D_D_0x0_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCCMPE_S ========//
+
+#define GEN_test_FCCMPE_S_S_0xF_EQ \
+ __attribute__((noinline)) static void test_FCCMPE_S_S_0xF_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0xF_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe s29, s11, #0xf, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_S_S_0xF_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_S_S_0xF_NE \
+ __attribute__((noinline)) static void test_FCCMPE_S_S_0xF_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMPE_S_S_0xF_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe s29, s11, #0xf, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_S_S_0xF_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_S_S_0x0_EQ \
+ __attribute__((noinline)) static void test_FCCMPE_S_S_0x0_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0x0_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe s29, s11, #0x0, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_S_S_0x0_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+#define GEN_test_FCCMPE_S_S_0x0_NE \
+ __attribute__((noinline)) static void test_FCCMPE_S_S_0x0_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCCMP_S_S_0x0_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fccmpe s29, s11, #0x0, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCCMPE_S_S_0x0_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMEQ_D_D ========//
+
+#define GEN_test_FCMEQ_D_D \
+ __attribute__((noinline)) static void test_FCMEQ_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMEQ_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmeq d29, d11, d9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMEQ_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMEQ_S_S ========//
+
+#define GEN_test_FCMEQ_S_S \
+ __attribute__((noinline)) static void test_FCMEQ_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMEQ_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmeq s29, s11, s9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMEQ_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGE_D_D ========//
+
+#define GEN_test_FCMGE_D_D \
+ __attribute__((noinline)) static void test_FCMGE_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGE_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmge d29, d11, d9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGE_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGE_S_S ========//
+
+#define GEN_test_FCMGE_S_S \
+ __attribute__((noinline)) static void test_FCMGE_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGE_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmge s29, s11, s9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGE_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGT_D_D ========//
+
+#define GEN_test_FCMGT_D_D \
+ __attribute__((noinline)) static void test_FCMGT_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGT_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmgt d29, d11, d9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGT_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGT_S_S ========//
+
+#define GEN_test_FCMGT_S_S \
+ __attribute__((noinline)) static void test_FCMGT_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGT_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmgt s29, s11, s9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGT_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FACGT_D_D ========//
+
+#define GEN_test_FACGT_D_D \
+ __attribute__((noinline)) static void test_FACGT_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FACGT_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "facgt d29, d11, d9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FACGT_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FACGT_S_S ========//
+
+#define GEN_test_FACGT_S_S \
+ __attribute__((noinline)) static void test_FACGT_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FACGT_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "facgt s29, s11, s9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FACGT_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FACGE_D_D ========//
+
+#define GEN_test_FACGE_D_D \
+ __attribute__((noinline)) static void test_FACGE_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FACGE_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "facge d29, d11, d9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FACGE_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FACGE_S_S ========//
+
+#define GEN_test_FACGE_S_S \
+ __attribute__((noinline)) static void test_FACGE_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FACGE_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "facge s29, s11, s9; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FACGE_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMEQ_Z_D ========//
+
+#define GEN_test_FCMEQ_Z_D \
+ __attribute__((noinline)) static void test_FCMEQ_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMEQ_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmeq d29, d11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMEQ_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMEQ_Z_S ========//
+
+#define GEN_test_FCMEQ_Z_S \
+ __attribute__((noinline)) static void test_FCMEQ_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMEQ_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmeq s29, s11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMEQ_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGE_Z_D ========//
+
+#define GEN_test_FCMGE_Z_D \
+ __attribute__((noinline)) static void test_FCMGE_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGE_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmge d29, d11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGE_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGE_Z_S ========//
+
+#define GEN_test_FCMGE_Z_S \
+ __attribute__((noinline)) static void test_FCMGE_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGE_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmge s29, s11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGE_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGT_Z_D ========//
+
+#define GEN_test_FCMGT_Z_D \
+ __attribute__((noinline)) static void test_FCMGT_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGT_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmgt d29, d11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGT_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMGT_Z_S ========//
+
+#define GEN_test_FCMGT_Z_S \
+ __attribute__((noinline)) static void test_FCMGT_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMGT_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmgt s29, s11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMGT_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMLE_Z_D ========//
+
+#define GEN_test_FCMLE_Z_D \
+ __attribute__((noinline)) static void test_FCMLE_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMLE_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmle d29, d11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMLE_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMLE_Z_S ========//
+
+#define GEN_test_FCMLE_Z_S \
+ __attribute__((noinline)) static void test_FCMLE_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMLE_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmle s29, s11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMLE_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMLT_Z_D ========//
+
+#define GEN_test_FCMLT_Z_D \
+ __attribute__((noinline)) static void test_FCMLT_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMLT_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmlt d29, d11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMLT_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMLT_Z_S ========//
+
+#define GEN_test_FCMLT_Z_S \
+ __attribute__((noinline)) static void test_FCMLT_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMLT_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmlt s29, s11, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMLT_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMP_D_D ========//
+
+#define GEN_test_FCMP_D_D \
+ __attribute__((noinline)) static void test_FCMP_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMP_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmp d29, d11; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMP_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMP_S_S ========//
+
+#define GEN_test_FCMP_S_S \
+ __attribute__((noinline)) static void test_FCMP_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMP_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmp s29, s11; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMP_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMPE_D_D ========//
+
+#define GEN_test_FCMPE_D_D \
+ __attribute__((noinline)) static void test_FCMPE_D_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMPE_D_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmpe d29, d11; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMPE_D_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMPE_S_S ========//
+
+#define GEN_test_FCMPE_S_S \
+ __attribute__((noinline)) static void test_FCMPE_S_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMPE_S_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmpe s29, s11; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMPE_S_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMP_Z_D ========//
+
+#define GEN_test_FCMP_Z_D \
+ __attribute__((noinline)) static void test_FCMP_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMP_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmp d29, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMP_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMP_Z_S ========//
+
+#define GEN_test_FCMP_Z_S \
+ __attribute__((noinline)) static void test_FCMP_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMP_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmp s29, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMP_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMPE_Z_D ========//
+
+#define GEN_test_FCMPE_Z_D \
+ __attribute__((noinline)) static void test_FCMPE_Z_D ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMPE_Z_D before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmpe d29, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMPE_Z_D after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCMPE_Z_S ========//
+
+#define GEN_test_FCMPE_Z_S \
+ __attribute__((noinline)) static void test_FCMPE_Z_S ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Floats(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCMPE_Z_S before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcmpe s29, #0; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCMPE_Z_S after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCSEL_D_D_D_EQ ========//
+
+#define GEN_test_FCSEL_D_D_D_EQ \
+ __attribute__((noinline)) static void test_FCSEL_D_D_D_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCSEL_D_D_D_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcsel d29, d11, d9, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCSEL_D_D_D_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCSEL_D_D_D_NE ========//
+
+#define GEN_test_FCSEL_D_D_D_NE \
+ __attribute__((noinline)) static void test_FCSEL_D_D_D_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCSEL_D_D_D_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcsel d29, d11, d9, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCSEL_D_D_D_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCSEL_S_S_S_EQ ========//
+
+#define GEN_test_FCSEL_S_S_S_EQ \
+ __attribute__((noinline)) static void test_FCSEL_S_S_S_EQ ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCSEL_S_S_S_EQ before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcsel s29, s11, s9, eq; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCSEL_S_S_S_EQ after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+//======== FCSEL_S_S_S_NE ========//
+
+#define GEN_test_FCSEL_S_S_S_NE \
+ __attribute__((noinline)) static void test_FCSEL_S_S_S_NE ( void ) \
+ { \
+ V128 block[4]; \
+ randBlock_Doubles(&block[0], 3); \
+ block[3].u64[0] = dup4x16(0x5); block[3].u64[1] = dup4x16(0xA); \
+ showBlock("FCSEL_S_S_S_NE before", &block[0], 4); \
+ __asm__ __volatile__( \
+ "ldr x9, [%0, 48]; msr nzcv, x9; " \
+ "ldr q29, [%0, #0]; ldr q11, [%0, #16]; ldr q9, [%0, #32]; " \
+ "fcsel s29, s11, s9, ne; " \
+ "mrs x9, nzcv; str x9, [%0, 48]; " \
+ "str q29, [%0, #0]; str q11, [%0, #16]; str q9, [%0, #32]; " \
+ ::"r"(&block[0]) : "x9","cc","memory","v9","v11","v29" \
+ ); \
+ showBlock("FCSEL_S_S_S_NE after", &block[0], 4); \
+ printf("\n"); \
+ }
+
+
/* ---------------------------------------------------------------- */
/* -- Tests, in the same order that they appear in main() -- */
/* ---------------------------------------------------------------- */
@@ -939,49 +2123,90 @@
GEN_THREEVEC_TEST(faddp_4s_4s_4s, "faddp v2.4s, v23.4s, v11.4s", 2, 23, 11)
GEN_THREEVEC_TEST(faddp_2s_2s_2s, "faddp v2.2s, v23.2s, v11.2s", 2, 23, 11)
-// fccmp d,s
-// fccmpe d,s
-
-// fcmeq d,s
-// fcmge d,s
-// fcmgt d,s
-// facgt d,s (floating abs compare GE)
-// facge d,s (floating abs compare GE)
-
-GEN_BINARY_TEST(fcmeq, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmeq, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmeq, 2s, 2s, 2s)
-GEN_BINARY_TEST(fcmge, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmge, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmge, 2s, 2s, 2s)
-GEN_BINARY_TEST(fcmgt, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmgt, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmgt, 2s, 2s, 2s)
-GEN_BINARY_TEST(facge, 2d, 2d, 2d)
-GEN_BINARY_TEST(facge, 4s, 4s, 4s)
-GEN_BINARY_TEST(facge, 2s, 2s, 2s)
-GEN_BINARY_TEST(facgt, 2d, 2d, 2d)
-GEN_BINARY_TEST(facgt, 4s, 4s, 4s)
-GEN_BINARY_TEST(facgt, 2s, 2s, 2s)
-
-// fcmeq_z d,s
-// fcmge_z d,s
-// fcmgt_z d,s
-// fcmle_z d,s
-// fcmlt_z d,s
-
-// fcmeq_z 2d,4s,2s
-// fcmge_z 2d,4s,2s
-// fcmgt_z 2d,4s,2s
-// fcmle_z 2d,4s,2s
-// fcmlt_z 2d,4s,2s
-
-// fcmp_z d,s
-// fcmpe_z d,s
-// fcmp d,s (floating point quiet, set flags)
-// fcmpe d,s (floating point signaling, set flags)
-
-// fcsel d,s (fp cond select)
+GEN_test_FCCMP_D_D_0xF_EQ
+GEN_test_FCCMP_D_D_0xF_NE
+GEN_test_FCCMP_D_D_0x0_EQ
+GEN_test_FCCMP_D_D_0x0_NE
+GEN_test_FCCMP_S_S_0xF_EQ
+GEN_test_FCCMP_S_S_0xF_NE
+GEN_test_FCCMP_S_S_0x0_EQ
+GEN_test_FCCMP_S_S_0x0_NE
+GEN_test_FCCMPE_D_D_0xF_EQ
+GEN_test_FCCMPE_D_D_0xF_NE
+GEN_test_FCCMPE_D_D_0x0_EQ
+GEN_test_FCCMPE_D_D_0x0_NE
+GEN_test_FCCMPE_S_S_0xF_EQ
+GEN_test_FCCMPE_S_S_0xF_NE
+GEN_test_FCCMPE_S_S_0x0_EQ
+GEN_test_FCCMPE_S_S_0x0_NE
+
+GEN_test_FCMEQ_D_D
+GEN_test_FCMEQ_S_S
+GEN_test_FCMGE_D_D
+GEN_test_FCMGE_S_S
+GEN_test_FCMGT_D_D
+GEN_test_FCMGT_S_S
+GEN_test_FACGT_D_D
+GEN_test_FACGT_S_S
+GEN_test_FACGE_D_D
+GEN_test_FACGE_S_S
+
+GEN_THREEVEC_TEST(fcmeq_2d_2d_2d, "fcmeq v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmeq_4s_4s_4s, "fcmeq v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmeq_2s_2s_2s, "fcmeq v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmge_2d_2d_2d, "fcmge v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmge_4s_4s_4s, "fcmge v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmge_2s_2s_2s, "fcmge v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmgt_2d_2d_2d, "fcmgt v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmgt_4s_4s_4s, "fcmgt v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fcmgt_2s_2s_2s, "fcmgt v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(facge_2d_2d_2d, "facge v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(facge_4s_4s_4s, "facge v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(facge_2s_2s_2s, "facge v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(facgt_2d_2d_2d, "facgt v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(facgt_4s_4s_4s, "facgt v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(facgt_2s_2s_2s, "facgt v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+GEN_test_FCMEQ_Z_D
+GEN_test_FCMEQ_Z_S
+GEN_test_FCMGE_Z_D
+GEN_test_FCMGE_Z_S
+GEN_test_FCMGT_Z_D
+GEN_test_FCMGT_Z_S
+GEN_test_FCMLE_Z_D
+GEN_test_FCMLE_Z_S
+GEN_test_FCMLT_Z_D
+GEN_test_FCMLT_Z_S
+
+GEN_TWOVEC_TEST(fcmeq_z_2d_2d, "fcmeq v2.2d, v23.2d, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmeq_z_4s_4s, "fcmeq v2.4s, v23.4s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmeq_z_2s_2s, "fcmeq v2.2s, v23.2s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmge_z_2d_2d, "fcmge v2.2d, v23.2d, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmge_z_4s_4s, "fcmge v2.4s, v23.4s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmge_z_2s_2s, "fcmge v2.2s, v23.2s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmgt_z_2d_2d, "fcmgt v2.2d, v23.2d, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmgt_z_4s_4s, "fcmgt v2.4s, v23.4s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmgt_z_2s_2s, "fcmgt v2.2s, v23.2s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmle_z_2d_2d, "fcmle v2.2d, v23.2d, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmle_z_4s_4s, "fcmle v2.4s, v23.4s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmle_z_2s_2s, "fcmle v2.2s, v23.2s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmlt_z_2d_2d, "fcmlt v2.2d, v23.2d, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmlt_z_4s_4s, "fcmlt v2.4s, v23.4s, #0", 2, 23)
+GEN_TWOVEC_TEST(fcmlt_z_2s_2s, "fcmlt v2.2s, v23.2s, #0", 2, 23)
+
+GEN_test_FCMP_Z_D
+GEN_test_FCMP_Z_S
+GEN_test_FCMPE_Z_D
+GEN_test_FCMPE_Z_S
+GEN_test_FCMP_D_D
+GEN_test_FCMP_S_S
+GEN_test_FCMPE_D_D
+GEN_test_FCMPE_S_S
+
+GEN_test_FCSEL_D_D_D_EQ
+GEN_test_FCSEL_D_D_D_NE
+GEN_test_FCSEL_S_S_S_EQ
+GEN_test_FCSEL_S_S_S_NE
GEN_THREEVEC_TEST(fdiv_d_d_d, "fdiv d2, d11, d29", 2, 11, 29)
GEN_THREEVEC_TEST(fdiv_s_s_s, "fdiv s2, s11, s29", 2, 11, 29)
@@ -989,52 +2214,85 @@
GEN_BINARY_TEST(fdiv, 4s, 4s, 4s)
GEN_BINARY_TEST(fdiv, 2s, 2s, 2s)
-// fmadd d,s
-// fnmadd d,s
-// fmsub d,s
-// fnmsub d,s
+GEN_FOURVEC_TEST(fmadd_d_d_d_d, "fmadd d2, d11, d29, d3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fmadd_s_s_s_s, "fmadd s2, s11, s29, s3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fnmadd_d_d_d_d, "fnmadd d2, d11, d29, d3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fnmadd_s_s_s_s, "fnmadd s2, s11, s29, s3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fmsub_d_d_d_d, "fmsub d2, d11, d29, d3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fmsub_s_s_s_s, "fmsub s2, s11, s29, s3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fnmsub_d_d_d_d, "fnmsub d2, d11, d29, d3", 2, 11, 29, 3)
+GEN_FOURVEC_TEST(fnmsub_s_s_s_s, "fnmsub s2, s11, s29, s3", 2, 11, 29, 3)
GEN_THREEVEC_TEST(fnmul_d_d_d, "fnmul d2, d11, d29", 2, 11, 29)
GEN_THREEVEC_TEST(fnmul_s_s_s, "fnmul s2, s11, s29", 2, 11, 29)
-// fmax d,s
-// fmin d,s
-// fmaxnm d,s ("max number")
-// fminnm d,s
-
-// fmax 2d,4s,2s
-// fmin 2d,4s,2s
-// fmaxnm 2d,4s,2s
-// fminnm 2d,4s,2s
-
-// fmaxnmp d_2d,s_2s ("max number pairwise")
-// fminnmp d_2d,s_2s
-
-// fmaxnmp 2d,4s,2s
-// fminnmp 2d,4s,2s
-
-// fmaxnmv s_4s (maxnum across vector)
-// fminnmv s_4s
-
-// fmaxp d_2d,s_2s (max of a pair)
-// fminp d_2d,s_2s (max of a pair)
-
-// fmaxp 2d,4s,2s (max pairwise)
-// fminp 2d,4s,2s
-
-// fmaxv s_4s (max across vector)
-// fminv s_4s
-
-// FIXME these need to be THREEVEC
-GEN_BINARY_TEST(fmla, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmla, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmla, 2s, 2s, 2s)
-GEN_BINARY_TEST(fmls, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmls, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmls, 2s, 2s, 2s)
-
-// fmla d_d_d[],s_s_s[] (by element)
-// fmls d_d_d[],s_s_s[] (by element)
+GEN_THREEVEC_TEST(fmax_d_d_d, "fmax d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmax_s_s_s, "fmax s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmin_d_d_d, "fmin d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmin_s_s_s, "fmin s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmaxnm_d_d_d, "fmaxnm d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmaxnm_s_s_s, "fmaxnm s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fminnm_d_d_d, "fminnm d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fminnm_s_s_s, "fminnm s2, s11, s29", 2, 11, 29)
+
+GEN_THREEVEC_TEST(fmax_2d_2d_2d, "fmax v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmax_4s_4s_4s, "fmax v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmax_2s_2s_2s, "fmax v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmin_2d_2d_2d, "fmin v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmin_4s_4s_4s, "fmin v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmin_2s_2s_2s, "fmin v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxnm_2d_2d_2d, "fmaxnm v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxnm_4s_4s_4s, "fmaxnm v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxnm_2s_2s_2s, "fmaxnm v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnm_2d_2d_2d, "fminnm v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnm_4s_4s_4s, "fminnm v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnm_2s_2s_2s, "fminnm v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+GEN_TWOVEC_TEST(fmaxnmp_d_2d, "fmaxnmp d2, v23.2d", 2, 23)
+GEN_TWOVEC_TEST(fmaxnmp_s_2s, "fmaxnmp s2, v23.2s", 2, 23)
+GEN_TWOVEC_TEST(fminnmp_d_2d, "fminnmp d2, v23.2d", 2, 23)
+GEN_TWOVEC_TEST(fminnmp_s_2s, "fminnmp s2, v23.2s", 2, 23)
+
+GEN_THREEVEC_TEST(fmaxnmp_2d_2d_2d, "fmaxnmp v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxnmp_4s_4s_4s, "fmaxnmp v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxnmp_2s_2s_2s, "fmaxnmp v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnmp_2d_2d_2d, "fminnmp v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnmp_4s_4s_4s, "fminnmp v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminnmp_2s_2s_2s, "fminnmp v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+GEN_TWOVEC_TEST(fmaxnmv_s_4s, "fmaxnmv s2, v23.4s", 2, 23)
+GEN_TWOVEC_TEST(fminnmv_s_4s, "fminnmv s2, v23.4s", 2, 23)
+
+GEN_TWOVEC_TEST(fmaxp_d_2d, "fmaxp d2, v23.2d", 2, 23)
+GEN_TWOVEC_TEST(fmaxp_s_2s, "fmaxp s2, v23.2s", 2, 23)
+GEN_TWOVEC_TEST(fminp_d_2d, "fminp d2, v23.2d", 2, 23)
+GEN_TWOVEC_TEST(fminp_s_2s, "fminp s2, v23.2s", 2, 23)
+
+GEN_THREEVEC_TEST(fmaxp_2d_2d_2d, "fmaxp v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxp_4s_4s_4s, "fmaxp v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmaxp_2s_2s_2s, "fmaxp v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminp_2d_2d_2d, "fminp v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fminp_4s_4s_4s, "fminp v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fminp_2s_2s_2s, "fminp v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+GEN_TWOVEC_TEST(fmaxv_s_4s, "fmaxv s2, v23.4s", 2, 23)
+GEN_TWOVEC_TEST(fminv_s_4s, "fminv s2, v23.4s", 2, 23)
+
+GEN_THREEVEC_TEST(fmla_2d_2d_2d, "fmla v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmla_4s_4s_4s, "fmla v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmla_2s_2s_2s, "fmla v2.2s, v23.2s, v11.2s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmls_2d_2d_2d, "fmls v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(fmls_4s_4s_4s, "fmls v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(fmls_2s_2s_2s, "fmls v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+GEN_THREEVEC_TEST(fmla_d_d_d0, "fmla d2, d11, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_d_d_d1, "fmla d2, d11, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_s_s_s0, "fmla s2, s11, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_s_s_s3, "fmla s2, s11, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_d_d_d0, "fmls d2, d11, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_d_d_d1, "fmls d2, d11, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_s_s_s0, "fmls s2, s11, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_s_s_s3, "fmls s2, s11, v29.s[3]", 2, 11, 29)
GEN_THREEVEC_TEST(fmla_2d_2d_d0, "fmla v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
GEN_THREEVEC_TEST(fmla_2d_2d_d1, "fmla v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
@@ -1078,7 +2336,10 @@
GEN_TWOVEC_TEST(fmov_s_imm_02, "fmov s22, #-4.0", 22, 23)
GEN_TWOVEC_TEST(fmov_s_imm_03, "fmov s22, #-1.0", 22, 23)
-// fmul d_d_d[],s_s_s[]
+GEN_THREEVEC_TEST(fmul_d_d_d0, "fmul d2, d11, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_d_d_d1, "fmul d2, d11, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_s_s_s0, "fmul s2, s11, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_s_s_s3, "fmul s2, s11, v29.s[3]", 2, 11, 29)
GEN_THREEVEC_TEST(fmul_2d_2d_d0, "fmul v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
GEN_THREEVEC_TEST(fmul_2d_2d_d1, "fmul v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
@@ -1087,47 +2348,92 @@
GEN_THREEVEC_TEST(fmul_2s_2s_s0, "fmul v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
GEN_THREEVEC_TEST(fmul_2s_2s_s3, "fmul v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_d_d_d, "fmul d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_s_s_s, "fmul s2, s11, s29", 2, 11, 29)
-GEN_BINARY_TEST(fmul, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmul, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmul, 2s, 2s, 2s)
-
-// fmulx d_d_d[],s_s_s[]
-// fmulx 2d_2d_d[],4s_4s_s[],2s_2s_s[]
-
-// fmulx d,s
-// fmulx 2d,4s,2s
-
-// frecpe d,s (recip estimate)
-// frecpe 2d,4s,2s
-
-// frecps d,s (recip step)
-// frecps 2d,4s,2s
-
-// frecpx d,s (recip exponent)
-
-// frinta d,s
-// frinti d,s
-// frintm d,s
-// frintn d,s
-// frintp d,s
-// frintx d,s
-// frintz d,s
-
-// frinta 2d,4s,2s (round to integral, nearest away)
-// frinti 2d,4s,2s (round to integral, per FPCR)
-// frintm 2d,4s,2s (round to integral, minus inf)
-// frintn 2d,4s,2s (round to integral, nearest, to even)
-// frintp 2d,4s,2s (round to integral, plus inf)
-// frintx 2d,4s,2s (round to integral exact, per FPCR)
-// frintz 2d,4s,2s (round to integral, zero)
-
-// frsqrte d,s (est)
-// frsqrte 2d,4s,2s
-
-// frsqrts d,s (step)
-// frsqrts 2d,4s,2s
+GEN_THREEVEC_TEST(fmul_d_d_d, "fmul d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_s_s_s, "fmul s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_2d_2d_2d, "fmul v2.2d, v11.2d, v29.2d", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_4s_4s_4s, "fmul v2.4s, v11.4s, v29.4s", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_2s_2s_2s, "fmul v2.2s, v11.2s, v29.2s", 2, 11, 29)
+
+GEN_THREEVEC_TEST(fmulx_d_d_d0, "fmulx d2, d11, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_d_d_d1, "fmulx d2, d11, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_s_s_s0, "fmulx s2, s11, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_s_s_s3, "fmulx s2, s11, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2d_2d_d0, "fmulx v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2d_2d_d1, "fmulx v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_4s_4s_s0, "fmulx v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_4s_4s_s3, "fmulx v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2s_2s_s0, "fmulx v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2s_2s_s3, "fmulx v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
+
+GEN_THREEVEC_TEST(fmulx_d_d_d, "fmulx d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_s_s_s, "fmulx s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2d_2d_2d, "fmulx v2.2d, v11.2d, v29.2d", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_4s_4s_4s, "fmulx v2.4s, v11.4s, v29.4s", 2, 11, 29)
+GEN_THREEVEC_TEST(fmulx_2s_2s_2s, "fmulx v2.2s, v11.2s, v29.2s", 2, 11, 29)
+
+GEN_TWOVEC_TEST(frecpe_d_d, "frecpe d22, d23", 22, 23)
+GEN_TWOVEC_TEST(frecpe_s_s, "frecpe s22, s23", 22, 23)
+GEN_TWOVEC_TEST(frecpe_2d_2d, "frecpe v22.2d, v23.2d", 22, 23)
+GEN_...
[truncated message content] |
|
From: Christian B. <bor...@de...> - 2014-11-02 05:13:55
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] GDB: GNU gdb (GDB) SUSE (7.5.1-0.7.29) Assembler: GNU assembler (GNU Binutils; SUSE Linux Enterprise 11) 2.23.1 C library: GNU C Library stable release version 2.11.3 (20110527) uname -mrs: Linux 3.0.101-0.35-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP3 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP3 gcc 4.3.4 on z196 (s390x) ) Started at 2014-11-02 03:45:01 CET Ended at 2014-11-02 06:13:40 CET Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 662 tests, 3 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/origin5-bz2 (stderr) helgrind/tests/pth_cond_destroy_busy (stderr) helgrind/tests/tc20_verifywrap (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.23s no: 4.4s (19.3x, -----) me: 7.7s (33.5x, -----) ca:25.9s (112.7x, -----) he: 5.4s (23.5x, -----) ca: 9.2s (40.2x, -----) dr: 6.0s (26.1x, -----) ma: 4.9s (21.3x, -----) bigcode1 valgrind-old:0.23s no: 4.4s (19.3x, -0.2%) me: 7.3s (31.7x, 5.3%) ca:26.3s (114.5x, -1.6%) he: 5.4s (23.5x, 0.0%) ca: 9.2s (40.1x, 0.1%) dr: 5.9s (25.7x, 1.8%) ma: 4.7s (20.5x, 4.1%) -- bigcode2 -- bigcode2 valgrind-new:0.24s no: 7.6s (31.6x, -----) me:14.6s (60.6x, -----) ca:40.1s (166.9x, -----) he:10.7s (44.4x, -----) ca:14.7s (61.4x, -----) dr:10.4s (43.3x, -----) ma: 8.4s (35.0x, -----) bigcode2 valgrind-old:0.24s no: 7.6s (31.6x, 0.0%) me:15.0s (62.5x, -3.2%) ca:39.5s (164.8x, 1.3%) he:10.6s (44.3x, 0.1%) ca:14.6s (60.9x, 0.7%) dr:10.2s (42.7x, 1.3%) ma: 8.4s (35.2x, -0.5%) -- bz2 -- bz2 valgrind-new:0.70s no: 5.0s ( 7.2x, -----) me:13.0s (18.6x, -----) ca:30.0s (42.9x, -----) he:19.9s (28.4x, -----) ca:34.3s (49.0x, -----) dr:29.6s (42.3x, -----) ma: 3.6s ( 5.2x, -----) bz2 valgrind-old:0.70s no: 5.0s ( 7.2x, 0.0%) me:13.1s (18.6x, -0.2%) ca:30.4s (43.5x, -1.3%) he:19.9s (28.4x, 0.0%) ca:34.3s (49.0x, -0.0%) dr:29.7s (42.4x, -0.1%) ma: 3.6s ( 5.2x, 0.0%) -- fbench -- fbench valgrind-new:0.41s no: 1.6s ( 4.0x, -----) me: 4.5s (11.0x, -----) ca: 9.2s (22.5x, -----) he: 6.5s (15.7x, -----) ca: 7.3s (17.8x, -----) dr: 5.8s (14.1x, -----) ma: 1.7s ( 4.1x, -----) fbench valgrind-old:0.41s no: 1.6s ( 3.9x, 1.2%) me: 4.5s (11.0x, 0.4%) ca: 9.3s (22.8x, -1.2%) he: 6.5s (15.8x, -0.3%) ca: 7.3s (17.9x, -0.1%) dr: 5.8s (14.1x, -0.2%) ma: 1.7s ( 4.1x, -1.2%) -- ffbench -- ffbench valgrind-new:0.20s no: 1.1s ( 5.2x, -----) me: 3.5s (17.2x, -----) ca: 3.0s (15.0x, -----) he:44.5s (222.7x, -----) ca: 9.6s (48.0x, -----) dr: 7.3s (36.7x, -----) ma: 1.0s ( 4.8x, -----) ffbench valgrind-old:0.20s no: 1.1s ( 5.2x, 0.0%) me: 3.5s (17.4x, -1.2%) ca: 3.0s (15.1x, -0.3%) he:44.5s (222.3x, 0.2%) ca: 9.6s (48.0x, 0.0%) dr: 7.3s (36.7x, 0.0%) ma: 1.0s ( 4.8x, 0.0%) -- heap -- heap valgrind-new:0.23s no: 1.8s ( 7.9x, -----) me: 9.0s (39.2x, -----) ca:13.1s (57.1x, -----) he:13.2s (57.2x, -----) ca:11.2s (48.7x, -----) dr: 7.7s (33.6x, -----) ma: 7.7s (33.3x, -----) heap valgrind-old:0.23s no: 1.8s ( 7.9x, 0.5%) me: 9.0s (39.1x, 0.3%) ca:13.2s (57.4x, -0.5%) he:13.2s (57.3x, -0.2%) ca:11.2s (48.7x, -0.1%) dr: 7.8s (33.8x, -0.5%) ma: 7.7s (33.3x, 0.3%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.23s no: 2.0s ( 8.6x, -----) me:13.1s (56.9x, -----) ca:14.2s (61.6x, -----) he:14.3s (62.4x, -----) ca:12.5s (54.4x, -----) dr: 8.8s (38.3x, -----) ma: 7.8s (33.9x, -----) heap_pdb4 valgrind-old:0.23s no: 2.0s ( 8.6x, 0.5%) me:13.2s (57.2x, -0.5%) ca:14.3s (62.0x, -0.7%) he:14.3s (62.3x, 0.1%) ca:12.5s (54.4x, 0.1%) dr: 8.7s (38.0x, 0.9%) ma: 7.8s (33.9x, 0.0%) -- many-loss-records -- many-loss-records valgrind-new:0.03s no: 0.5s (16.0x, -----) me: 2.3s (78.0x, -----) ca: 1.9s (64.3x, -----) he: 2.4s (80.0x, -----) ca: 1.9s (64.3x, -----) dr: 1.9s (64.7x, -----) ma: 1.6s (53.7x, -----) many-loss-records valgrind-old:0.03s no: 0.5s (16.0x, 0.0%) me: 2.3s (78.0x, 0.0%) ca: 1.9s (65.0x, -1.0%) he: 2.4s (80.0x, 0.0%) ca: 1.9s (64.7x, -0.5%) dr: 1.9s (64.3x, 0.5%) ma: 1.6s (53.0x, 1.2%) -- many-xpts -- many-xpts valgrind-new:0.07s no: 0.6s ( 8.6x, -----) me: 3.4s (48.3x, -----) ca:373.2s (5332.1x, -----) he: 6.9s (99.1x, -----) ca: 2.8s (40.3x, -----) dr: 2.7s (38.7x, -----) ma: 2.5s (35.9x, -----) many-xpts valgrind-old:0.07s no: 0.6s ( 8.6x, 0.0%) me: 3.4s (48.4x, -0.3%) ca:374.4s (5349.0x, -0.3%) he: 6.9s (99.1x, -0.0%) ca: 2.8s (40.1x, 0.4%) dr: 2.7s (38.4x, 0.7%) ma: 2.5s (35.9x, 0.0%) -- sarp -- sarp valgrind-new:0.03s no: 0.6s (20.0x, -----) me: 3.7s (123.0x, -----) ca: 3.2s (106.7x, -----) he:17.6s (586.3x, -----) ca: 2.0s (68.3x, -----) dr: 1.6s (52.7x, -----) ma: 0.5s (16.0x, -----) sarp valgrind-old:0.03s no: 0.6s (20.0x, 0.0%) me: 3.7s (123.0x, 0.0%) ca: 3.2s (107.3x, -0.6%) he:17.6s (585.0x, 0.2%) ca: 2.0s (68.3x, 0.0%) dr: 1.6s (52.7x, 0.0%) ma: 0.5s (16.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.22s no: 2.7s (12.2x, -----) me:14.6s (66.3x, -----) ca:29.7s (134.9x, -----) he:28.1s (127.9x, -----) ca:21.3s (96.8x, -----) dr:20.9s (95.1x, -----) ma: 3.9s (17.8x, -----) tinycc valgrind-old:0.22s no: 2.7s (12.2x, 0.0%) me:14.6s (66.4x, -0.1%) ca:29.9s (136.1x, -0.9%) he:28.1s (127.8x, 0.1%) ca:21.3s (96.7x, 0.0%) dr:20.9s (95.0x, 0.1%) ma: 3.9s (17.8x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 112m16.373s user 111m37.810s sys 0m30.389s |
|
From: <ma...@bu...> - 2014-11-02 04:34:16
|
valgrind revision: 14683
VEX revision: 2986
C compiler: gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1)
GDB: GNU gdb (GDB) Fedora 7.7.1-18.fc20
Assembler: GNU assembler version 2.23.2
C library: GNU C Library (GNU libc) stable release version 2.18
uname -mrs: Linux 3.11.10-301.fc20.s390x s390x
Vendor version: Fedora 20 (Heisenbug)
Nightly build on lfedora1 ( Fedora release 20 (Heisenbug), s390x )
Started at 2014-11-02 00:00:02 UTC
Ended at 2014-11-02 01:40:38 UTC
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 668 tests, 3 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures ==
helgrind/tests/locked_vs_unlocked2 (stderr)
helgrind/tests/pth_cond_destroy_busy (stderr)
helgrind/tests/tc22_exit_w_lock (stderr)
=================================================
./valgrind-new/helgrind/tests/locked_vs_unlocked2.stderr.diff
=================================================
--- locked_vs_unlocked2.stderr.exp 2014-11-02 00:46:40.215215546 +0000
+++ locked_vs_unlocked2.stderr.out 2014-11-02 01:13:58.705254866 +0000
@@ -16,13 +16,13 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (locked_vs_unlocked2.c:58)
- Address 0x........ is 0 bytes inside data symbol "mx2a"
+ by 0x........: main (locked_vs_unlocked2.c:59)
+ Address 0x........ is 0 bytes inside data symbol "mx2b"
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (locked_vs_unlocked2.c:59)
- Address 0x........ is 0 bytes inside data symbol "mx2b"
+ by 0x........: main (locked_vs_unlocked2.c:58)
+ Address 0x........ is 0 bytes inside data symbol "mx2a"
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
=================================================
./valgrind-new/helgrind/tests/pth_cond_destroy_busy.stderr.diff
=================================================
--- pth_cond_destroy_busy.stderr.exp 2014-11-02 00:46:40.175215545 +0000
+++ pth_cond_destroy_busy.stderr.out 2014-11-02 01:14:06.715255053 +0000
@@ -47,4 +47,4 @@
First pthread_cond_destroy() call returned EBUSY.
Second pthread_cond_destroy() call returned success.
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 6 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc22_exit_w_lock.stderr.diff
=================================================
--- tc22_exit_w_lock.stderr.exp 2014-11-02 00:46:40.135215544 +0000
+++ tc22_exit_w_lock.stderr.out 2014-11-02 01:15:44.025257468 +0000
@@ -13,6 +13,23 @@
---Thread-Announcement------------------------------------------
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Possible data race during write of size 8 at 0x........ by thread #x
+Locks held: none
+ ...
+ by 0x........: pthread_create@* (hg_intercepts.c:...)
+ by 0x........: main (tc22_exit_w_lock.c:42)
+
+This conflicts with a previous read of size 8 by thread #x
+Locks held: none
+ ...
+ Address 0x........ is not stack'd, malloc'd or on a free list
+
+---Thread-Announcement------------------------------------------
+
Thread #x was created
...
by 0x........: pthread_create@* (hg_intercepts.c:...)
@@ -23,10 +40,6 @@
Thread #x: Exiting thread still holds 1 lock
...
----Thread-Announcement------------------------------------------
-
-Thread #x is the program's root thread
-
----------------------------------------------------------------
Thread #x: Exiting thread still holds 1 lock
@@ -34,4 +47,4 @@
by 0x........: main (tc22_exit_w_lock.c:48)
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc22_exit_w_lock.stderr.diff-kfail-x86
=================================================
--- tc22_exit_w_lock.stderr.exp-kfail-x86 2014-11-02 00:46:40.175215545 +0000
+++ tc22_exit_w_lock.stderr.out 2014-11-02 01:15:44.025257468 +0000
@@ -3,7 +3,6 @@
Thread #x was created
...
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
by 0x........: pthread_create@* (hg_intercepts.c:...)
by 0x........: main (tc22_exit_w_lock.c:39)
@@ -14,9 +13,25 @@
---Thread-Announcement------------------------------------------
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Possible data race during write of size 8 at 0x........ by thread #x
+Locks held: none
+ ...
+ by 0x........: pthread_create@* (hg_intercepts.c:...)
+ by 0x........: main (tc22_exit_w_lock.c:42)
+
+This conflicts with a previous read of size 8 by thread #x
+Locks held: none
+ ...
+ Address 0x........ is not stack'd, malloc'd or on a free list
+
+---Thread-Announcement------------------------------------------
+
Thread #x was created
...
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
by 0x........: pthread_create@* (hg_intercepts.c:...)
by 0x........: main (tc22_exit_w_lock.c:42)
@@ -25,14 +40,11 @@
Thread #x: Exiting thread still holds 1 lock
...
----Thread-Announcement------------------------------------------
-
-Thread #x is the program's root thread
-
----------------------------------------------------------------
Thread #x: Exiting thread still holds 1 lock
...
+ by 0x........: main (tc22_exit_w_lock.c:48)
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/locked_vs_unlocked2.stderr.diff
=================================================
--- locked_vs_unlocked2.stderr.exp 2014-11-02 00:00:18.475143286 +0000
+++ locked_vs_unlocked2.stderr.out 2014-11-02 00:20:51.545174647 +0000
@@ -16,13 +16,13 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (locked_vs_unlocked2.c:58)
- Address 0x........ is 0 bytes inside data symbol "mx2a"
+ by 0x........: main (locked_vs_unlocked2.c:59)
+ Address 0x........ is 0 bytes inside data symbol "mx2b"
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (locked_vs_unlocked2.c:59)
- Address 0x........ is 0 bytes inside data symbol "mx2b"
+ by 0x........: main (locked_vs_unlocked2.c:58)
+ Address 0x........ is 0 bytes inside data symbol "mx2a"
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
=================================================
./valgrind-old/helgrind/tests/pth_cond_destroy_busy.stderr.diff
=================================================
--- pth_cond_destroy_busy.stderr.exp 2014-11-02 00:00:18.435143285 +0000
+++ pth_cond_destroy_busy.stderr.out 2014-11-02 00:20:58.455174814 +0000
@@ -47,4 +47,4 @@
First pthread_cond_destroy() call returned EBUSY.
Second pthread_cond_destroy() call returned success.
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 6 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc22_exit_w_lock.stderr.diff
=================================================
--- tc22_exit_w_lock.stderr.exp 2014-11-02 00:00:18.435143285 +0000
+++ tc22_exit_w_lock.stderr.out 2014-11-02 00:22:18.655176824 +0000
@@ -13,6 +13,23 @@
---Thread-Announcement------------------------------------------
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Possible data race during write of size 8 at 0x........ by thread #x
+Locks held: none
+ ...
+ by 0x........: pthread_create@* (hg_intercepts.c:...)
+ by 0x........: main (tc22_exit_w_lock.c:42)
+
+This conflicts with a previous read of size 8 by thread #x
+Locks held: none
+ ...
+ Address 0x........ is not stack'd, malloc'd or on a free list
+
+---Thread-Announcement------------------------------------------
+
Thread #x was created
...
by 0x........: pthread_create@* (hg_intercepts.c:...)
@@ -23,10 +40,6 @@
Thread #x: Exiting thread still holds 1 lock
...
----Thread-Announcement------------------------------------------
-
-Thread #x is the program's root thread
-
----------------------------------------------------------------
Thread #x: Exiting thread still holds 1 lock
@@ -34,4 +47,4 @@
by 0x........: main (tc22_exit_w_lock.c:48)
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc22_exit_w_lock.stderr.diff-kfail-x86
=================================================
--- tc22_exit_w_lock.stderr.exp-kfail-x86 2014-11-02 00:00:18.435143285 +0000
+++ tc22_exit_w_lock.stderr.out 2014-11-02 00:22:18.655176824 +0000
@@ -3,7 +3,6 @@
Thread #x was created
...
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
by 0x........: pthread_create@* (hg_intercepts.c:...)
by 0x........: main (tc22_exit_w_lock.c:39)
@@ -14,9 +13,25 @@
---Thread-Announcement------------------------------------------
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Possible data race during write of size 8 at 0x........ by thread #x
+Locks held: none
+ ...
+ by 0x........: pthread_create@* (hg_intercepts.c:...)
+ by 0x........: main (tc22_exit_w_lock.c:42)
+
+This conflicts with a previous read of size 8 by thread #x
+Locks held: none
+ ...
+ Address 0x........ is not stack'd, malloc'd or on a free list
+
+---Thread-Announcement------------------------------------------
+
Thread #x was created
...
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
by 0x........: pthread_create@* (hg_intercepts.c:...)
by 0x........: main (tc22_exit_w_lock.c:42)
@@ -25,14 +40,11 @@
Thread #x: Exiting thread still holds 1 lock
...
----Thread-Announcement------------------------------------------
-
-Thread #x is the program's root thread
-
----------------------------------------------------------------
Thread #x: Exiting thread still holds 1 lock
...
+ by 0x........: main (tc22_exit_w_lock.c:48)
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 4 contexts (suppressed: 0 from 0)
|
|
From: Rich C. <rc...@wi...> - 2014-11-02 04:30:27
|
valgrind revision: 14683
VEX revision: 2986
C compiler: gcc (SUSE Linux) 4.8.3 20140627 [gcc-4_8-branch revision 212064]
GDB: GNU gdb (GDB; openSUSE 13.2) 7.8
Assembler: GNU assembler (GNU Binutils; openSUSE 13.2) 2.24.0.20140403-6.1
C library: GNU C Library (GNU libc) stable release version 2.19 (git 9a869d822025)
uname -mrs: Linux 3.16.3-1.gd2bbe7f-desktop x86_64
Vendor version: Welcome to openSUSE 13.2 "Harlequin" - Kernel %r (%t).
Nightly build on rodan ( Linux 3.16.3-1.gd2bbe7f-desktop x86_64 )
Started at 2014-11-01 19:22:01 CDT
Ended at 2014-11-01 23:30:18 CDT
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 613 tests, 4 stderr failures, 0 stdout failures, 0 stderrB failures, 1 stdoutB failure, 0 post failures ==
gdbserver_tests/hgtls (stdoutB)
memcheck/tests/err_disable3 (stderr)
memcheck/tests/err_disable4 (stderr)
memcheck/tests/threadname (stderr)
memcheck/tests/threadname_xml (stderr)
--tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old
+ perl perf/vg_perf --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old perf
-- Running tests in perf ----------------------------------------------
-- bigcode1 --
bigcode1 valgrind-new:0.48s no: 7.5s (15.7x, -----) me:15.1s (31.4x, -----) ca:61.2s (127.6x, -----) he: 9.5s (19.8x, -----) ca:17.1s (35.7x, -----) dr: 9.1s (19.0x, -----) ma: 8.9s (18.6x, -----)
bigcode1 valgrind-old:0.48s no: 7.5s (15.6x, 0.1%) me:15.1s (31.5x, -0.2%) ca:61.1s (127.4x, 0.2%) he: 9.5s (19.8x, 0.2%) ca:17.1s (35.7x, 0.0%) dr: 9.1s (19.0x, 0.1%) ma: 8.9s (18.6x, 0.1%)
-- bigcode2 --
bigcode2 valgrind-new:0.49s no:18.6s (38.0x, -----) me:39.5s (80.6x, -----) ca:105.9s (216.1x, -----) he:24.0s (49.0x, -----) ca:32.8s (66.9x, -----) dr:22.0s (44.9x, -----) ma:21.5s (43.8x, -----)
bigcode2 valgrind-old:0.49s no:18.6s (38.0x, -0.1%) me:39.6s (80.8x, -0.2%) ca:105.7s (215.6x, 0.2%) he:24.0s (48.9x, 0.2%) ca:32.7s (66.8x, 0.1%) dr:21.9s (44.8x, 0.1%) ma:21.4s (43.7x, 0.3%)
-- bz2 --
bz2 valgrind-new:2.32s no: 7.7s ( 3.3x, -----) me:25.0s (10.8x, -----) ca:55.6s (24.0x, -----) he:37.3s (16.1x, -----) ca:55.2s (23.8x, -----) dr:53.2s (22.9x, -----) ma: 7.3s ( 3.2x, -----)
bz2 valgrind-old:2.32s no: 7.7s ( 3.3x, 0.0%) me:25.0s (10.8x, -0.1%) ca:55.6s (24.0x, 0.0%) he:37.3s (16.1x, -0.0%) ca:55.2s (23.8x, 0.1%) dr:53.1s (22.9x, 0.1%) ma: 7.3s ( 3.2x, 0.0%)
-- fbench --
fbench valgrind-new:1.44s no: 5.2s ( 3.6x, -----) me:17.4s (12.1x, -----) ca:26.8s (18.6x, -----) he:13.1s ( 9.1x, -----) ca:17.4s (12.1x, -----) dr:13.2s ( 9.1x, -----) ma: 5.4s ( 3.7x, -----)
fbench valgrind-old:1.44s no: 5.2s ( 3.6x, 0.4%) me:17.4s (12.1x, -0.1%) ca:26.8s (18.6x, -0.0%) he:13.2s ( 9.1x, -0.2%) ca:17.4s (12.1x, 0.2%) dr:13.1s ( 9.1x, 0.1%) ma: 5.4s ( 3.7x, 0.0%)
-- ffbench --
ffbench valgrind-new:0.99s no: 3.5s ( 3.5x, -----) me:12.3s (12.4x, -----) ca: 7.8s ( 7.9x, -----) he:21.3s (21.5x, -----) ca:22.4s (22.7x, -----) dr:16.8s (16.9x, -----) ma: 3.4s ( 3.4x, -----)
ffbench valgrind-old:0.99s no: 3.4s ( 3.5x, 0.3%) me:12.3s (12.4x, -0.2%) ca: 7.8s ( 7.9x, 0.0%) he:21.3s (21.5x, 0.0%) ca:22.4s (22.7x, 0.0%) dr:16.7s (16.9x, 0.1%) ma: 3.4s ( 3.4x, 0.3%)
-- heap --
heap valgrind-new:0.42s no: 3.1s ( 7.4x, -----) me:22.3s (53.1x, -----) ca:30.8s (73.2x, -----) he:30.5s (72.5x, -----) ca:17.1s (40.7x, -----) dr:19.8s (47.2x, -----) ma:21.2s (50.6x, -----)
heap valgrind-old:0.42s no: 3.1s ( 7.3x, 0.3%) me:22.3s (53.2x, -0.2%) ca:30.7s (73.2x, 0.1%) he:30.4s (72.4x, 0.2%) ca:17.1s (40.8x, -0.1%) dr:19.7s (46.9x, 0.7%) ma:21.1s (50.3x, 0.6%)
-- heap_pdb4 --
heap_pdb4 valgrind-new:0.56s no: 3.4s ( 6.1x, -----) me:38.5s (68.7x, -----) ca:33.7s (60.2x, -----) he:35.7s (63.8x, -----) ca:18.4s (32.8x, -----) dr:22.1s (39.6x, -----) ma:22.6s (40.3x, -----)
heap_pdb4 valgrind-old:0.56s no: 3.4s ( 6.1x, 0.3%) me:38.6s (69.0x, -0.5%) ca:34.1s (60.9x, -1.1%) he:35.5s (63.4x, 0.5%) ca:18.4s (32.8x, 0.1%) dr:22.0s (39.3x, 0.5%) ma:22.5s (40.2x, 0.2%)
-- many-loss-records --
many-loss-records valgrind-new:0.05s no: 1.0s (20.6x, -----) me: 6.1s (121.4x, -----) ca: 4.8s (95.6x, -----) he: 5.6s (112.0x, -----) ca: 3.1s (61.2x, -----) dr: 4.9s (97.8x, -----) ma: 4.5s (89.8x, -----)
many-loss-records valgrind-old:0.05s no: 1.0s (20.4x, 1.0%) me: 6.1s (122.2x, -0.7%) ca: 4.8s (95.8x, -0.2%) he: 5.6s (111.6x, 0.4%) ca: 3.1s (61.4x, -0.3%) dr: 4.9s (97.6x, 0.2%) ma: 4.4s (87.6x, 2.4%)
-- many-xpts --
many-xpts valgrind-new:0.15s no: 1.4s ( 9.0x, -----) me: 7.1s (47.5x, -----) ca:12.9s (86.2x, -----) he: 9.8s (65.5x, -----) ca: 4.4s (29.5x, -----) dr: 6.4s (42.7x, -----) ma: 6.8s (45.5x, -----)
many-xpts valgrind-old:0.15s no: 1.3s ( 8.9x, 0.7%) me: 7.1s (47.6x, -0.1%) ca:12.9s (85.9x, 0.3%) he: 9.8s (65.5x, -0.1%) ca: 4.4s (29.4x, 0.2%) dr: 6.4s (42.4x, 0.6%) ma: 6.8s (45.5x, 0.1%)
-- sarp --
sarp valgrind-new:0.11s no: 1.2s (11.3x, -----) me: 9.7s (88.0x, -----) ca: 8.3s (75.9x, -----) he:31.2s (283.7x, -----) ca: 4.7s (42.8x, -----) dr: 4.3s (39.1x, -----) ma: 1.3s (11.8x, -----)
sarp valgrind-old:0.11s no: 1.2s (11.2x, 0.8%) me: 9.7s (88.1x, -0.1%) ca: 8.3s (75.8x, 0.1%) he:31.2s (283.7x, 0.0%) ca: 4.7s (42.7x, 0.2%) dr: 4.3s (38.9x, 0.5%) ma: 1.3s (11.9x, -0.8%)
-- tinycc --
tinycc valgrind-new:0.75s no: 7.4s ( 9.9x, -----) me:38.0s (50.6x, -----) ca:47.6s (63.5x, -----) he:44.8s (59.7x, -----) ca:39.8s (53.1x, -----) dr:37.7s (50.2x, -----) ma:11.7s (15.5x, -----)
tinycc valgrind-old:0.75s no: 7.4s ( 9.8x, 0.3%) me:38.0s (50.6x, -0.1%) ca:47.6s (63.5x, 0.0%) he:44.8s (59.7x, 0.0%) ca:39.8s (53.1x, 0.1%) dr:37.7s (50.2x, 0.0%) ma:11.6s (15.5x, 0.1%)
-- Finished tests in perf ----------------------------------------------
== 11 programs, 154 timings =================
real 152m33.625s
user 151m6.676s
sys 1m21.705s
=================================================
./valgrind-new/gdbserver_tests/hgtls.stdoutB.diff
=================================================
--- hgtls.stdoutB.exp 2014-11-01 20:09:54.088845400 -0500
+++ hgtls.stdoutB.out 2014-11-01 20:23:26.290744314 -0500
@@ -35,11 +35,11 @@
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
-test so_extern tls_ip 0x........ ip 0x........ equal 1
+test so_extern tls_ip 0x........ ip 0x........ equal 0
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
-test so_extern tls_ip 0x........ ip 0x........ equal 1
+test so_extern tls_ip 0x........ ip 0x........ equal 0
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
=================================================
./valgrind-new/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2014-11-01 20:09:54.882854092 -0500
+++ err_disable3.stderr.out 2014-11-01 20:27:41.351541740 -0500
@@ -10,8 +10,6 @@
Thread 2:
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
- by 0x........: child_fn (err_disable3.c:31)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-new/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2014-11-01 20:09:55.720863266 -0500
+++ err_disable4.stderr.out 2014-11-01 20:27:45.574588067 -0500
@@ -1501,8 +1501,6 @@
Thread x:
Invalid read of size 1
at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
=================================================
./valgrind-new/memcheck/tests/threadname.stderr.diff
=================================================
--- threadname.stderr.exp 2014-11-01 20:09:55.479860628 -0500
+++ threadname.stderr.out 2014-11-01 20:34:28.600886478 -0500
@@ -9,36 +9,12 @@
Thread 2:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_0 (threadname.c:61)
- ...
Address 0x........ is 0 bytes after a block of size 2 alloc'd
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: bad_things (threadname.c:15)
by 0x........: child_fn_0 (threadname.c:61)
...
-Thread 3 try1:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_1 (threadname.c:46)
- ...
- Address 0x........ is 0 bytes after a block of size 3 alloc'd
- at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: bad_things (threadname.c:15)
- by 0x........: child_fn_1 (threadname.c:46)
- ...
-
-Thread 4 012345678901234:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_2 (threadname.c:30)
- ...
- Address 0x........ is 0 bytes after a block of size 4 alloc'd
- at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: bad_things (threadname.c:15)
- by 0x........: child_fn_2 (threadname.c:30)
- ...
-
Thread 1:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
=================================================
./valgrind-new/memcheck/tests/threadname_xml.stderr.diff
=================================================
--- threadname_xml.stderr.exp 2014-11-01 20:09:55.189857453 -0500
+++ threadname_xml.stderr.out 2014-11-01 20:34:30.912910822 -0500
@@ -94,14 +94,6 @@
<file>threadname.c</file>
<line>...</line>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_0</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
</stack>
<auxwhat>Address 0x........ is 0 bytes after a block of size 2 alloc'd</auxwhat>
<stack>
@@ -135,112 +127,6 @@
<error>
<unique>0x........</unique>
<tid>...</tid>
- <threadname>try1</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 3 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <threadname>012345678901234</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_2</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 4 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<truncated beyond 100 lines>
=================================================
./valgrind-old/gdbserver_tests/hgtls.stdoutB.diff
=================================================
--- hgtls.stdoutB.exp 2014-11-01 19:22:17.039175210 -0500
+++ hgtls.stdoutB.out 2014-11-01 19:35:45.093214560 -0500
@@ -35,11 +35,11 @@
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
-test so_extern tls_ip 0x........ ip 0x........ equal 1
+test so_extern tls_ip 0x........ ip 0x........ equal 0
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
-test so_extern tls_ip 0x........ ip 0x........ equal 1
+test so_extern tls_ip 0x........ ip 0x........ equal 0
[New Thread ....]
Breakpoint 1, tls_ptr (p=0x........) at tls.c:55
55 int here = 0;
=================================================
./valgrind-old/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2014-11-01 19:22:17.842184205 -0500
+++ err_disable3.stderr.out 2014-11-01 19:39:56.148014262 -0500
@@ -10,8 +10,6 @@
Thread 2:
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
- by 0x........: child_fn (err_disable3.c:31)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-old/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2014-11-01 19:22:18.688193680 -0500
+++ err_disable4.stderr.out 2014-11-01 19:40:00.225059705 -0500
@@ -1501,8 +1501,6 @@
Thread x:
Invalid read of size 1
at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
=================================================
./valgrind-old/memcheck/tests/threadname.stderr.diff
=================================================
--- threadname.stderr.exp 2014-11-01 19:22:18.446190970 -0500
+++ threadname.stderr.out 2014-11-01 19:46:42.177538044 -0500
@@ -9,36 +9,12 @@
Thread 2:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_0 (threadname.c:61)
- ...
Address 0x........ is 0 bytes after a block of size 2 alloc'd
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: bad_things (threadname.c:15)
by 0x........: child_fn_0 (threadname.c:61)
...
-Thread 3 try1:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_1 (threadname.c:46)
- ...
- Address 0x........ is 0 bytes after a block of size 3 alloc'd
- at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: bad_things (threadname.c:15)
- by 0x........: child_fn_1 (threadname.c:46)
- ...
-
-Thread 4 012345678901234:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_2 (threadname.c:30)
- ...
- Address 0x........ is 0 bytes after a block of size 4 alloc'd
- at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: bad_things (threadname.c:15)
- by 0x........: child_fn_2 (threadname.c:30)
- ...
-
Thread 1:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
=================================================
./valgrind-old/memcheck/tests/threadname_xml.stderr.diff
=================================================
--- threadname_xml.stderr.exp 2014-11-01 19:22:18.152187677 -0500
+++ threadname_xml.stderr.out 2014-11-01 19:46:44.485563748 -0500
@@ -94,14 +94,6 @@
<file>threadname.c</file>
<line>...</line>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_0</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
</stack>
<auxwhat>Address 0x........ is 0 bytes after a block of size 2 alloc'd</auxwhat>
<stack>
@@ -135,112 +127,6 @@
<error>
<unique>0x........</unique>
<tid>...</tid>
- <threadname>try1</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 3 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <threadname>012345678901234</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_2</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 4 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<truncated beyond 100 lines>
|
|
From: Tom H. <to...@co...> - 2014-11-02 04:27:36
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) GDB: GNU gdb (GDB) Fedora (7.3.1-48.fc15) Assembler: GNU assembler version 2.21.51.0.6-6.fc15 20110118 C library: GNU C Library stable release version 2.14.1 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2014-11-02 03:12:40 GMT Ended at 2014-11-02 04:27:09 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.7s (15.1x, -----) me: 3.3s (29.8x, -----) ca:14.5s (131.5x, -----) he: 2.0s (18.5x, -----) ca: 3.8s (34.9x, -----) dr: 2.0s (18.2x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.9x, 1.2%) me: 3.4s (30.7x, -3.0%) ca:14.5s (131.9x, -0.3%) he: 2.0s (18.6x, -0.5%) ca: 3.9s (35.1x, -0.5%) dr: 2.0s (18.3x, -0.5%) ma: 1.9s (17.7x, 0.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (35.9x, -----) me: 8.5s (76.9x, -----) ca:25.6s (233.0x, -----) he: 4.9s (44.8x, -----) ca: 7.2s (65.8x, -----) dr: 4.7s (42.5x, -----) ma: 4.7s (42.4x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.2x, -0.8%) me: 8.4s (76.8x, 0.1%) ca:25.9s (235.7x, -1.2%) he: 5.0s (45.4x, -1.2%) ca: 7.3s (66.7x, -1.4%) dr: 4.8s (43.3x, -1.7%) ma: 4.6s (41.5x, 2.1%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.7s (11.0x, -----) ca:13.1s (25.3x, -----) he: 8.5s (16.3x, -----) ca:10.9s (21.0x, -----) dr:10.5s (20.1x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, -1.9%) me: 5.7s (11.0x, 0.2%) ca:13.2s (25.3x, -0.1%) he: 8.5s (16.4x, -0.4%) ca:10.9s (21.1x, -0.1%) dr:10.5s (20.2x, -0.4%) ma: 1.6s ( 3.1x, 1.8%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.7s (16.9x, -----) ca: 5.5s (25.2x, -----) he: 2.8s (12.5x, -----) ca: 3.1s (14.1x, -----) dr: 2.6s (11.9x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 0.0%) me: 3.7s (16.9x, 0.0%) ca: 5.5s (25.2x, 0.0%) he: 2.8s (12.5x, 0.4%) ca: 3.1s (14.2x, -0.3%) dr: 2.6s (12.0x, -1.1%) ma: 1.0s ( 4.7x, 1.0%) -- ffbench -- ffbench valgrind-new:0.21s no: 0.9s ( 4.4x, -----) me: 2.9s (13.7x, -----) ca: 1.9s ( 8.9x, -----) he: 6.9s (32.8x, -----) ca: 4.2s (20.0x, -----) dr: 3.4s (16.1x, -----) ma: 0.9s ( 4.2x, -----) ffbench valgrind-old:0.21s no: 0.9s ( 4.5x, -1.1%) me: 2.9s (13.7x, 0.0%) ca: 1.9s ( 8.9x, 0.0%) he: 6.3s (29.9x, 9.0%) ca: 4.2s (19.9x, 0.2%) dr: 3.4s (16.1x, 0.3%) ma: 0.9s ( 4.2x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.0s (62.4x, -----) ca: 6.2s (78.0x, -----) he: 6.9s (85.8x, -----) ca: 3.3s (41.0x, -----) dr: 4.6s (57.1x, -----) ma: 4.7s (59.2x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.4x, 3.3%) me: 5.0s (62.3x, 0.2%) ca: 6.2s (78.0x, 0.0%) he: 6.8s (85.1x, 0.7%) ca: 3.3s (41.2x, -0.6%) dr: 4.5s (56.2x, 1.5%) ma: 4.8s (59.5x, -0.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.6x, -----) me: 8.4s (83.8x, -----) ca: 7.1s (70.6x, -----) he: 7.5s (75.0x, -----) ca: 3.6s (36.1x, -----) dr: 4.9s (48.8x, -----) ma: 5.0s (50.3x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.8x, -3.0%) me: 8.4s (83.8x, 0.0%) ca: 6.9s (69.1x, 2.1%) he: 7.6s (76.0x, -1.3%) ca: 3.6s (35.8x, 0.8%) dr: 5.0s (49.6x, -1.6%) ma: 5.1s (50.6x, -0.6%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (24.0x, -----) me: 1.4s (139.0x, -----) ca: 1.0s (103.0x, -----) he: 1.2s (119.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.1s (106.0x, -----) ma: 1.0s (99.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, -8.3%) me: 1.4s (135.0x, 2.9%) ca: 1.0s (103.0x, 0.0%) he: 1.2s (116.0x, 2.5%) ca: 0.7s (68.0x, -3.0%) dr: 1.1s (106.0x, 0.0%) ma: 1.0s (99.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.3s ( 7.8x, -----) me: 1.9s (47.5x, -----) ca: 2.6s (65.8x, -----) he: 2.2s (56.2x, -----) ca: 1.0s (24.8x, -----) dr: 1.6s (39.2x, -----) ma: 1.5s (36.8x, -----) many-xpts valgrind-old:0.04s no: 0.3s ( 7.8x, 0.0%) me: 2.0s (49.2x, -3.7%) ca: 2.7s (67.0x, -1.9%) he: 2.2s (55.8x, 0.9%) ca: 0.9s (23.2x, 6.1%) dr: 1.6s (39.0x, 0.6%) ma: 1.5s (36.8x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.5s (126.0x, -----) ca: 1.9s (93.0x, -----) he: 6.8s (340.5x, -----) ca: 0.9s (45.5x, -----) dr: 1.0s (49.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.5s (126.0x, 0.0%) ca: 1.9s (93.5x, -0.5%) he: 6.9s (346.0x, -1.6%) ca: 0.9s (47.0x, -3.3%) dr: 1.0s (51.0x, -4.1%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.5s ( 9.3x, -----) me: 9.2s (57.4x, -----) ca:11.2s (70.2x, -----) he:10.6s (66.0x, -----) ca: 8.2s (51.2x, -----) dr: 8.0s (50.2x, -----) ma: 2.5s (15.4x, -----) tinycc valgrind-old:0.16s no: 1.5s ( 9.1x, 2.0%) me: 9.2s (57.2x, 0.3%) ca:11.2s (69.9x, 0.4%) he: 9.8s (61.3x, 7.1%) ca: 8.2s (51.3x, -0.2%) dr: 8.2s (51.3x, -2.1%) ma: 2.5s (15.6x, -1.2%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m1.593s user 33m54.100s sys 0m22.773s |
|
From: Tom H. <to...@co...> - 2014-11-02 04:19:19
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) GDB: GNU gdb (GDB) Fedora (7.3.50.20110722-16.fc16) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2014-11-02 03:02:15 GMT Ended at 2014-11-02 04:19:03 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.7s (15.4x, -----) me: 3.4s (30.7x, -----) ca:14.8s (134.6x, -----) he: 2.1s (19.0x, -----) ca: 3.9s (35.1x, -----) dr: 2.0s (18.5x, -----) ma: 2.0s (17.8x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.4x, 0.0%) me: 3.4s (30.6x, 0.3%) ca:14.4s (131.4x, 2.4%) he: 2.1s (18.7x, 1.4%) ca: 3.9s (35.1x, 0.0%) dr: 2.0s (18.5x, 0.0%) ma: 2.0s (17.8x, 0.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.3x, -----) me: 8.6s (77.9x, -----) ca:27.1s (246.5x, -----) he: 5.1s (46.3x, -----) ca: 7.3s (66.7x, -----) dr: 4.8s (43.9x, -----) ma: 4.6s (41.9x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.4x, -0.3%) me: 8.5s (77.5x, 0.6%) ca:26.6s (242.3x, 1.7%) he: 5.0s (45.5x, 1.8%) ca: 7.3s (66.0x, 1.1%) dr: 4.8s (43.3x, 1.4%) ma: 4.6s (41.8x, 0.2%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.9s (11.3x, -----) ca:13.4s (25.7x, -----) he: 8.6s (16.5x, -----) ca:11.1s (21.3x, -----) dr:10.6s (20.3x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, -0.6%) me: 5.9s (11.3x, -0.3%) ca:13.3s (25.6x, 0.5%) he: 8.6s (16.6x, -0.3%) ca:11.0s (21.2x, 0.5%) dr:10.5s (20.3x, 0.2%) ma: 1.6s ( 3.2x, -1.9%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.7s (17.0x, -----) ca: 5.7s (25.8x, -----) he: 2.9s (13.1x, -----) ca: 3.2s (14.5x, -----) dr: 2.7s (12.4x, -----) ma: 1.0s ( 4.7x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.5x, 2.0%) me: 3.7s (16.8x, 1.1%) ca: 5.7s (25.7x, 0.4%) he: 2.9s (13.1x, 0.3%) ca: 3.1s (14.3x, 1.3%) dr: 2.7s (12.1x, 1.8%) ma: 1.1s ( 4.8x, -1.9%) -- ffbench -- ffbench valgrind-new:0.22s no: 0.9s ( 4.3x, -----) me: 2.9s (13.3x, -----) ca: 1.9s ( 8.6x, -----) he: 6.1s (27.8x, -----) ca: 4.2s (19.0x, -----) dr: 3.4s (15.6x, -----) ma: 0.9s ( 4.0x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.2x, 1.1%) me: 2.9s (13.3x, 0.3%) ca: 1.9s ( 8.5x, 1.6%) he: 5.8s (26.4x, 5.2%) ca: 4.2s (19.1x, -0.7%) dr: 3.4s (15.6x, 0.0%) ma: 0.9s ( 4.0x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.9x, -----) me: 5.2s (64.5x, -----) ca: 6.7s (83.8x, -----) he: 6.7s (83.1x, -----) ca: 3.3s (41.1x, -----) dr: 4.4s (55.4x, -----) ma: 4.8s (60.2x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.8x, 1.6%) me: 5.1s (64.1x, 0.6%) ca: 6.7s (83.9x, -0.1%) he: 6.7s (83.9x, -0.9%) ca: 3.3s (41.0x, 0.3%) dr: 4.5s (55.8x, -0.7%) ma: 4.9s (61.5x, -2.1%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 7.3x, -----) me: 8.8s (87.7x, -----) ca: 7.2s (72.4x, -----) he: 7.8s (77.9x, -----) ca: 3.7s (37.4x, -----) dr: 5.0s (50.5x, -----) ma: 5.0s (50.0x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.8x, 6.8%) me: 8.6s (85.7x, 2.3%) ca: 7.3s (72.8x, -0.6%) he: 7.8s (78.5x, -0.8%) ca: 3.6s (35.9x, 4.0%) dr: 5.0s (50.4x, 0.2%) ma: 5.1s (51.1x, -2.2%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.5s (146.0x, -----) ca: 1.1s (110.0x, -----) he: 1.2s (124.0x, -----) ca: 0.7s (68.0x, -----) dr: 1.1s (112.0x, -----) ma: 1.0s (102.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.4s (142.0x, 2.7%) ca: 1.1s (108.0x, 1.8%) he: 1.2s (124.0x, 0.0%) ca: 0.7s (67.0x, 1.5%) dr: 1.1s (111.0x, 0.9%) ma: 1.0s (101.0x, 1.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.3s ( 8.2x, -----) me: 2.0s (49.2x, -----) ca: 2.8s (69.2x, -----) he: 2.2s (54.5x, -----) ca: 1.0s (24.5x, -----) dr: 1.6s (39.0x, -----) ma: 1.5s (36.8x, -----) many-xpts valgrind-old:0.04s no: 0.3s ( 7.8x, 6.1%) me: 1.9s (48.8x, 1.0%) ca: 2.8s (69.0x, 0.4%) he: 2.2s (55.2x, -1.4%) ca: 1.0s (24.5x, 0.0%) dr: 1.5s (38.5x, 1.3%) ma: 1.5s (36.5x, 0.7%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.5x, -----) me: 2.5s (126.5x, -----) ca: 1.8s (87.5x, -----) he: 6.6s (329.0x, -----) ca: 1.1s (52.5x, -----) dr: 1.0s (51.0x, -----) ma: 0.3s (15.5x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 3.4%) me: 2.5s (127.0x, -0.4%) ca: 1.8s (88.0x, -0.6%) he: 6.6s (328.0x, 0.3%) ca: 1.0s (51.5x, 1.9%) dr: 1.0s (51.5x, -1.0%) ma: 0.3s (15.0x, 3.2%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.9x, -----) me: 8.9s (55.9x, -----) ca:11.0s (68.9x, -----) he: 9.4s (59.1x, -----) ca: 8.1s (50.3x, -----) dr: 8.0s (50.0x, -----) ma: 2.4s (15.0x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.8x, 1.4%) me: 9.0s (56.5x, -1.0%) ca:10.9s (68.4x, 0.7%) he: 9.5s (59.6x, -0.8%) ca: 8.1s (50.6x, -0.5%) dr: 8.1s (50.3x, -0.6%) ma: 2.4s (15.2x, -1.3%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m37.571s user 34m27.206s sys 0m24.549s |
|
From: Tom H. <to...@co...> - 2014-11-02 04:09:03
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) GDB: GNU gdb (GDB) Fedora (7.4.50.20120120-54.fc17) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2014-11-02 02:51:11 GMT Ended at 2014-11-02 04:08:46 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 5 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcmain_pic (stderr) memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (15.0x, -----) me: 3.4s (30.8x, -----) ca:13.9s (126.5x, -----) he: 2.1s (19.5x, -----) ca: 3.8s (34.4x, -----) dr: 2.0s (18.6x, -----) ma: 2.0s (18.1x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.5x, -3.0%) me: 3.4s (30.8x, 0.0%) ca:13.6s (123.8x, 2.2%) he: 2.1s (19.0x, 2.3%) ca: 3.8s (34.2x, 0.5%) dr: 2.1s (19.1x, -2.4%) ma: 2.2s (19.8x, -9.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.1s (37.4x, -----) me: 9.1s (82.5x, -----) ca:28.7s (260.9x, -----) he: 5.1s (46.4x, -----) ca: 7.2s (65.4x, -----) dr: 4.9s (44.3x, -----) ma: 4.6s (41.8x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.6x, 1.9%) me: 8.6s (78.5x, 4.8%) ca:26.3s (239.2x, 8.3%) he: 5.1s (46.1x, 0.6%) ca: 7.2s (65.9x, -0.8%) dr: 4.7s (43.0x, 2.9%) ma: 5.0s (45.0x, -7.6%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.2x, -----) me: 5.8s (11.1x, -----) ca:12.4s (23.8x, -----) he: 8.4s (16.2x, -----) ca:10.4s (20.0x, -----) dr:11.0s (21.2x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, 1.2%) me: 5.8s (11.1x, -0.2%) ca:12.3s (23.7x, 0.6%) he: 8.5s (16.3x, -0.6%) ca:10.4s (20.1x, -0.6%) dr:11.0s (21.2x, 0.2%) ma: 1.6s ( 3.1x, -0.6%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.6s (16.3x, -----) ca: 5.5s (24.9x, -----) he: 2.7s (12.2x, -----) ca: 3.0s (13.6x, -----) dr: 2.5s (11.6x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 0.0%) me: 3.6s (16.4x, -0.6%) ca: 5.5s (25.0x, -0.7%) he: 2.7s (12.2x, 0.4%) ca: 3.0s (13.5x, 0.7%) dr: 2.5s (11.5x, 0.8%) ma: 1.1s ( 4.8x, 0.9%) -- ffbench -- ffbench valgrind-new:0.22s no: 1.0s ( 4.4x, -----) me: 3.0s (13.5x, -----) ca: 1.8s ( 8.4x, -----) he: 7.1s (32.2x, -----) ca: 4.2s (18.9x, -----) dr: 3.5s (15.7x, -----) ma: 0.9s ( 4.1x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.3x, 2.1%) me: 3.0s (13.7x, -1.7%) ca: 1.8s ( 8.2x, 1.6%) he: 6.5s (29.3x, 9.0%) ca: 4.0s (18.0x, 4.6%) dr: 3.4s (15.6x, 0.9%) ma: 0.9s ( 4.1x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.5x, -----) me: 5.4s (67.4x, -----) ca: 6.0s (74.4x, -----) he: 7.2s (89.8x, -----) ca: 3.0s (37.8x, -----) dr: 4.3s (54.2x, -----) ma: 4.9s (61.1x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 0.0%) me: 5.3s (66.9x, 0.7%) ca: 5.9s (73.5x, 1.2%) he: 7.2s (89.5x, 0.3%) ca: 3.0s (37.5x, 0.7%) dr: 4.3s (54.1x, 0.2%) ma: 4.9s (61.0x, 0.2%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.2x, -----) me: 8.9s (81.0x, -----) ca: 6.6s (60.1x, -----) he: 7.8s (70.6x, -----) ca: 3.3s (30.1x, -----) dr: 4.9s (44.5x, -----) ma: 5.0s (45.4x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.2x, 0.0%) me: 8.9s (81.1x, -0.1%) ca: 6.5s (58.7x, 2.3%) he: 7.8s (70.7x, -0.1%) ca: 3.4s (30.5x, -1.5%) dr: 4.9s (44.3x, 0.4%) ma: 5.0s (45.6x, -0.6%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.5s (146.0x, -----) ca: 1.0s (99.0x, -----) he: 1.3s (127.0x, -----) ca: 0.7s (65.0x, -----) dr: 1.1s (114.0x, -----) ma: 1.0s (103.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 0.0%) me: 1.4s (144.0x, 1.4%) ca: 1.0s (99.0x, 0.0%) he: 1.3s (127.0x, 0.0%) ca: 0.7s (65.0x, 0.0%) dr: 1.1s (114.0x, 0.0%) ma: 1.0s (104.0x, -1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.9s (64.0x, -----) ca: 2.6s (85.7x, -----) he: 2.4s (79.0x, -----) ca: 0.9s (30.7x, -----) dr: 1.5s (50.7x, -----) ma: 1.5s (50.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.9s (63.3x, 1.0%) ca: 2.6s (86.3x, -0.8%) he: 2.4s (79.3x, -0.4%) ca: 0.9s (30.7x, 0.0%) dr: 1.5s (50.3x, 0.7%) ma: 1.5s (50.3x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.5s (123.0x, -----) ca: 1.7s (85.5x, -----) he: 7.2s (359.0x, -----) ca: 0.9s (43.5x, -----) dr: 1.0s (50.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.5s (122.5x, 0.4%) ca: 1.7s (86.5x, -1.2%) he: 7.1s (357.0x, 0.6%) ca: 0.9s (43.0x, 1.1%) dr: 1.0s (50.0x, 0.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.3s ( 8.4x, -----) me: 8.4s (52.7x, -----) ca:10.6s (66.2x, -----) he: 9.7s (60.7x, -----) ca: 7.5s (46.9x, -----) dr: 7.6s (47.4x, -----) ma: 2.4s (15.1x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.5x, -1.5%) me: 8.5s (53.1x, -0.7%) ca:10.5s (65.8x, 0.7%) he: 9.8s (60.9x, -0.4%) ca: 7.5s (47.2x, -0.7%) dr: 7.6s (47.4x, 0.1%) ma: 2.4s (15.1x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m16.901s user 34m9.460s sys 0m24.094s |
|
From: Tom H. <to...@co...> - 2014-11-02 03:58:43
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8) GDB: GNU gdb (GDB) Fedora 7.5.1-42.fc18 Assembler: GNU assembler version 2.23.51.0.1-10.fc18 20120806 C library: GNU C Library stable release version 2.16 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 18 (Spherical Cow) Nightly build on bristol ( x86_64, Fedora 18 (Spherical Cow) ) Started at 2014-11-02 02:40:58 GMT Ended at 2014-11-02 03:58:27 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (15.0x, -----) me: 3.5s (32.2x, -----) ca:14.0s (127.1x, -----) he: 2.1s (19.3x, -----) ca: 3.8s (34.5x, -----) dr: 2.1s (18.9x, -----) ma: 2.0s (18.2x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.4x, -2.4%) me: 3.5s (31.5x, 2.3%) ca:14.0s (127.0x, 0.1%) he: 2.2s (20.1x, -4.2%) ca: 3.8s (34.4x, 0.5%) dr: 2.2s (20.2x, -6.7%) ma: 2.0s (18.3x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.1x, -----) me: 8.8s (79.5x, -----) ca:27.3s (247.9x, -----) he: 5.2s (47.0x, -----) ca: 7.6s (69.3x, -----) dr: 4.8s (43.7x, -----) ma: 4.5s (41.3x, -----) bigcode2 valgrind-old:0.11s no: 4.1s (37.0x, -2.5%) me: 8.7s (79.0x, 0.7%) ca:27.7s (252.2x, -1.7%) he: 5.3s (47.8x, -1.7%) ca: 7.4s (67.4x, 2.8%) dr: 4.8s (43.2x, 1.2%) ma: 4.6s (41.6x, -0.9%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.2x, -----) me: 5.7s (11.0x, -----) ca:13.1s (25.3x, -----) he: 9.1s (17.4x, -----) ca:10.8s (20.7x, -----) dr:11.6s (22.2x, -----) ma: 1.8s ( 3.5x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.2x, 0.0%) me: 5.7s (11.0x, 0.0%) ca:12.9s (24.7x, 2.1%) he: 8.8s (17.0x, 2.2%) ca:10.6s (20.3x, 1.9%) dr:11.6s (22.4x, -0.6%) ma: 1.7s ( 3.2x, 7.7%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.7s (16.8x, -----) ca: 5.6s (25.5x, -----) he: 2.9s (13.1x, -----) ca: 3.1s (14.0x, -----) dr: 2.5s (11.5x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 0.0%) me: 3.7s (16.8x, 0.3%) ca: 5.5s (24.9x, 2.1%) he: 2.7s (12.3x, 6.2%) ca: 3.0s (13.8x, 1.6%) dr: 2.5s (11.5x, 0.0%) ma: 1.1s ( 4.9x, 0.0%) -- ffbench -- ffbench valgrind-new:0.21s no: 1.0s ( 4.6x, -----) me: 3.0s (14.5x, -----) ca: 1.9s ( 8.9x, -----) he: 7.3s (35.0x, -----) ca: 4.1s (19.7x, -----) dr: 3.6s (17.3x, -----) ma: 0.9s ( 4.3x, -----) ffbench valgrind-old:0.21s no: 1.0s ( 4.6x, 0.0%) me: 3.0s (14.5x, 0.0%) ca: 1.8s ( 8.8x, 1.6%) he: 7.3s (34.7x, 0.8%) ca: 4.2s (20.0x, -1.2%) dr: 3.6s (17.0x, 1.6%) ma: 0.9s ( 4.3x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.8x, -----) me: 5.3s (66.1x, -----) ca: 6.2s (77.4x, -----) he: 7.1s (88.5x, -----) ca: 3.1s (38.8x, -----) dr: 4.6s (57.2x, -----) ma: 4.8s (60.6x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 3.2%) me: 5.3s (66.0x, 0.2%) ca: 6.2s (77.4x, 0.0%) he: 7.0s (87.5x, 1.1%) ca: 3.1s (39.1x, -1.0%) dr: 4.5s (55.6x, 2.8%) ma: 4.9s (61.1x, -0.8%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.8x, -----) me: 9.0s (89.7x, -----) ca: 6.7s (66.5x, -----) he: 7.9s (79.4x, -----) ca: 3.4s (34.3x, -----) dr: 5.0s (49.9x, -----) ma: 5.2s (51.8x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 7.0x, -2.9%) me: 9.0s (89.7x, 0.0%) ca: 6.7s (67.0x, -0.8%) he: 7.9s (78.9x, 0.6%) ca: 3.4s (34.2x, 0.3%) dr: 5.0s (49.5x, 0.8%) ma: 5.1s (51.3x, 1.0%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.5s (149.0x, -----) ca: 1.0s (102.0x, -----) he: 1.3s (127.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.1s (114.0x, -----) ma: 1.1s (108.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.5s (148.0x, 0.7%) ca: 1.0s (101.0x, 1.0%) he: 1.3s (129.0x, -1.6%) ca: 0.7s (66.0x, 0.0%) dr: 1.1s (115.0x, -0.9%) ma: 1.1s (106.0x, 1.9%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.9s (64.3x, -----) ca: 2.6s (88.0x, -----) he: 2.4s (80.0x, -----) ca: 0.9s (31.0x, -----) dr: 1.5s (50.7x, -----) ma: 1.6s (51.7x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.9s (65.0x, -1.0%) ca: 2.6s (87.0x, 1.1%) he: 2.4s (80.0x, 0.0%) ca: 0.9s (30.7x, 1.1%) dr: 1.5s (50.7x, 0.0%) ma: 1.6s (52.0x, -0.6%) -- sarp -- sarp valgrind-new:0.01s no: 0.3s (28.0x, -----) me: 2.3s (229.0x, -----) ca: 1.7s (170.0x, -----) he: 7.4s (744.0x, -----) ca: 0.9s (89.0x, -----) dr: 1.0s (103.0x, -----) ma: 0.3s (31.0x, -----) sarp valgrind-old:0.01s no: 0.3s (28.0x, 0.0%) me: 2.3s (229.0x, 0.0%) ca: 1.7s (174.0x, -2.4%) he: 7.4s (739.0x, 0.7%) ca: 0.9s (89.0x, 0.0%) dr: 1.0s (103.0x, 0.0%) ma: 0.3s (30.0x, 3.2%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.5x, -----) me: 8.5s (53.2x, -----) ca:10.7s (66.6x, -----) he: 9.8s (61.1x, -----) ca: 7.7s (47.8x, -----) dr: 7.6s (47.5x, -----) ma: 2.4s (15.2x, -----) tinycc valgrind-old:0.16s no: 1.3s ( 8.4x, 1.5%) me: 8.5s (53.3x, -0.2%) ca:10.6s (66.4x, 0.4%) he: 9.9s (62.1x, -1.7%) ca: 7.6s (47.4x, 0.8%) dr: 7.6s (47.8x, -0.5%) ma: 2.5s (15.3x, -0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 36m9.124s user 34m53.302s sys 0m25.171s |
|
From: Tom H. <to...@co...> - 2014-11-02 03:50:31
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7) GDB: GNU gdb (GDB) Fedora 7.6.1-46.fc19 Assembler: GNU assembler version 2.23.52.0.1-9.fc19 20130226 C library: GNU C Library (GNU libc) stable release version 2.17 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 19 (Schrödingerâs Cat) Nightly build on bristol ( x86_64, Fedora 19 (Schrödingerâs Cat) ) Started at 2014-11-02 02:31:28 GMT Ended at 2014-11-02 03:50:12 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.7s (15.3x, -----) me: 3.5s (31.7x, -----) ca:14.3s (129.7x, -----) he: 2.1s (19.0x, -----) ca: 4.4s (39.6x, -----) dr: 2.0s (18.5x, -----) ma: 2.0s (18.0x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (15.0x, 1.8%) me: 3.5s (31.8x, -0.3%) ca:13.7s (124.2x, 4.3%) he: 2.2s (20.5x, -7.7%) ca: 4.2s (38.5x, 3.0%) dr: 2.1s (18.9x, -2.5%) ma: 2.1s (18.7x, -4.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.4x, -----) me: 9.2s (83.9x, -----) ca:28.1s (255.1x, -----) he: 5.0s (45.1x, -----) ca: 7.5s (68.4x, -----) dr: 4.7s (42.9x, -----) ma: 4.5s (41.1x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.2x, -2.3%) me: 9.0s (81.6x, 2.7%) ca:25.8s (234.9x, 7.9%) he: 5.0s (45.8x, -1.6%) ca: 8.0s (73.0x, -6.8%) dr: 4.8s (43.6x, -1.7%) ma: 4.6s (41.9x, -2.0%) -- bz2 -- bz2 valgrind-new:0.50s no: 1.6s ( 3.2x, -----) me: 5.9s (11.8x, -----) ca:12.4s (24.9x, -----) he: 9.3s (18.6x, -----) ca:11.8s (23.6x, -----) dr:11.0s (21.9x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.50s no: 1.6s ( 3.2x, 1.9%) me: 6.0s (12.0x, -2.2%) ca:12.7s (25.4x, -1.9%) he: 9.2s (18.5x, 0.5%) ca:12.0s (24.0x, -1.7%) dr:11.3s (22.6x, -3.2%) ma: 1.6s ( 3.2x, -1.9%) -- fbench -- fbench valgrind-new:0.22s no: 1.1s ( 4.9x, -----) me: 3.5s (16.0x, -----) ca: 6.0s (27.3x, -----) he: 2.7s (12.4x, -----) ca: 3.3s (15.0x, -----) dr: 2.6s (11.8x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 4.6%) me: 3.8s (17.1x, -6.5%) ca: 6.2s (28.4x, -4.2%) he: 2.7s (12.4x, -0.4%) ca: 3.5s (15.8x, -5.1%) dr: 2.7s (12.2x, -3.1%) ma: 1.1s ( 5.1x, -4.6%) -- ffbench -- ffbench valgrind-new:0.30s no: 1.1s ( 3.6x, -----) me: 3.0s (10.1x, -----) ca: 1.9s ( 6.4x, -----) he: 6.8s (22.6x, -----) ca: 5.0s (16.6x, -----) dr: 3.4s (11.4x, -----) ma: 0.9s ( 3.0x, -----) ffbench valgrind-old:0.30s no: 1.0s ( 3.3x, 9.3%) me: 3.2s (10.8x, -7.6%) ca: 1.9s ( 6.4x, 0.0%) he: 6.8s (22.8x, -0.9%) ca: 5.4s (17.9x, -8.0%) dr: 3.6s (11.9x, -4.4%) ma: 0.9s ( 3.0x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.2s (64.4x, -----) ca: 6.0s (75.4x, -----) he: 7.0s (86.9x, -----) ca: 3.7s (46.8x, -----) dr: 4.3s (54.1x, -----) ma: 5.0s (62.7x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.8x, -1.6%) me: 5.3s (66.4x, -3.1%) ca: 6.1s (76.1x, -1.0%) he: 6.9s (86.1x, 0.9%) ca: 3.7s (45.9x, 1.9%) dr: 4.5s (56.6x, -4.6%) ma: 5.1s (63.4x, -1.0%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.3x, -----) me: 8.9s (80.7x, -----) ca: 6.7s (60.9x, -----) he: 8.2s (74.8x, -----) ca: 4.1s (37.6x, -----) dr: 5.3s (47.8x, -----) ma: 5.1s (46.0x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.2x, 1.4%) me: 8.8s (80.4x, 0.5%) ca: 6.7s (60.6x, 0.4%) he: 8.6s (77.8x, -4.0%) ca: 4.0s (36.3x, 3.6%) dr: 5.2s (46.8x, 2.1%) ma: 5.1s (46.5x, -1.2%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.5s (146.0x, -----) ca: 1.0s (101.0x, -----) he: 1.3s (131.0x, -----) ca: 0.7s (73.0x, -----) dr: 1.2s (123.0x, -----) ma: 1.1s (107.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.5s (146.0x, 0.0%) ca: 1.0s (100.0x, 1.0%) he: 1.3s (131.0x, 0.0%) ca: 0.7s (72.0x, 1.4%) dr: 1.2s (123.0x, 0.0%) ma: 1.1s (110.0x, -2.8%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.7s (56.7x, -----) ca: 2.6s (87.7x, -----) he: 2.3s (77.3x, -----) ca: 1.0s (33.7x, -----) dr: 1.6s (52.0x, -----) ma: 1.6s (53.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.7s (55.7x, 1.8%) ca: 2.6s (87.7x, 0.0%) he: 2.3s (77.3x, 0.0%) ca: 1.0s (33.3x, 1.0%) dr: 1.6s (51.7x, 0.6%) ma: 1.6s (53.3x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.4s (118.0x, -----) ca: 1.7s (86.0x, -----) he: 6.5s (325.5x, -----) ca: 1.0s (50.5x, -----) dr: 1.1s (54.5x, -----) ma: 0.3s (15.5x, -----) sarp valgrind-old:0.02s no: 0.3s (14.5x, -3.6%) me: 2.4s (119.0x, -0.8%) ca: 1.7s (86.0x, 0.0%) he: 6.5s (324.5x, 0.3%) ca: 1.0s (51.0x, -1.0%) dr: 1.1s (54.0x, 0.9%) ma: 0.3s (15.5x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.5x, -----) me: 7.9s (49.2x, -----) ca:10.7s (66.8x, -----) he:10.3s (64.5x, -----) ca: 8.1s (50.4x, -----) dr: 8.2s (51.2x, -----) ma: 2.4s (14.9x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.8x, -2.9%) me: 7.9s (49.6x, -0.8%) ca:12.6s (78.9x,-18.1%) he:10.2s (64.1x, 0.7%) ca: 8.2s (51.2x, -1.6%) dr: 9.1s (56.9x,-11.2%) ma: 2.4s (15.2x, -1.7%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 37m27.147s user 36m9.483s sys 0m26.347s |
|
From: Tom H. <to...@co...> - 2014-11-02 03:39:34
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7) GDB: GNU gdb (GDB) Fedora 7.7.1-21.fc20 Assembler: GNU assembler version 2.23.2 C library: GNU C Library (GNU libc) stable release version 2.18 uname -mrs: Linux 3.16.6-200.fc20.x86_64 x86_64 Vendor version: Fedora 20 (Heisenbug) Nightly build on bristol ( x86_64, Fedora 20 ) Started at 2014-11-02 02:21:42 GMT Ended at 2014-11-02 03:39:15 GMT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) helgrind/tests/hg05_race2 (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 696 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2014-11-02 02:41:35.026495977 +0000 --- new.short 2014-11-02 03:02:01.862481654 +0000 *************** *** 8,11 **** ! == 696 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --- 8,12 ---- ! == 696 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) + helgrind/tests/hg05_race2 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.10s no: 1.6s (16.4x, -----) me: 3.4s (33.6x, -----) ca:13.3s (133.5x, -----) he: 2.1s (20.9x, -----) ca: 4.2s (42.3x, -----) dr: 2.0s (20.2x, -----) ma: 2.0s (19.6x, -----) bigcode1 valgrind-old:0.10s no: 1.7s (16.7x, -1.8%) me: 3.4s (33.5x, 0.3%) ca:13.4s (133.8x, -0.2%) he: 2.1s (20.8x, 0.5%) ca: 4.2s (42.4x, -0.2%) dr: 2.0s (20.4x, -1.0%) ma: 2.0s (19.9x, -1.5%) -- bigcode2 -- bigcode2 valgrind-new:0.12s no: 3.9s (32.4x, -----) me: 8.7s (72.3x, -----) ca:26.3s (219.2x, -----) he: 4.9s (41.0x, -----) ca: 7.5s (62.8x, -----) dr: 4.6s (38.6x, -----) ma: 4.5s (37.8x, -----) bigcode2 valgrind-old:0.12s no: 3.9s (32.3x, 0.3%) me: 8.6s (71.8x, 0.8%) ca:26.0s (216.6x, 1.2%) he: 5.0s (41.4x, -1.0%) ca: 7.5s (62.8x, 0.0%) dr: 4.7s (39.0x, -1.1%) ma: 4.5s (37.7x, 0.2%) -- bz2 -- bz2 valgrind-new:0.50s no: 1.6s ( 3.3x, -----) me: 5.8s (11.6x, -----) ca:12.4s (24.8x, -----) he: 8.4s (16.9x, -----) ca:12.3s (24.7x, -----) dr:10.3s (20.6x, -----) ma: 1.6s ( 3.3x, -----) bz2 valgrind-old:0.50s no: 1.6s ( 3.2x, 0.6%) me: 6.3s (12.6x, -9.3%) ca:12.7s (25.5x, -2.6%) he: 8.4s (16.9x, 0.1%) ca:12.0s (24.0x, 2.8%) dr:10.5s (20.9x, -1.4%) ma: 1.6s ( 3.2x, 3.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.6s (16.2x, -----) ca: 5.5s (25.1x, -----) he: 3.0s (13.9x, -----) ca: 3.3s (15.1x, -----) dr: 2.6s (11.8x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 1.9%) me: 3.5s (15.9x, 2.0%) ca: 5.4s (24.7x, 1.6%) he: 3.1s (14.1x, -1.6%) ca: 3.3s (15.0x, 0.6%) dr: 2.6s (11.9x, -0.8%) ma: 1.1s ( 5.0x, -2.8%) -- ffbench -- ffbench valgrind-new:0.26s no: 1.0s ( 3.7x, -----) me: 3.1s (11.9x, -----) ca: 1.9s ( 7.5x, -----) he: 7.1s (27.3x, -----) ca: 5.1s (19.5x, -----) dr: 3.4s (13.2x, -----) ma: 0.9s ( 3.5x, -----) ffbench valgrind-old:0.26s no: 1.0s ( 3.7x, 1.0%) me: 3.1s (12.0x, -0.6%) ca: 1.9s ( 7.3x, 1.5%) he: 6.6s (25.5x, 6.5%) ca: 5.3s (20.4x, -4.3%) dr: 3.5s (13.7x, -3.2%) ma: 0.9s ( 3.5x, -2.2%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.8x, -----) me: 5.4s (67.6x, -----) ca: 6.7s (83.4x, -----) he: 7.3s (91.8x, -----) ca: 3.6s (45.5x, -----) dr: 4.4s (54.8x, -----) ma: 5.0s (62.5x, -----) heap valgrind-old:0.08s no: 0.6s ( 8.0x, -3.2%) me: 5.2s (65.0x, 3.9%) ca: 6.2s (77.6x, 6.9%) he: 8.8s (110.2x,-20.2%) ca: 3.6s (45.4x, 0.3%) dr: 4.4s (55.0x, -0.5%) ma: 5.0s (62.3x, 0.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 7.4x, -----) me: 9.1s (91.0x, -----) ca: 6.8s (68.1x, -----) he: 8.5s (85.4x, -----) ca: 4.0s (40.0x, -----) dr: 5.0s (49.6x, -----) ma: 5.2s (51.5x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 7.0x, 5.4%) me: 9.4s (93.8x, -3.1%) ca: 6.8s (68.3x, -0.3%) he: 8.0s (79.9x, 6.4%) ca: 4.0s (40.5x, -1.2%) dr: 5.0s (49.5x, 0.2%) ma: 5.2s (51.8x, -0.6%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (27.0x, -----) me: 1.6s (158.0x, -----) ca: 1.1s (110.0x, -----) he: 1.4s (136.0x, -----) ca: 0.7s (72.0x, -----) dr: 1.2s (117.0x, -----) ma: 1.1s (107.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (28.0x, -3.7%) me: 1.5s (151.0x, 4.4%) ca: 1.0s (103.0x, 6.4%) he: 1.4s (140.0x, -2.9%) ca: 0.7s (70.0x, 2.8%) dr: 1.2s (120.0x, -2.6%) ma: 1.1s (111.0x, -3.7%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.7s (57.0x, -----) ca: 2.6s (88.0x, -----) he: 2.3s (77.0x, -----) ca: 1.0s (33.3x, -----) dr: 1.9s (62.3x, -----) ma: 1.6s (54.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (11.3x, -6.2%) me: 1.7s (55.7x, 2.3%) ca: 2.6s (87.3x, 0.8%) he: 2.3s (75.7x, 1.7%) ca: 1.0s (34.0x, -2.0%) dr: 1.7s (55.3x, 11.2%) ma: 1.6s (53.7x, 0.6%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.6s (128.5x, -----) ca: 1.8s (88.0x, -----) he: 6.3s (317.5x, -----) ca: 1.1s (52.5x, -----) dr: 1.1s (56.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.5x, -3.6%) me: 2.4s (121.5x, 5.4%) ca: 1.8s (89.5x, -1.7%) he: 6.3s (313.0x, 1.4%) ca: 1.0s (51.0x, 2.9%) dr: 1.1s (54.0x, 4.4%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.17s no: 1.4s ( 8.4x, -----) me: 8.2s (48.2x, -----) ca:11.2s (65.6x, -----) he:10.9s (64.3x, -----) ca: 8.1s (47.5x, -----) dr: 8.8s (51.5x, -----) ma: 2.5s (14.6x, -----) tinycc valgrind-old:0.17s no: 1.5s ( 8.8x, -5.6%) me: 8.2s (48.2x, 0.1%) ca:11.2s (65.6x, 0.0%) he:10.5s (61.8x, 3.9%) ca: 8.5s (49.9x, -5.1%) dr: 8.4s (49.4x, 4.1%) ma: 2.5s (14.5x, 0.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 37m13.761s user 35m46.686s sys 0m27.076s |
|
From: <ma...@bu...> - 2014-11-02 01:38:51
|
valgrind revision: 14683 VEX revision: 2986 C compiler: gcc (Debian 4.7.2-5) 4.7.2 GDB: GNU gdb (GDB) 7.4.1-debian Assembler: GNU assembler (GNU Binutils for Debian) 2.22 C library: GNU C Library (Debian EGLIBC 2.13-38+deb7u6) stable release version 2.13 uname -mrs: Linux 3.2.0-4-amd64 x86_64 Vendor version: Debian GNU/Linux 7 (wheezy) Nightly build on wildebeest ( Debian 7.7 wheezy x86_64 ) Started at 2014-11-02 00:00:01 UTC Ended at 2014-11-02 01:38:38 UTC Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 684 tests, 0 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.14s no: 2.2s (15.7x, -----) me: 4.7s (33.7x, -----) ca:18.4s (131.2x, -----) he: 2.7s (19.6x, -----) ca: 4.9s (35.0x, -----) dr: 2.8s (20.1x, -----) ma: 2.7s (19.0x, -----) bigcode1 valgrind-old:0.14s no: 2.2s (15.9x, -0.9%) me: 4.6s (32.6x, 3.4%) ca:18.0s (128.3x, 2.2%) he: 2.8s (20.3x, -3.6%) ca: 5.2s (37.1x, -6.1%) dr: 2.7s (19.6x, 2.8%) ma: 2.7s (19.2x, -1.1%) -- bigcode2 -- bigcode2 valgrind-new:0.14s no: 5.4s (38.8x, -----) me:11.8s (84.1x, -----) ca:36.0s (257.1x, -----) he: 6.9s (49.4x, -----) ca: 9.4s (67.4x, -----) dr: 6.3s (44.8x, -----) ma: 6.0s (43.1x, -----) bigcode2 valgrind-old:0.14s no: 5.3s (38.0x, 2.0%) me:12.2s (87.1x, -3.5%) ca:36.3s (259.0x, -0.7%) he: 6.8s (48.4x, 2.0%) ca: 9.5s (67.6x, -0.2%) dr: 6.3s (45.2x, -1.0%) ma: 6.1s (43.6x, -1.2%) -- bz2 -- bz2 valgrind-new:0.73s no: 2.1s ( 2.9x, -----) me: 7.7s (10.5x, -----) ca:15.9s (21.8x, -----) he:11.5s (15.7x, -----) ca:13.7s (18.8x, -----) dr:14.7s (20.1x, -----) ma: 2.2s ( 3.0x, -----) bz2 valgrind-old:0.73s no: 2.1s ( 2.9x, 0.0%) me: 7.6s (10.4x, 1.4%) ca:15.9s (21.8x, 0.3%) he:11.4s (15.6x, 0.6%) ca:14.0s (19.2x, -2.2%) dr:14.3s (19.6x, 2.6%) ma: 2.2s ( 3.0x, -1.4%) -- fbench -- fbench valgrind-new:0.29s no: 1.3s ( 4.6x, -----) me: 4.6s (15.9x, -----) ca: 7.3s (25.1x, -----) he: 3.5s (12.1x, -----) ca: 4.0s (13.8x, -----) dr: 3.4s (11.6x, -----) ma: 1.4s ( 4.8x, -----) fbench valgrind-old:0.29s no: 1.3s ( 4.6x, -1.5%) me: 4.8s (16.6x, -4.8%) ca: 7.4s (25.4x, -1.2%) he: 3.6s (12.4x, -2.3%) ca: 4.2s (14.6x, -5.8%) dr: 3.4s (11.7x, -0.6%) ma: 1.4s ( 4.8x, 0.0%) -- ffbench -- ffbench valgrind-new:0.26s no: 1.3s ( 4.8x, -----) me: 3.9s (14.9x, -----) ca: 2.4s ( 9.2x, -----) he: 9.4s (36.2x, -----) ca: 5.2s (20.0x, -----) dr: 4.7s (18.1x, -----) ma: 1.2s ( 4.8x, -----) ffbench valgrind-old:0.26s no: 1.3s ( 4.8x, 0.0%) me: 3.9s (14.8x, 0.5%) ca: 2.5s ( 9.6x, -4.6%) he: 9.2s (35.6x, 1.6%) ca: 5.4s (20.7x, -3.5%) dr: 4.7s (18.2x, -0.2%) ma: 1.2s ( 4.5x, 6.4%) -- heap -- heap valgrind-new:0.12s no: 0.9s ( 7.7x, -----) me: 7.2s (60.2x, -----) ca: 8.4s (70.3x, -----) he: 9.3s (77.7x, -----) ca: 4.3s (35.7x, -----) dr: 5.7s (47.4x, -----) ma: 6.6s (55.0x, -----) heap valgrind-old:0.12s no: 0.9s ( 7.6x, 1.1%) me: 7.1s (59.2x, 1.7%) ca: 8.0s (67.0x, 4.7%) he: 9.3s (77.2x, 0.6%) ca: 4.2s (34.7x, 2.8%) dr: 5.6s (46.9x, 1.1%) ma: 6.3s (52.5x, 4.5%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.16s no: 1.0s ( 6.1x, -----) me:12.0s (74.9x, -----) ca: 8.5s (53.2x, -----) he:10.8s (67.8x, -----) ca: 4.4s (27.4x, -----) dr: 6.6s (41.0x, -----) ma: 6.7s (41.8x, -----) heap_pdb4 valgrind-old:0.16s no: 1.0s ( 6.1x, 1.0%) me:12.1s (75.6x, -0.9%) ca: 8.5s (53.2x, -0.1%) he:11.1s (69.2x, -2.0%) ca: 4.5s (28.2x, -3.2%) dr: 6.6s (41.2x, -0.6%) ma: 6.5s (40.4x, 3.1%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.4s (36.0x, -----) me: 1.9s (187.0x, -----) ca: 1.4s (137.0x, -----) he: 1.7s (174.0x, -----) ca: 0.9s (87.0x, -----) dr: 1.5s (153.0x, -----) ma: 1.4s (135.0x, -----) many-loss-records valgrind-old:0.01s no: 0.4s (37.0x, -2.8%) me: 1.9s (187.0x, 0.0%) ca: 1.3s (130.0x, 5.1%) he: 1.6s (164.0x, 5.7%) ca: 0.9s (88.0x, -1.1%) dr: 1.5s (152.0x, 0.7%) ma: 1.3s (131.0x, 3.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.4s (11.0x, -----) me: 2.5s (61.5x, -----) ca: 3.4s (85.2x, -----) he: 3.1s (78.5x, -----) ca: 1.2s (30.5x, -----) dr: 1.9s (47.8x, -----) ma: 2.0s (49.5x, -----) many-xpts valgrind-old:0.04s no: 0.4s (11.0x, 0.0%) me: 2.5s (61.2x, 0.4%) ca: 3.4s (85.0x, 0.3%) he: 3.1s (78.0x, 0.6%) ca: 1.2s (30.0x, 1.6%) dr: 1.9s (48.2x, -1.0%) ma: 2.0s (49.8x, -0.5%) -- sarp -- sarp valgrind-new:0.02s no: 0.4s (18.5x, -----) me: 3.1s (157.0x, -----) ca: 2.3s (115.0x, -----) he: 9.8s (491.0x, -----) ca: 1.2s (60.0x, -----) dr: 1.3s (64.0x, -----) ma: 0.4s (20.0x, -----) sarp valgrind-old:0.02s no: 0.4s (18.0x, 2.7%) me: 3.2s (159.0x, -1.3%) ca: 2.3s (113.5x, 1.3%) he:10.1s (507.0x, -3.3%) ca: 1.2s (59.0x, 1.7%) dr: 1.3s (64.0x, 0.0%) ma: 0.4s (21.5x, -7.5%) -- tinycc -- tinycc valgrind-new:0.27s no: 1.8s ( 6.5x, -----) me:11.0s (40.8x, -----) ca:13.5s (49.9x, -----) he:12.8s (47.2x, -----) ca:10.1s (37.4x, -----) dr: 9.7s (36.1x, -----) ma: 3.1s (11.3x, -----) tinycc valgrind-old:0.27s no: 1.8s ( 6.6x, -0.6%) me:10.9s (40.2x, 1.5%) ca:13.6s (50.2x, -0.5%) he:13.0s (48.0x, -1.6%) ca:10.8s (39.9x, -6.8%) dr:10.2s (37.6x, -4.2%) ma: 3.1s (11.4x, -0.3%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= 2725.78user 31.74system 48:24.05elapsed 94%CPU (0avgtext+0avgdata 500668maxresident)k 138152inputs+453080outputs (259major+11733208minor)pagefaults 0swaps Congratulations, all tests passed! |
Author: philippe
Date: Sat Nov 1 22:00:50 2014
New Revision: 14683
Log:
fix 338995 shmat with hugepages (SHM_HUGETLB) fails with EINVAL
Bug is not really fixed, instead the SHM_HUGETLB flag is ignored.
Note that it is not straightforward to properly fix this,
as this implies either to learn aspacemgr what huge pages are.
Also, the trick used in the fix for 333051 cannot be used easily,
because the SHM_HUGETLB flag is given in shmget, while the mmap
is done in shmat.
So, the easiest is to just ignore the SHM_HUGETLB flag.
SHM_HUGETLB is supposed to only give a performance impact.
Ignoring it should be benign.
Theoretically, the caller might expect a sucessful shmget(SHM_HUGETLB)+shmat
to give pages aligned on e.g. 1MB.
In this case, bad luck, the program will misbehave under valgrind.
To warn of this, a warning is given (once) when SHM_HUGETLB is seen.
The map_unmap.c test has been restructured somewaht to allow
TEST_SHM_HUGETLB to be tested independently (or not) of the TEST_MAP_HUGETLB.
Note also that by default, testing MAP_HUGETLB and SHM_HUGETLB
is disabled as usually, huge pages are not enabled.
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-darwin.c
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/include/vki/vki-linux.h
trunk/none/tests/map_unmap.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sat Nov 1 22:00:50 2014
@@ -31,6 +31,7 @@
335440 arm64: ld1 (single structure) is not implemented
335713 arm64: unhanded instruction: prfm (immediate)
338731 ppc: Fix testuite build for toolchains not supporting -maltivec
+338995 shmat with hugepages (SHM_HUGETLB) fails with EINVAL
339020 ppc64: memcheck/tests/ppc64/power_ISA2_05 failing in nightly build
339156 gdbsrv not called for fatal signal
339442 Fix testsuite build failure on OS X 10.9
Modified: trunk/coregrind/m_syswrap/syswrap-darwin.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-darwin.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-darwin.c Sat Nov 1 22:00:50 2014
@@ -2310,6 +2310,15 @@
{
PRINT("shmget ( %ld, %ld, %ld )",ARG1,ARG2,ARG3);
PRE_REG_READ3(long, "shmget", vki_key_t, key, vki_size_t, size, int, shmflg);
+ if (ARG3 & VKI_SHM_HUGETLB) {
+ static Bool warning_given = False;
+ ARG3 &= ~VKI_SHM_HUGETLB;
+ if (!warning_given) {
+ warning_given = True;
+ VG_(umsg)(
+ "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
+ }
+ }
}
PRE(shm_open)
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c Sat Nov 1 22:00:50 2014
@@ -3593,6 +3593,15 @@
case VKI_SHMGET:
PRE_REG_READ4(int, "ipc",
vki_uint, call, int, first, int, second, int, third);
+ if (ARG4 & VKI_SHM_HUGETLB) {
+ static Bool warning_given = False;
+ ARG4 &= ~VKI_SHM_HUGETLB;
+ if (!warning_given) {
+ warning_given = True;
+ VG_(umsg)(
+ "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
+ }
+ }
break;
case VKI_SHMCTL: /* IPCOP_shmctl */
PRE_REG_READ5(int, "ipc",
@@ -3795,6 +3804,15 @@
{
PRINT("sys_shmget ( %ld, %ld, %ld )",ARG1,ARG2,ARG3);
PRE_REG_READ3(long, "shmget", vki_key_t, key, vki_size_t, size, int, shmflg);
+ if (ARG3 & VKI_SHM_HUGETLB) {
+ static Bool warning_given = False;
+ ARG3 &= ~VKI_SHM_HUGETLB;
+ if (!warning_given) {
+ warning_given = True;
+ VG_(umsg)(
+ "WARNING: valgrind ignores shmget(shmflg) SHM_HUGETLB\n");
+ }
+ }
}
PRE(wrap_sys_shmat)
Modified: trunk/include/vki/vki-linux.h
==============================================================================
--- trunk/include/vki/vki-linux.h (original)
+++ trunk/include/vki/vki-linux.h Sat Nov 1 22:00:50 2014
@@ -1160,6 +1160,9 @@
#define VKI_IPC_64 0x0100 /* New version (support 32-bit UIDs, bigger
message sizes, etc. */
+// From /usr/include/bits/shm.h
+# define VKI_SHM_HUGETLB 04000
+
//----------------------------------------------------------------------
// From linux-2.6.8.1/include/linux/sem.h
Modified: trunk/none/tests/map_unmap.c
==============================================================================
--- trunk/none/tests/map_unmap.c (original)
+++ trunk/none/tests/map_unmap.c Sat Nov 1 22:00:50 2014
@@ -10,7 +10,7 @@
echo 20 > /proc/sys/vm/nr_hugepages
Once this is done, uncomment the below, and recompile.
*/
-// #define TEST_MAP_HUGETLB 1
+//#define TEST_MAP_HUGETLB 1
/* Similarly, testing SHM_HUGETLB huge pages is disabled by default.
To have shmget/shmat big pages working, do (as root)
@@ -18,13 +18,12 @@
where 500 is the groupid of the user that runs this test
Once this is done, uncomment the below, and recompile.
*/
-// #define TEST_SHM_HUGETLB 1
+//#define TEST_SHM_HUGETLB 1
-#ifdef TEST_MAP_HUGETLB
-#include <sys/ipc.h>
-#include <sys/shm.h>
-#include <sys/stat.h>
+// Size to use for huge pages
+#define HUGESZ (4 * 1024 * 1024)
+#ifdef TEST_MAP_HUGETLB
/* Ensure this compiles on pre 2.6 systems, or on glibc missing MAP_HUGETLB */
#ifndef MAP_HUGETLB
/* The below works for me on an f12/x86 linux */
@@ -34,6 +33,9 @@
#endif /* TEST_MAP_HUGETLB */
#ifdef TEST_SHM_HUGETLB
+#include <sys/ipc.h>
+#include <sys/shm.h>
+#include <sys/stat.h>
#ifndef SHM_HUGETLB
#define SHM_HUGETLB 04000
#endif
@@ -114,7 +116,6 @@
}
#ifdef TEST_MAP_HUGETLB
-#define HUGESZ (4 * 1024 * 1024)
{
void *expect3;
expect3 = domap(HUGESZ, MAP_HUGETLB);
|
|
From: <sv...@va...> - 2014-11-01 21:02:22
|
Author: philippe
Date: Sat Nov 1 21:02:13 2014
New Revision: 14682
Log:
Fix 333051 mmap of huge pages fails due to incorrect alignment
Learning aspacemgr to handle huge page is too difficult.
So, huge page requests that fails due to bad advice by aspacemgr
will (we hope) succeed if a mmap retry is done with the kernel,
without any constraints.
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-generic.c
trunk/none/tests/map_unmap.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sat Nov 1 21:02:13 2014
@@ -27,6 +27,7 @@
https://bugs.kde.org/show_bug.cgi?id=XXXXXX
where XXXXXX is the bug number as listed below.
+333051 mmap of huge pages fails due to incorrect alignment
335440 arm64: ld1 (single structure) is not implemented
335713 arm64: unhanded instruction: prfm (immediate)
338731 ppc: Fix testuite build for toolchains not supporting -maltivec
Modified: trunk/coregrind/m_syswrap/syswrap-generic.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-generic.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-generic.c Sat Nov 1 21:02:13 2014
@@ -2214,6 +2214,33 @@
arg5, arg6);
}
+ /* Yet another refinement : sometimes valgrind chooses an address
+ which is not acceptable by the kernel. This at least happens
+ when mmap-ing huge pages, using the flag MAP_HUGETLB.
+ valgrind aspacem does not know about huge pages, and modifying
+ it to handle huge pages is not straightforward (e.g. need
+ to understand special file system mount options).
+ So, let's just redo an mmap, without giving any constraint to
+ the kernel. If that succeeds, check with aspacem that the returned
+ address is acceptable (i.e. is free).
+ This will give a similar effect as if the user would have
+ specified a MAP_FIXED at that address.
+ The aspacem state will be correctly updated afterwards.
+ We however cannot do this last refinement when the user asked
+ for a fixed mapping, as the user asked a specific address. */
+ if (sr_isError(sres) && !(arg4 & VKI_MAP_FIXED)) {
+ advised = 0;
+ /* try mmap with NULL address and without VKI_MAP_FIXED
+ to let the kernel decide. */
+ sres = VG_(am_do_mmap_NO_NOTIFY)(advised, arg2, arg3,
+ arg4,
+ arg5, arg6);
+ if (!sr_isError(sres)) {
+ vg_assert(VG_(am_covered_by_single_free_segment)((Addr)sr_Res(sres),
+ arg2));
+ }
+ }
+
if (!sr_isError(sres)) {
ULong di_handle;
/* Notify aspacem. */
Modified: trunk/none/tests/map_unmap.c
==============================================================================
--- trunk/none/tests/map_unmap.c (original)
+++ trunk/none/tests/map_unmap.c Sat Nov 1 21:02:13 2014
@@ -3,14 +3,50 @@
#include <stdlib.h>
#include <unistd.h>
+/* The code testing MAP_HUGETLB huge pages is disabled by default,
+ as many distros do not have huge pages configured
+ by default.
+ To have e.g. 20 huge pages configured, do (as root)
+ echo 20 > /proc/sys/vm/nr_hugepages
+ Once this is done, uncomment the below, and recompile.
+*/
+// #define TEST_MAP_HUGETLB 1
+
+/* Similarly, testing SHM_HUGETLB huge pages is disabled by default.
+ To have shmget/shmat big pages working, do (as root)
+ echo 500 > /proc/sys/vm/hugetlb_shm_group
+ where 500 is the groupid of the user that runs this test
+ Once this is done, uncomment the below, and recompile.
+*/
+// #define TEST_SHM_HUGETLB 1
+
+#ifdef TEST_MAP_HUGETLB
+#include <sys/ipc.h>
+#include <sys/shm.h>
+#include <sys/stat.h>
+
+/* Ensure this compiles on pre 2.6 systems, or on glibc missing MAP_HUGETLB */
+#ifndef MAP_HUGETLB
+/* The below works for me on an f12/x86 linux */
+#define MAP_HUGETLB 0x40000
+#endif
+
+#endif /* TEST_MAP_HUGETLB */
+
+#ifdef TEST_SHM_HUGETLB
+#ifndef SHM_HUGETLB
+#define SHM_HUGETLB 04000
+#endif
+#endif /* TEST_SHM_HUGETLB */
+
static unsigned int pagesize;
#define PAGES 1024u
#define LEN (PAGES*pagesize)
-static void *domap(void)
+static void *domap(size_t len, int addflags)
{
- void *ret = mmap(0, LEN, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
+ void *ret = mmap(0, len, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|addflags, -1, 0);
if (ret == (void *)-1) {
perror("mmap");
@@ -51,22 +87,22 @@
pagesize = getpagesize();
- expect1 = domap();
- expect2 = domap();
+ expect1 = domap(LEN, 0);
+ expect2 = domap(LEN, 0);
munmap(expect1, LEN);
munmap(expect2, LEN);
for(i = 0; i < 5; i++) {
void *m1, *m2;
- m1 = domap();
+ m1 = domap(LEN, 0);
if (m1 != expect1) {
printf("FAIL i=%d: m1=%p expect1=%p\n",
i, m1, expect1);
prmaps();
return 1;
}
- m2 = domap();
+ m2 = domap(LEN, 0);
if (m2 != expect2) {
printf("FAIL i=%d: m2=%p expect2=%p\n",
i, m2, expect2);
@@ -76,7 +112,44 @@
nibblemap(m2);
munmap(m1, LEN);
}
-
+
+#ifdef TEST_MAP_HUGETLB
+#define HUGESZ (4 * 1024 * 1024)
+ {
+ void *expect3;
+ expect3 = domap(HUGESZ, MAP_HUGETLB);
+ munmap(expect3, HUGESZ);
+ }
+#endif
+
+#ifdef TEST_SHM_HUGETLB
+ {
+ int shmid;
+ void *expect4;
+
+
+ shmid = shmget(IPC_PRIVATE, HUGESZ,
+ IPC_CREAT | IPC_EXCL | S_IRUSR | S_IWUSR | SHM_HUGETLB);
+ if (shmid == -1) {
+ perror("shmget");
+ exit(1);
+ }
+ expect4 = shmat(shmid, NULL, 0);
+ if (expect4 == (void*) -1){
+ perror("shmat");
+ exit(1);
+ }
+ if (shmdt(expect4) != 0) {
+ perror("shmdt");
+ exit(1);
+ }
+ if (shmctl(shmid, IPC_RMID, 0) != 0) {
+ perror("shmctl IPC_RMID");
+ exit(1);
+ }
+ }
+#endif
+
printf("PASS\n");
return 0;
}
|
|
From: Philippe W. <phi...@sk...> - 2014-11-01 16:25:13
|
On Wed, 2014-10-29 at 06:19 +0100, Ivo Raisr wrote: > I would like to address this shortcoming so the results are more > indicative. > > Although vg_perf offers '--reps' option, it just chooses the best > running time; > > so it does not help here. > > > One possible approach would be to run a test as many times as required > to cover let's say 1 second during native run. And so many runs will > be used > for running instrumented. However this approach will measure mainly > the > > start program sequence in case of short tests. For sure, the perf tests are far to be perfect. A.o., as you say, the perf ratio with native run is heavily skewed by small variations. We also just have significant variations in a test (e.g. memcheck) between multiple runs. So, would be nice to have something better. > > > So I was thinking about different approach where the running time of > tests will be first > > normalized (increasing or reducing work) so they finish roughly in the > same time for > > native run. All tests will also accept command line option for the > number of main iterations > to be performed. When vg_perf starts, it will measure time required to > perform 1 iteration > of a representative test. And according to this measurement, it will > adjust automatically > > the number of iterations passed to each test so that every native test > runs roughly let's > say for 1 second. This approach will have as disadvantage that we cannot compare anymore different platforms together. Also, to keep the performance ratio correct, it means that the nr of iterations needed will have to be propagated from the native run to the run under the various tools. The perf tests will then run even more slowly (e.g. on ppc64, the perf tests takes about one hour). So, I am not too sure about what to do. Typically, "rich" projects similar to valgrind have access to tests such as "SPEC" and use that to compare to valgrind. But these tests are to my knowledge not free (both in terms of free beer and free speech). Does someone know about good free perf tests ? > > > I am writing on valgrind-developers and not submitting a bug report > because > > I would like to solicit opinions first. And because bug reports seem > to be unhandled > and forgotten. True, but posts on valgrind developers tend also to be forgotten :). Philippe |
|
From: <sv...@va...> - 2014-11-01 12:05:22
|
Author: sewardj
Date: Sat Nov 1 12:05:09 2014
New Revision: 14681
Log:
Rearrange the test case generators to be exactly in the same order
that they are called, so as to make future editing easier. And
generally tidy up. No functional change.
Modified:
trunk/none/tests/arm64/fp_and_simd.c
trunk/none/tests/arm64/fp_and_simd.stdout.exp
Modified: trunk/none/tests/arm64/fp_and_simd.c
==============================================================================
--- trunk/none/tests/arm64/fp_and_simd.c (original)
+++ trunk/none/tests/arm64/fp_and_simd.c Sat Nov 1 12:05:09 2014
@@ -90,7 +90,7 @@
/* ---------------------------------------------------------------- */
-/* -- Test functions -- */
+/* -- Test macros -- */
/* ---------------------------------------------------------------- */
/* Note this also sets the destination register to a known value (0x55..55)
@@ -292,6 +292,10 @@
}
+/* ---------------------------------------------------------------- */
+/* -- Test functions -- */
+/* ---------------------------------------------------------------- */
+
void test_UMINV ( void )
{
int i;
@@ -887,347 +891,314 @@
}
-GEN_BINARY_TEST(umax, 4s, 4s, 4s)
-GEN_BINARY_TEST(umax, 2s, 2s, 2s)
-GEN_BINARY_TEST(umax, 8h, 8h, 8h)
-GEN_BINARY_TEST(umax, 4h, 4h, 4h)
-GEN_BINARY_TEST(umax, 16b, 16b, 16b)
-GEN_BINARY_TEST(umax, 8b, 8b, 8b)
+/* ---------------------------------------------------------------- */
+/* -- Tests, in the same order that they appear in main() -- */
+/* ---------------------------------------------------------------- */
-GEN_BINARY_TEST(umin, 4s, 4s, 4s)
-GEN_BINARY_TEST(umin, 2s, 2s, 2s)
-GEN_BINARY_TEST(umin, 8h, 8h, 8h)
-GEN_BINARY_TEST(umin, 4h, 4h, 4h)
-GEN_BINARY_TEST(umin, 16b, 16b, 16b)
-GEN_BINARY_TEST(umin, 8b, 8b, 8b)
+// ======================== FP ========================
-GEN_BINARY_TEST(smax, 4s, 4s, 4s)
-GEN_BINARY_TEST(smax, 2s, 2s, 2s)
-GEN_BINARY_TEST(smax, 8h, 8h, 8h)
-GEN_BINARY_TEST(smax, 4h, 4h, 4h)
-GEN_BINARY_TEST(smax, 16b, 16b, 16b)
-GEN_BINARY_TEST(smax, 8b, 8b, 8b)
+GEN_TWOVEC_TEST(fabs_d_d, "fabs d22, d23", 22, 23)
+GEN_TWOVEC_TEST(fabs_s_s, "fabs s22, s23", 22, 23)
+GEN_TWOVEC_TEST(fabs_2d_2d, "fabs v22.2d, v23.2d", 22, 23)
+GEN_TWOVEC_TEST(fabs_4s_4s, "fabs v22.4s, v23.4s", 22, 23)
+GEN_TWOVEC_TEST(fabs_2s_2s, "fabs v22.2s, v23.2s", 22, 23)
+
+GEN_TWOVEC_TEST(fneg_d_d, "fneg d22, d23", 22, 23)
+GEN_TWOVEC_TEST(fneg_s_s, "fneg s22, s23", 22, 23)
+GEN_TWOVEC_TEST(fneg_2d_2d, "fneg v22.2d, v23.2d", 22, 23)
+GEN_TWOVEC_TEST(fneg_4s_4s, "fneg v22.4s, v23.4s", 22, 23)
+GEN_TWOVEC_TEST(fneg_2s_2s, "fneg v22.2s, v23.2s", 22, 23)
+
+GEN_TWOVEC_TEST(fsqrt_d_d, "fsqrt d22, d23", 22, 23)
+GEN_TWOVEC_TEST(fsqrt_s_s, "fsqrt s22, s23", 22, 23)
+GEN_TWOVEC_TEST(fsqrt_2d_2d, "fsqrt v22.2d, v23.2d", 22, 23)
+GEN_TWOVEC_TEST(fsqrt_4s_4s, "fsqrt v22.4s, v23.4s", 22, 23)
+GEN_TWOVEC_TEST(fsqrt_2s_2s, "fsqrt v22.2s, v23.2s", 22, 23)
-GEN_BINARY_TEST(smin, 4s, 4s, 4s)
-GEN_BINARY_TEST(smin, 2s, 2s, 2s)
-GEN_BINARY_TEST(smin, 8h, 8h, 8h)
-GEN_BINARY_TEST(smin, 4h, 4h, 4h)
-GEN_BINARY_TEST(smin, 16b, 16b, 16b)
-GEN_BINARY_TEST(smin, 8b, 8b, 8b)
+GEN_THREEVEC_TEST(fadd_d_d_d, "fadd d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fadd_s_s_s, "fadd s2, s11, s29", 2, 11, 29)
+GEN_THREEVEC_TEST(fsub_d_d_d, "fsub d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fsub_s_s_s, "fsub s2, s11, s29", 2, 11, 29)
-GEN_BINARY_TEST(add, 2d, 2d, 2d)
-GEN_BINARY_TEST(add, 4s, 4s, 4s)
-GEN_BINARY_TEST(add, 2s, 2s, 2s)
-GEN_BINARY_TEST(add, 8h, 8h, 8h)
-GEN_BINARY_TEST(add, 4h, 4h, 4h)
-GEN_BINARY_TEST(add, 16b, 16b, 16b)
-GEN_BINARY_TEST(add, 8b, 8b, 8b)
+GEN_BINARY_TEST(fadd, 2d, 2d, 2d)
+GEN_BINARY_TEST(fadd, 4s, 4s, 4s)
+GEN_BINARY_TEST(fadd, 2s, 2s, 2s)
+GEN_BINARY_TEST(fsub, 2d, 2d, 2d)
+GEN_BINARY_TEST(fsub, 4s, 4s, 4s)
+GEN_BINARY_TEST(fsub, 2s, 2s, 2s)
-GEN_BINARY_TEST(sub, 2d, 2d, 2d)
-GEN_BINARY_TEST(sub, 4s, 4s, 4s)
-GEN_BINARY_TEST(sub, 2s, 2s, 2s)
-GEN_BINARY_TEST(sub, 8h, 8h, 8h)
-GEN_BINARY_TEST(sub, 4h, 4h, 4h)
-GEN_BINARY_TEST(sub, 16b, 16b, 16b)
-GEN_BINARY_TEST(sub, 8b, 8b, 8b)
+GEN_THREEVEC_TEST(fabd_d_d_d, "fabd d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fabd_s_s_s, "fabd s2, s11, s29", 2, 11, 29)
+GEN_BINARY_TEST(fabd, 2d, 2d, 2d)
+GEN_BINARY_TEST(fabd, 4s, 4s, 4s)
+GEN_BINARY_TEST(fabd, 2s, 2s, 2s)
-GEN_BINARY_TEST(mul, 4s, 4s, 4s)
-GEN_BINARY_TEST(mul, 2s, 2s, 2s)
-GEN_BINARY_TEST(mul, 8h, 8h, 8h)
-GEN_BINARY_TEST(mul, 4h, 4h, 4h)
-GEN_BINARY_TEST(mul, 16b, 16b, 16b)
-GEN_BINARY_TEST(mul, 8b, 8b, 8b)
+GEN_TWOVEC_TEST(faddp_d_2d, "faddp d2, v23.2d", 2, 23)
+GEN_TWOVEC_TEST(faddp_s_2s, "faddp s2, v23.2s", 2, 23)
+GEN_THREEVEC_TEST(faddp_2d_2d_2d, "faddp v2.2d, v23.2d, v11.2d", 2, 23, 11)
+GEN_THREEVEC_TEST(faddp_4s_4s_4s, "faddp v2.4s, v23.4s, v11.4s", 2, 23, 11)
+GEN_THREEVEC_TEST(faddp_2s_2s_2s, "faddp v2.2s, v23.2s, v11.2s", 2, 23, 11)
+
+// fccmp d,s
+// fccmpe d,s
+
+// fcmeq d,s
+// fcmge d,s
+// fcmgt d,s
+// facgt d,s (floating abs compare GE)
+// facge d,s (floating abs compare GE)
-GEN_BINARY_TEST(mla, 4s, 4s, 4s)
-GEN_BINARY_TEST(mla, 2s, 2s, 2s)
-GEN_BINARY_TEST(mla, 8h, 8h, 8h)
-GEN_BINARY_TEST(mla, 4h, 4h, 4h)
-GEN_BINARY_TEST(mla, 16b, 16b, 16b)
-GEN_BINARY_TEST(mla, 8b, 8b, 8b)
+GEN_BINARY_TEST(fcmeq, 2d, 2d, 2d)
+GEN_BINARY_TEST(fcmeq, 4s, 4s, 4s)
+GEN_BINARY_TEST(fcmeq, 2s, 2s, 2s)
+GEN_BINARY_TEST(fcmge, 2d, 2d, 2d)
+GEN_BINARY_TEST(fcmge, 4s, 4s, 4s)
+GEN_BINARY_TEST(fcmge, 2s, 2s, 2s)
+GEN_BINARY_TEST(fcmgt, 2d, 2d, 2d)
+GEN_BINARY_TEST(fcmgt, 4s, 4s, 4s)
+GEN_BINARY_TEST(fcmgt, 2s, 2s, 2s)
+GEN_BINARY_TEST(facge, 2d, 2d, 2d)
+GEN_BINARY_TEST(facge, 4s, 4s, 4s)
+GEN_BINARY_TEST(facge, 2s, 2s, 2s)
+GEN_BINARY_TEST(facgt, 2d, 2d, 2d)
+GEN_BINARY_TEST(facgt, 4s, 4s, 4s)
+GEN_BINARY_TEST(facgt, 2s, 2s, 2s)
-GEN_BINARY_TEST(mls, 4s, 4s, 4s)
-GEN_BINARY_TEST(mls, 2s, 2s, 2s)
-GEN_BINARY_TEST(mls, 8h, 8h, 8h)
-GEN_BINARY_TEST(mls, 4h, 4h, 4h)
-GEN_BINARY_TEST(mls, 16b, 16b, 16b)
-GEN_BINARY_TEST(mls, 8b, 8b, 8b)
+// fcmeq_z d,s
+// fcmge_z d,s
+// fcmgt_z d,s
+// fcmle_z d,s
+// fcmlt_z d,s
+
+// fcmeq_z 2d,4s,2s
+// fcmge_z 2d,4s,2s
+// fcmgt_z 2d,4s,2s
+// fcmle_z 2d,4s,2s
+// fcmlt_z 2d,4s,2s
+
+// fcmp_z d,s
+// fcmpe_z d,s
+// fcmp d,s (floating point quiet, set flags)
+// fcmpe d,s (floating point signaling, set flags)
-GEN_BINARY_TEST(and, 16b, 16b, 16b)
-GEN_BINARY_TEST(and, 8b, 8b, 8b)
+// fcsel d,s (fp cond select)
-GEN_BINARY_TEST(bic, 16b, 16b, 16b)
-GEN_BINARY_TEST(bic, 8b, 8b, 8b)
+GEN_THREEVEC_TEST(fdiv_d_d_d, "fdiv d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fdiv_s_s_s, "fdiv s2, s11, s29", 2, 11, 29)
+GEN_BINARY_TEST(fdiv, 2d, 2d, 2d)
+GEN_BINARY_TEST(fdiv, 4s, 4s, 4s)
+GEN_BINARY_TEST(fdiv, 2s, 2s, 2s)
-GEN_BINARY_TEST(orr, 16b, 16b, 16b)
-GEN_BINARY_TEST(orr, 8b, 8b, 8b)
+// fmadd d,s
+// fnmadd d,s
+// fmsub d,s
+// fnmsub d,s
-GEN_BINARY_TEST(orn, 16b, 16b, 16b)
-GEN_BINARY_TEST(orn, 8b, 8b, 8b)
+GEN_THREEVEC_TEST(fnmul_d_d_d, "fnmul d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fnmul_s_s_s, "fnmul s2, s11, s29", 2, 11, 29)
-GEN_BINARY_TEST(eor, 16b, 16b, 16b)
-GEN_BINARY_TEST(eor, 8b, 8b, 8b)
+// fmax d,s
+// fmin d,s
+// fmaxnm d,s ("max number")
+// fminnm d,s
-GEN_BINARY_TEST(bsl, 16b, 16b, 16b)
-GEN_BINARY_TEST(bsl, 8b, 8b, 8b)
+// fmax 2d,4s,2s
+// fmin 2d,4s,2s
+// fmaxnm 2d,4s,2s
+// fminnm 2d,4s,2s
-GEN_BINARY_TEST(bit, 16b, 16b, 16b)
-GEN_BINARY_TEST(bit, 8b, 8b, 8b)
+// fmaxnmp d_2d,s_2s ("max number pairwise")
+// fminnmp d_2d,s_2s
-GEN_BINARY_TEST(bif, 16b, 16b, 16b)
-GEN_BINARY_TEST(bif, 8b, 8b, 8b)
+// fmaxnmp 2d,4s,2s
+// fminnmp 2d,4s,2s
-GEN_BINARY_TEST(cmeq, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmeq, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmeq, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmeq, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmeq, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmeq, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmeq, 8b, 8b, 8b)
+// fmaxnmv s_4s (maxnum across vector)
+// fminnmv s_4s
-GEN_BINARY_TEST(cmtst, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmtst, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmtst, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmtst, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmtst, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmtst, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmtst, 8b, 8b, 8b)
+// fmaxp d_2d,s_2s (max of a pair)
+// fminp d_2d,s_2s (max of a pair)
-GEN_BINARY_TEST(cmhi, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmhi, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmhi, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmhi, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmhi, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmhi, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmhi, 8b, 8b, 8b)
+// fmaxp 2d,4s,2s (max pairwise)
+// fminp 2d,4s,2s
-GEN_BINARY_TEST(cmgt, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmgt, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmgt, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmgt, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmgt, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmgt, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmgt, 8b, 8b, 8b)
+// fmaxv s_4s (max across vector)
+// fminv s_4s
-GEN_BINARY_TEST(cmhs, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmhs, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmhs, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmhs, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmhs, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmhs, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmhs, 8b, 8b, 8b)
+// FIXME these need to be THREEVEC
+GEN_BINARY_TEST(fmla, 2d, 2d, 2d)
+GEN_BINARY_TEST(fmla, 4s, 4s, 4s)
+GEN_BINARY_TEST(fmla, 2s, 2s, 2s)
+GEN_BINARY_TEST(fmls, 2d, 2d, 2d)
+GEN_BINARY_TEST(fmls, 4s, 4s, 4s)
+GEN_BINARY_TEST(fmls, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmge, 2d, 2d, 2d)
-GEN_BINARY_TEST(cmge, 4s, 4s, 4s)
-GEN_BINARY_TEST(cmge, 2s, 2s, 2s)
-GEN_BINARY_TEST(cmge, 8h, 8h, 8h)
-GEN_BINARY_TEST(cmge, 4h, 4h, 4h)
-GEN_BINARY_TEST(cmge, 16b, 16b, 16b)
-GEN_BINARY_TEST(cmge, 8b, 8b, 8b)
+// fmla d_d_d[],s_s_s[] (by element)
+// fmls d_d_d[],s_s_s[] (by element)
-GEN_SHIFT_TEST(ushr, 2d, 2d, 1)
-GEN_SHIFT_TEST(ushr, 2d, 2d, 13)
-GEN_SHIFT_TEST(ushr, 2d, 2d, 64)
-GEN_SHIFT_TEST(sshr, 2d, 2d, 1)
-GEN_SHIFT_TEST(sshr, 2d, 2d, 13)
-GEN_SHIFT_TEST(sshr, 2d, 2d, 64)
-GEN_SHIFT_TEST(shl, 2d, 2d, 0)
-GEN_SHIFT_TEST(shl, 2d, 2d, 13)
-GEN_SHIFT_TEST(shl, 2d, 2d, 63)
+GEN_THREEVEC_TEST(fmla_2d_2d_d0, "fmla v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_2d_2d_d1, "fmla v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_4s_4s_s0, "fmla v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_4s_4s_s3, "fmla v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_2s_2s_s0, "fmla v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmla_2s_2s_s3, "fmla v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
-GEN_SHIFT_TEST(ushr, 4s, 4s, 1)
-GEN_SHIFT_TEST(ushr, 4s, 4s, 13)
-GEN_SHIFT_TEST(ushr, 4s, 4s, 32)
-GEN_SHIFT_TEST(sshr, 4s, 4s, 1)
-GEN_SHIFT_TEST(sshr, 4s, 4s, 13)
-GEN_SHIFT_TEST(sshr, 4s, 4s, 32)
-GEN_SHIFT_TEST(shl, 4s, 4s, 0)
-GEN_SHIFT_TEST(shl, 4s, 4s, 13)
-GEN_SHIFT_TEST(shl, 4s, 4s, 31)
+GEN_THREEVEC_TEST(fmls_2d_2d_d0, "fmls v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_2d_2d_d1, "fmls v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_4s_4s_s0, "fmls v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_4s_4s_s3, "fmls v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_2s_2s_s0, "fmls v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmls_2s_2s_s3, "fmls v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
-GEN_SHIFT_TEST(ushr, 2s, 2s, 1)
-GEN_SHIFT_TEST(ushr, 2s, 2s, 13)
-GEN_SHIFT_TEST(ushr, 2s, 2s, 32)
-GEN_SHIFT_TEST(sshr, 2s, 2s, 1)
-GEN_SHIFT_TEST(sshr, 2s, 2s, 13)
-GEN_SHIFT_TEST(sshr, 2s, 2s, 32)
-GEN_SHIFT_TEST(shl, 2s, 2s, 0)
-GEN_SHIFT_TEST(shl, 2s, 2s, 13)
-GEN_SHIFT_TEST(shl, 2s, 2s, 31)
+GEN_TWOVEC_TEST(fmov_2d_imm_01, "fmov v22.2d, #0.125", 22, 23)
+GEN_TWOVEC_TEST(fmov_2d_imm_02, "fmov v22.2d, #-4.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_2d_imm_03, "fmov v22.2d, #1.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_4s_imm_01, "fmov v22.4s, #0.125", 22, 23)
+GEN_TWOVEC_TEST(fmov_4s_imm_02, "fmov v22.4s, #-4.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_4s_imm_03, "fmov v22.4s, #1.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_2s_imm_01, "fmov v22.2s, #0.125", 22, 23)
+GEN_TWOVEC_TEST(fmov_2s_imm_02, "fmov v22.2s, #-4.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_2s_imm_03, "fmov v22.2s, #1.0", 22, 23)
-GEN_SHIFT_TEST(ushr, 8h, 8h, 1)
-GEN_SHIFT_TEST(ushr, 8h, 8h, 13)
-GEN_SHIFT_TEST(ushr, 8h, 8h, 16)
-GEN_SHIFT_TEST(sshr, 8h, 8h, 1)
-GEN_SHIFT_TEST(sshr, 8h, 8h, 13)
-GEN_SHIFT_TEST(sshr, 8h, 8h, 16)
-GEN_SHIFT_TEST(shl, 8h, 8h, 0)
-GEN_SHIFT_TEST(shl, 8h, 8h, 13)
-GEN_SHIFT_TEST(shl, 8h, 8h, 15)
+GEN_TWOVEC_TEST(fmov_d_d, "fmov d22, d23", 22, 23)
+GEN_TWOVEC_TEST(fmov_s_s, "fmov s22, s23", 22, 23)
-GEN_SHIFT_TEST(ushr, 4h, 4h, 1)
-GEN_SHIFT_TEST(ushr, 4h, 4h, 13)
-GEN_SHIFT_TEST(ushr, 4h, 4h, 16)
-GEN_SHIFT_TEST(sshr, 4h, 4h, 1)
-GEN_SHIFT_TEST(sshr, 4h, 4h, 13)
-GEN_SHIFT_TEST(sshr, 4h, 4h, 16)
-GEN_SHIFT_TEST(shl, 4h, 4h, 0)
-GEN_SHIFT_TEST(shl, 4h, 4h, 13)
-GEN_SHIFT_TEST(shl, 4h, 4h, 15)
+GEN_ONEINT_ONEVEC_TEST(fmov_s_w, "fmov s7, w15", 15, 7)
+GEN_ONEINT_ONEVEC_TEST(fmov_d_x, "fmov d7, x15", 15, 7)
+GEN_ONEINT_ONEVEC_TEST(fmov_d1_x, "fmov v7.d[1], x15", 15, 7)
+GEN_ONEINT_ONEVEC_TEST(fmov_w_s, "fmov w15, s7", 15, 7)
+GEN_ONEINT_ONEVEC_TEST(fmov_x_d, "fmov x15, d7", 15, 7)
+GEN_ONEINT_ONEVEC_TEST(fmov_x_d1, "fmov x15, v7.d[1]", 15, 7)
-GEN_SHIFT_TEST(ushr, 16b, 16b, 1)
-GEN_SHIFT_TEST(ushr, 16b, 16b, 8)
-GEN_SHIFT_TEST(sshr, 16b, 16b, 1)
-GEN_SHIFT_TEST(sshr, 16b, 16b, 8)
-GEN_SHIFT_TEST(shl, 16b, 16b, 0)
-GEN_SHIFT_TEST(shl, 16b, 16b, 7)
+/* overkill -- don't need two vecs, only one */
+GEN_TWOVEC_TEST(fmov_d_imm_01, "fmov d22, #0.125", 22, 23)
+GEN_TWOVEC_TEST(fmov_d_imm_02, "fmov d22, #-4.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_d_imm_03, "fmov d22, #1.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_s_imm_01, "fmov s22, #0.125", 22, 23)
+GEN_TWOVEC_TEST(fmov_s_imm_02, "fmov s22, #-4.0", 22, 23)
+GEN_TWOVEC_TEST(fmov_s_imm_03, "fmov s22, #-1.0", 22, 23)
-GEN_SHIFT_TEST(ushr, 8b, 8b, 1)
-GEN_SHIFT_TEST(ushr, 8b, 8b, 8)
-GEN_SHIFT_TEST(sshr, 8b, 8b, 1)
-GEN_SHIFT_TEST(sshr, 8b, 8b, 8)
-GEN_SHIFT_TEST(shl, 8b, 8b, 0)
-GEN_SHIFT_TEST(shl, 8b, 8b, 7)
+// fmul d_d_d[],s_s_s[]
-GEN_SHIFT_TEST(ushll, 2d, 2s, 0)
-GEN_SHIFT_TEST(ushll, 2d, 2s, 15)
-GEN_SHIFT_TEST(ushll, 2d, 2s, 31)
-GEN_SHIFT_TEST(ushll2, 2d, 4s, 0)
-GEN_SHIFT_TEST(ushll2, 2d, 4s, 15)
-GEN_SHIFT_TEST(ushll2, 2d, 4s, 31)
-GEN_SHIFT_TEST(ushll, 4s, 4h, 0)
-GEN_SHIFT_TEST(ushll, 4s, 4h, 7)
-GEN_SHIFT_TEST(ushll, 4s, 4h, 15)
-GEN_SHIFT_TEST(ushll2, 4s, 8h, 0)
-GEN_SHIFT_TEST(ushll2, 4s, 8h, 7)
-GEN_SHIFT_TEST(ushll2, 4s, 8h, 15)
-GEN_SHIFT_TEST(ushll, 8h, 8b, 0)
-GEN_SHIFT_TEST(ushll, 8h, 8b, 3)
-GEN_SHIFT_TEST(ushll, 8h, 8b, 7)
-GEN_SHIFT_TEST(ushll2, 8h, 16b, 0)
-GEN_SHIFT_TEST(ushll2, 8h, 16b, 3)
-GEN_SHIFT_TEST(ushll2, 8h, 16b, 7)
+GEN_THREEVEC_TEST(fmul_2d_2d_d0, "fmul v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_2d_2d_d1, "fmul v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_4s_4s_s0, "fmul v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_4s_4s_s3, "fmul v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_2s_2s_s0, "fmul v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_2s_2s_s3, "fmul v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
-GEN_SHIFT_TEST(sshll, 2d, 2s, 0)
-GEN_SHIFT_TEST(sshll, 2d, 2s, 15)
-GEN_SHIFT_TEST(sshll, 2d, 2s, 31)
-GEN_SHIFT_TEST(sshll2, 2d, 4s, 0)
-GEN_SHIFT_TEST(sshll2, 2d, 4s, 15)
-GEN_SHIFT_TEST(sshll2, 2d, 4s, 31)
-GEN_SHIFT_TEST(sshll, 4s, 4h, 0)
-GEN_SHIFT_TEST(sshll, 4s, 4h, 7)
-GEN_SHIFT_TEST(sshll, 4s, 4h, 15)
-GEN_SHIFT_TEST(sshll2, 4s, 8h, 0)
-GEN_SHIFT_TEST(sshll2, 4s, 8h, 7)
-GEN_SHIFT_TEST(sshll2, 4s, 8h, 15)
-GEN_SHIFT_TEST(sshll, 8h, 8b, 0)
-GEN_SHIFT_TEST(sshll, 8h, 8b, 3)
-GEN_SHIFT_TEST(sshll, 8h, 8b, 7)
-GEN_SHIFT_TEST(sshll2, 8h, 16b, 0)
-GEN_SHIFT_TEST(sshll2, 8h, 16b, 3)
-GEN_SHIFT_TEST(sshll2, 8h, 16b, 7)
+GEN_THREEVEC_TEST(fmul_d_d_d, "fmul d2, d11, d29", 2, 11, 29)
+GEN_THREEVEC_TEST(fmul_s_s_s, "fmul s2, s11, s29", 2, 11, 29)
+GEN_BINARY_TEST(fmul, 2d, 2d, 2d)
+GEN_BINARY_TEST(fmul, 4s, 4s, 4s)
+GEN_BINARY_TEST(fmul, 2s, 2s, 2s)
+// fmulx d_d_d[],s_s_s[]
+// fmulx 2d_2d_d[],4s_4s_s[],2s_2s_s[]
-GEN_UNARY_TEST(xtn, 2s, 2d)
-GEN_UNARY_TEST(xtn2, 4s, 2d)
-GEN_UNARY_TEST(xtn, 4h, 4s)
-GEN_UNARY_TEST(xtn2, 8h, 4s)
-GEN_UNARY_TEST(xtn, 8b, 8h)
-GEN_UNARY_TEST(xtn2, 16b, 8h)
+// fmulx d,s
+// fmulx 2d,4s,2s
-GEN_ONEINT_ONEVEC_TEST(umov_x_d0, "umov x9, v10.d[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_x_d1, "umov x9, v10.d[1]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_s0, "umov w9, v10.s[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_s3, "umov w9, v10.s[3]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_h0, "umov w9, v10.h[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_h7, "umov w9, v10.h[7]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_b0, "umov w9, v10.b[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(umov_w_b15, "umov w9, v10.b[15]", 9, 10)
+// frecpe d,s (recip estimate)
+// frecpe 2d,4s,2s
-GEN_ONEINT_ONEVEC_TEST(smov_x_s0, "smov x9, v10.s[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_x_s3, "smov x9, v10.s[3]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_x_h0, "smov x9, v10.h[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_x_h7, "smov x9, v10.h[7]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_w_h0, "smov w9, v10.h[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_w_h7, "smov w9, v10.h[7]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_x_b0, "smov x9, v10.b[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_x_b15, "smov x9, v10.b[15]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_w_b0, "smov w9, v10.b[0]", 9, 10)
-GEN_ONEINT_ONEVEC_TEST(smov_w_b15, "smov w9, v10.b[15]", 9, 10)
+// frecps d,s (recip step)
+// frecps 2d,4s,2s
-GEN_TWOVEC_TEST(fcvtn_2s_2d, "fcvtn v22.2s, v23.2d", 22, 23)
-GEN_TWOVEC_TEST(fcvtn_4s_2d, "fcvtn2 v22.4s, v23.2d", 22, 23)
+// frecpx d,s (recip exponent)
-GEN_UNARY_TEST(neg, 2d, 2d)
-GEN_UNARY_TEST(neg, 4s, 4s)
-GEN_UNARY_TEST(neg, 2s, 2s)
-GEN_UNARY_TEST(neg, 8h, 8h)
-GEN_UNARY_TEST(neg, 4h, 4h)
-GEN_UNARY_TEST(neg, 16b, 16b)
-GEN_UNARY_TEST(neg, 8b, 8b)
+// frinta d,s
+// frinti d,s
+// frintm d,s
+// frintn d,s
+// frintp d,s
+// frintx d,s
+// frintz d,s
-GEN_BINARY_TEST(fadd, 2d, 2d, 2d)
-GEN_BINARY_TEST(fadd, 4s, 4s, 4s)
-GEN_BINARY_TEST(fadd, 2s, 2s, 2s)
-GEN_BINARY_TEST(fsub, 2d, 2d, 2d)
-GEN_BINARY_TEST(fsub, 4s, 4s, 4s)
-GEN_BINARY_TEST(fsub, 2s, 2s, 2s)
-GEN_BINARY_TEST(fmul, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmul, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmul, 2s, 2s, 2s)
-GEN_BINARY_TEST(fdiv, 2d, 2d, 2d)
-GEN_BINARY_TEST(fdiv, 4s, 4s, 4s)
-GEN_BINARY_TEST(fdiv, 2s, 2s, 2s)
-GEN_BINARY_TEST(fmla, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmla, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmla, 2s, 2s, 2s)
-GEN_BINARY_TEST(fmls, 2d, 2d, 2d)
-GEN_BINARY_TEST(fmls, 4s, 4s, 4s)
-GEN_BINARY_TEST(fmls, 2s, 2s, 2s)
-GEN_BINARY_TEST(fabd, 2d, 2d, 2d)
-GEN_BINARY_TEST(fabd, 4s, 4s, 4s)
-GEN_BINARY_TEST(fabd, 2s, 2s, 2s)
+// frinta 2d,4s,2s (round to integral, nearest away)
+// frinti 2d,4s,2s (round to integral, per FPCR)
+// frintm 2d,4s,2s (round to integral, minus inf)
+// frintn 2d,4s,2s (round to integral, nearest, to even)
+// frintp 2d,4s,2s (round to integral, plus inf)
+// frintx 2d,4s,2s (round to integral exact, per FPCR)
+// frintz 2d,4s,2s (round to integral, zero)
-GEN_THREEVEC_TEST(add_d_d_d, "add d21, d22, d23", 21, 22, 23)
-GEN_THREEVEC_TEST(sub_d_d_d, "sub d21, d22, d23", 21, 22, 23)
+// frsqrte d,s (est)
+// frsqrte 2d,4s,2s
-/* overkill -- don't need two vecs, only one */
-GEN_TWOVEC_TEST(fmov_d_imm_01, "fmov d22, #0.125", 22, 23)
-GEN_TWOVEC_TEST(fmov_d_imm_02, "fmov d22, #-4.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_d_imm_03, "fmov d22, #1.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_s_imm_01, "fmov s22, #0.125", 22, 23)
-GEN_TWOVEC_TEST(fmov_s_imm_02, "fmov s22, #-4.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_s_imm_03, "fmov s22, #-1.0", 22, 23)
+// frsqrts d,s (step)
+// frsqrts 2d,4s,2s
-GEN_ONEINT_ONEVEC_TEST(fmov_s_w, "fmov s7, w15", 15, 7)
-GEN_ONEINT_ONEVEC_TEST(fmov_d_x, "fmov d7, x15", 15, 7)
-GEN_ONEINT_ONEVEC_TEST(fmov_d1_x, "fmov v7.d[1], x15", 15, 7)
-GEN_ONEINT_ONEVEC_TEST(fmov_w_s, "fmov w15, s7", 15, 7)
-GEN_ONEINT_ONEVEC_TEST(fmov_x_d, "fmov x15, d7", 15, 7)
-GEN_ONEINT_ONEVEC_TEST(fmov_x_d1, "fmov x15, v7.d[1]", 15, 7)
+// ======================== CONV ========================
-GEN_THREEVEC_TEST(fmla_2d_2d_d0, "fmla v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmla_2d_2d_d1, "fmla v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmla_4s_4s_s0, "fmla v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmla_4s_4s_s3, "fmla v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmla_2s_2s_s0, "fmla v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmla_2s_2s_s3, "fmla v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
+// fcvt s_h,d_h,h_s,d_s,h_d,s_d (fp convert, scalar)
-GEN_THREEVEC_TEST(fmls_2d_2d_d0, "fmls v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmls_2d_2d_d1, "fmls v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmls_4s_4s_s0, "fmls v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmls_4s_4s_s3, "fmls v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmls_2s_2s_s0, "fmls v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmls_2s_2s_s3, "fmls v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
+// fcvtl{2} 4s/4h, 4s/8h, 2d/2s, 2d/4s (float convert to longer form)
-GEN_TWOVEC_TEST(fmov_2d_imm_01, "fmov v22.2d, #0.125", 22, 23)
-GEN_TWOVEC_TEST(fmov_2d_imm_02, "fmov v22.2d, #-4.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_2d_imm_03, "fmov v22.2d, #1.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_4s_imm_01, "fmov v22.4s, #0.125", 22, 23)
-GEN_TWOVEC_TEST(fmov_4s_imm_02, "fmov v22.4s, #-4.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_4s_imm_03, "fmov v22.4s, #1.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_2s_imm_01, "fmov v22.2s, #0.125", 22, 23)
-GEN_TWOVEC_TEST(fmov_2s_imm_02, "fmov v22.2s, #-4.0", 22, 23)
-GEN_TWOVEC_TEST(fmov_2s_imm_03, "fmov v22.2s, #1.0", 22, 23)
+// fcvtn{2} 4h/4s, 8h/4s, 2s/2d, 4s/2d (float convert to narrower form)
+// INCOMPLETE
+GEN_TWOVEC_TEST(fcvtn_2s_2d, "fcvtn v22.2s, v23.2d", 22, 23)
+GEN_TWOVEC_TEST(fcvtn_4s_2d, "fcvtn2 v22.4s, v23.2d", 22, 23)
+
+// fcvtas d,s (fcvt to signed int, nearest, ties away)
+// fcvtau d,s (fcvt to unsigned int, nearest, ties away)
+// fcvtas 2d,4s,2s
+// fcvtau 2d,4s,2s
+// fcvtas w_s,x_s,w_d,x_d
+// fcvtau w_s,x_s,w_d,x_d
+
+// fcvtms d,s (fcvt to signed int, minus inf)
+// fcvtmu d,s (fcvt to unsigned int, minus inf)
+// fcvtms 2d,4s,2s
+// fcvtmu 2d,4s,2s
+// fcvtms w_s,x_s,w_d,x_d
+// fcvtmu w_s,x_s,w_d,x_d
+
+// fcvtns d,s (fcvt to signed int, nearest)
+// fcvtnu d,s (fcvt to unsigned int, nearest)
+// fcvtns 2d,4s,2s
+// fcvtnu 2d,4s,2s
+// fcvtns w_s,x_s,w_d,x_d
+// fcvtnu w_s,x_s,w_d,x_d
+
+// fcvtps d,s (fcvt to signed int, plus inf)
+// fcvtpu d,s (fcvt to unsigned int, plus inf)
+// fcvtps 2d,4s,2s
+// fcvtpu 2d,4s,2s
+// fcvtps w_s,x_s,w_d,x_d
+// fcvtpu w_s,x_s,w_d,x_d
+
+// fcvtzs d,s (fcvt to signed integer, to zero)
+// fcvtzu d,s (fcvt to unsigned integer, to zero)
+// fcvtzs 2d,4s,2s
+// fcvtzu 2d,4s,2s
+// fcvtzs w_s,x_s,w_d,x_d
+// fcvtzu w_s,x_s,w_d,x_d
+
+// fcvtzs d,s (fcvt to signed fixedpt, to zero) (w/ #fbits)
+// fcvtzu d,s (fcvt to unsigned fixedpt, to zero) (w/ #fbits)
+// fcvtzs 2d,4s,2s
+// fcvtzu 2d,4s,2s
+// fcvtzs w_s,x_s,w_d,x_d (fcvt to signed fixedpt, to zero) (w/ #fbits)
+// fcvtzu w_s,x_s,w_d,x_d (fcvt to unsigned fixedpt, to zero) (w/ #fbits)
+
+// fcvtxn s_d (fcvt to lower prec narrow, rounding to odd)
+// fcvtxn 2s_2d,4s_2d
+
+// scvtf d,s _#fbits
+// ucvtf d,s _#fbits
+
+// scvtf 2d,4s,2s _#fbits
+// ucvtf 2d,4s,2s _#fbits
+
+// scvtf d,s
+// ucvtf d,s
+
+// scvtf 2d,4s,2s
+// ucvtf 2d,4s,2s
+
+// scvtf s_w, d_w, s_x, d_x, _#fbits
+// ucvtf s_w, d_w, s_x, d_x, _#fbits
GEN_ONEINT_ONEVEC_TEST(scvtf_s_w, "scvtf s7, w15", 15, 7)
GEN_ONEINT_ONEVEC_TEST(scvtf_d_w, "scvtf d7, w15", 15, 7)
@@ -1238,172 +1209,7 @@
GEN_ONEINT_ONEVEC_TEST(ucvtf_s_x, "ucvtf s7, x15", 15, 7)
GEN_ONEINT_ONEVEC_TEST(ucvtf_d_x, "ucvtf d7, x15", 15, 7)
-GEN_THREEVEC_TEST(fmul_2d_2d_d0, "fmul v2.2d, v11.2d, v29.d[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_2d_2d_d1, "fmul v2.2d, v11.2d, v29.d[1]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_4s_4s_s0, "fmul v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_4s_4s_s3, "fmul v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_2s_2s_s0, "fmul v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_2s_2s_s3, "fmul v2.2s, v11.2s, v29.s[3]", 2, 11, 29)
-
-GEN_THREEVEC_TEST(fadd_d_d_d, "fadd d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fadd_s_s_s, "fadd s2, s11, s29", 2, 11, 29)
-GEN_THREEVEC_TEST(fsub_d_d_d, "fsub d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fsub_s_s_s, "fsub s2, s11, s29", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_d_d_d, "fmul d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fmul_s_s_s, "fmul s2, s11, s29", 2, 11, 29)
-GEN_THREEVEC_TEST(fdiv_d_d_d, "fdiv d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fdiv_s_s_s, "fdiv s2, s11, s29", 2, 11, 29)
-GEN_THREEVEC_TEST(fnmul_d_d_d, "fnmul d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fnmul_s_s_s, "fnmul s2, s11, s29", 2, 11, 29)
-
-GEN_THREEVEC_TEST(fabd_d_d_d, "fabd d2, d11, d29", 2, 11, 29)
-GEN_THREEVEC_TEST(fabd_s_s_s, "fabd s2, s11, s29", 2, 11, 29)
-
-GEN_TWOVEC_TEST(fmov_d_d, "fmov d22, d23", 22, 23)
-GEN_TWOVEC_TEST(fmov_s_s, "fmov s22, s23", 22, 23)
-GEN_TWOVEC_TEST(fabs_d_d, "fabs d22, d23", 22, 23)
-GEN_TWOVEC_TEST(fabs_s_s, "fabs s22, s23", 22, 23)
-GEN_TWOVEC_TEST(fneg_d_d, "fneg d22, d23", 22, 23)
-GEN_TWOVEC_TEST(fneg_s_s, "fneg s22, s23", 22, 23)
-GEN_TWOVEC_TEST(fsqrt_d_d, "fsqrt d22, d23", 22, 23)
-GEN_TWOVEC_TEST(fsqrt_s_s, "fsqrt s22, s23", 22, 23)
-
-GEN_UNARY_TEST(fneg, 2d, 2d)
-GEN_UNARY_TEST(fneg, 4s, 4s)
-GEN_UNARY_TEST(fneg, 2s, 2s)
-GEN_UNARY_TEST(fabs, 2d, 2d)
-GEN_UNARY_TEST(fabs, 4s, 4s)
-GEN_UNARY_TEST(fabs, 2s, 2s)
-
-GEN_BINARY_TEST(fcmeq, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmeq, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmeq, 2s, 2s, 2s)
-GEN_BINARY_TEST(fcmge, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmge, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmge, 2s, 2s, 2s)
-GEN_BINARY_TEST(fcmgt, 2d, 2d, 2d)
-GEN_BINARY_TEST(fcmgt, 4s, 4s, 4s)
-GEN_BINARY_TEST(fcmgt, 2s, 2s, 2s)
-GEN_BINARY_TEST(facge, 2d, 2d, 2d)
-GEN_BINARY_TEST(facge, 4s, 4s, 4s)
-GEN_BINARY_TEST(facge, 2s, 2s, 2s)
-GEN_BINARY_TEST(facgt, 2d, 2d, 2d)
-GEN_BINARY_TEST(facgt, 4s, 4s, 4s)
-GEN_BINARY_TEST(facgt, 2s, 2s, 2s)
-
-// Uses v15 as the first table entry
-GEN_THREEVEC_TEST(
- tbl_16b_1reg, "tbl v21.16b, {v15.16b}, v23.16b", 21, 15, 23)
-// and v15 ^ v21 as the second table entry
-GEN_THREEVEC_TEST(
- tbl_16b_2reg, "eor v16.16b, v15.16b, v21.16b ; "
- "tbl v21.16b, {v15.16b, v16.16b}, v23.16b", 21, 15, 23)
-// and v15 ^ v23 as the third table entry
-GEN_THREEVEC_TEST(
- tbl_16b_3reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "tbl v21.16b, {v15.16b, v16.16b, v17.16b}, v23.16b",
- 21, 15, 23)
-// and v21 ^ v23 as the fourth table entry
-GEN_THREEVEC_TEST(
- tbl_16b_4reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "eor v18.16b, v21.16b, v23.16b ; "
- "tbl v21.16b, {v15.16b, v16.16b, v17.16b, v18.16b}, v23.16b",
- 21, 15, 23)
-
-// Same register scheme for tbl .8b, tbx .16b, tbx.8b
-GEN_THREEVEC_TEST(
- tbl_8b_1reg, "tbl v21.8b, {v15.16b}, v23.8b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbl_8b_2reg, "eor v16.16b, v15.16b, v21.16b ; "
- "tbl v21.8b, {v15.16b, v16.16b}, v23.8b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbl_8b_3reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "tbl v21.8b, {v15.16b, v16.16b, v17.16b}, v23.8b",
- 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbl_8b_4reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "eor v18.16b, v21.16b, v23.16b ; "
- "tbl v21.8b, {v15.16b, v16.16b, v17.16b, v18.16b}, v23.8b",
- 21, 15, 23)
-
-GEN_THREEVEC_TEST(
- tbx_16b_1reg, "tbx v21.16b, {v15.16b}, v23.16b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_16b_2reg, "eor v16.16b, v15.16b, v21.16b ; "
- "tbx v21.16b, {v15.16b, v16.16b}, v23.16b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_16b_3reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "tbx v21.16b, {v15.16b, v16.16b, v17.16b}, v23.16b",
- 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_16b_4reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "eor v18.16b, v21.16b, v23.16b ; "
- "tbx v21.16b, {v15.16b, v16.16b, v17.16b, v18.16b}, v23.16b",
- 21, 15, 23)
-
-// Same register scheme for tbx .8b, tbx .16b, tbx.8b
-GEN_THREEVEC_TEST(
- tbx_8b_1reg, "tbx v21.8b, {v15.16b}, v23.8b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_8b_2reg, "eor v16.16b, v15.16b, v21.16b ; "
- "tbx v21.8b, {v15.16b, v16.16b}, v23.8b", 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_8b_3reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "tbx v21.8b, {v15.16b, v16.16b, v17.16b}, v23.8b",
- 21, 15, 23)
-GEN_THREEVEC_TEST(
- tbx_8b_4reg, "eor v16.16b, v15.16b, v21.16b ; "
- "eor v17.16b, v15.16b, v23.16b ; "
- "eor v18.16b, v21.16b, v23.16b ; "
- "tbx v21.8b, {v15.16b, v16.16b, v17.16b, v18.16b}, v23.8b",
- 21, 15, 23)
-
-GEN_TWOVEC_TEST(cmge_zero_2d_2d, "cmge v5.2d, v22.2d, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_4s_4s, "cmge v5.4s, v22.4s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_2s_2s, "cmge v5.2s, v22.2s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_8h_8h, "cmge v5.8h, v22.8h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_4h_4h, "cmge v5.4h, v22.4h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_16b_16b, "cmge v5.16b, v22.16b, #0", 5, 22)
-GEN_TWOVEC_TEST(cmge_zero_8b_8b, "cmge v5.8b, v22.8b, #0", 5, 22)
-
-GEN_TWOVEC_TEST(cmgt_zero_2d_2d, "cmgt v5.2d, v22.2d, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_4s_4s, "cmgt v5.4s, v22.4s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_2s_2s, "cmgt v5.2s, v22.2s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_8h_8h, "cmgt v5.8h, v22.8h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_4h_4h, "cmgt v5.4h, v22.4h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_16b_16b, "cmgt v5.16b, v22.16b, #0", 5, 22)
-GEN_TWOVEC_TEST(cmgt_zero_8b_8b, "cmgt v5.8b, v22.8b, #0", 5, 22)
-
-GEN_TWOVEC_TEST(cmle_zero_2d_2d, "cmle v5.2d, v22.2d, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_4s_4s, "cmle v5.4s, v22.4s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_2s_2s, "cmle v5.2s, v22.2s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_8h_8h, "cmle v5.8h, v22.8h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_4h_4h, "cmle v5.4h, v22.4h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_16b_16b, "cmle v5.16b, v22.16b, #0", 5, 22)
-GEN_TWOVEC_TEST(cmle_zero_8b_8b, "cmle v5.8b, v22.8b, #0", 5, 22)
-
-GEN_TWOVEC_TEST(cmeq_zero_2d_2d, "cmeq v5.2d, v22.2d, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_4s_4s, "cmeq v5.4s, v22.4s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_2s_2s, "cmeq v5.2s, v22.2s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_8h_8h, "cmeq v5.8h, v22.8h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_4h_4h, "cmeq v5.4h, v22.4h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_16b_16b, "cmeq v5.16b, v22.16b, #0", 5, 22)
-GEN_TWOVEC_TEST(cmeq_zero_8b_8b, "cmeq v5.8b, v22.8b, #0", 5, 22)
-
-GEN_TWOVEC_TEST(cmlt_zero_2d_2d, "cmlt v5.2d, v22.2d, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_4s_4s, "cmlt v5.4s, v22.4s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_2s_2s, "cmlt v5.2s, v22.2s, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_8h_8h, "cmlt v5.8h, v22.8h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_4h_4h, "cmlt v5.4h, v22.4h, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_16b_16b, "cmlt v5.16b, v22.16b, #0", 5, 22)
-GEN_TWOVEC_TEST(cmlt_zero_8b_8b, "cmlt v5.8b, v22.8b, #0", 5, 22)
+// ======================== INT ========================
GEN_TWOVEC_TEST(abs_d_d, "abs d22, d23", 22, 23)
GEN_TWOVEC_TEST(neg_d_d, "neg d22, d23", 22, 23)
@@ -1415,6 +1221,31 @@
GEN_UNARY_TEST(abs, 4h, 4h)
GEN_UNARY_TEST(abs, 16b, 16b)
GEN_UNARY_TEST(abs, 8b, 8b)
+GEN_UNARY_TEST(neg, 2d, 2d)
+GEN_UNARY_TEST(neg, 4s, 4s)
+GEN_UNARY_TEST(neg, 2s, 2s)
+GEN_UNARY_TEST(neg, 8h, 8h)
+GEN_UNARY_TEST(neg, 4h, 4h)
+GEN_UNARY_TEST(neg, 16b, 16b)
+GEN_UNARY_TEST(neg, 8b, 8b)
+
+GEN_THREEVEC_TEST(add_d_d_d, "add d21, d22, d23", 21, 22, 23)
+GEN_THREEVEC_TEST(sub_d_d_d, "sub d21, d22, d23", 21, 22, 23)
+
+GEN_BINARY_TEST(add, 2d, 2d, 2d)
+GEN_BINARY_TEST(add, 4s, 4s, 4s)
+GEN_BINARY_TEST(add, 2s, 2s, 2s)
+GEN_BINARY_TEST(add, 8h, 8h, 8h)
+GEN_BINARY_TEST(add, 4h, 4h, 4h)
+GEN_BINARY_TEST(add, 16b, 16b, 16b)
+GEN_BINARY_TEST(add, 8b, 8b, 8b)
+GEN_BINARY_TEST(sub, 2d, 2d, 2d)
+GEN_BINARY_TEST(sub, 4s, 4s, 4s)
+GEN_BINARY_TEST(sub, 2s, 2s, 2s)
+GEN_BINARY_TEST(sub, 8h, 8h, 8h)
+GEN_BINARY_TEST(sub, 4h, 4h, 4h)
+GEN_BINARY_TEST(sub, 16b, 16b, 16b)
+GEN_BINARY_TEST(sub, 8b, 8b, 8b)
GEN_BINARY_TEST(addhn, 2s, 2d, 2d)
GEN_BINARY_TEST(addhn2, 4s, 2d, 2d)
@@ -1457,6 +1288,15 @@
GEN_TWOVEC_TEST(addv_b_16b, "addv b22, v23.16b", 22, 23)
GEN_TWOVEC_TEST(addv_b_8b, "addv b22, v23.8b", 22, 23)
+GEN_BINARY_TEST(and, 16b, 16b, 16b)
+GEN_BINARY_TEST(and, 8b, 8b, 8b)
+GEN_BINARY_TEST(bic, 16b, 16b, 16b)
+GEN_BINARY_TEST(bic, 8b, 8b, 8b)
+GEN_BINARY_TEST(orr, 16b, 16b, 16b)
+GEN_BINARY_TEST(orr, 8b, 8b, 8b)
+GEN_BINARY_TEST(orn, 16b, 16b, 16b)
+GEN_BINARY_TEST(orn, 8b, 8b, 8b)
+
/* overkill -- don't need two vecs, only one */
GEN_TWOVEC_TEST(orr_8h_0x5A_lsl0, "orr v22.8h, #0x5A, LSL #0", 22, 23)
GEN_TWOVEC_TEST(orr_8h_0xA5_lsl8, "orr v22.8h, #0xA5, LSL #8", 22, 23)
@@ -1483,13 +1323,21 @@
GEN_TWOVEC_TEST(bic_2s_0x49_lsl16, "bic v22.2s, #0x49, LSL #16", 22, 23)
GEN_TWOVEC_TEST(bic_2s_0x3D_lsl24, "bic v22.2s, #0x3D, LSL #24", 22, 23)
+GEN_BINARY_TEST(bif, 16b, 16b, 16b)
+GEN_BINARY_TEST(bif, 8b, 8b, 8b)
+GEN_BINARY_TEST(bit, 16b, 16b, 16b)
+GEN_BINARY_TEST(bit, 8b, 8b, 8b)
+GEN_BINARY_TEST(bsl, 16b, 16b, 16b)
+GEN_BINARY_TEST(bsl, 8b, 8b, 8b)
+GEN_BINARY_TEST(eor, 16b, 16b, 16b)
+GEN_BINARY_TEST(eor, 8b, 8b, 8b)
+
GEN_UNARY_TEST(cls, 4s, 4s)
GEN_UNARY_TEST(cls, 2s, 2s)
GEN_UNARY_TEST(cls, 8h, 8h)
GEN_UNARY_TEST(cls, 4h, 4h)
GEN_UNARY_TEST(cls, 16b, 16b)
GEN_UNARY_TEST(cls, 8b, 8b)
-
GEN_UNARY_TEST(clz, 4s, 4s)
GEN_UNARY_TEST(clz, 2s, 2s)
GEN_UNARY_TEST(clz, 8h, 8h)
@@ -1504,12 +1352,91 @@
GEN_THREEVEC_TEST(cmhs_d_d_d, "cmhs d2, d11, d29", 2, 11, 29)
GEN_THREEVEC_TEST(cmtst_d_d_d, "cmtst d2, d11, d29", 2, 11, 29)
+GEN_BINARY_TEST(cmeq, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmeq, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmeq, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmeq, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmeq, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmeq, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmeq, 8b, 8b, 8b)
+GEN_BINARY_TEST(cmge, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmge, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmge, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmge, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmge, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmge, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmge, 8b, 8b, 8b)
+GEN_BINARY_TEST(cmgt, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmgt, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmgt, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmgt, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmgt, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmgt, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmgt, 8b, 8b, 8b)
+GEN_BINARY_TEST(cmhi, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmhi, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmhi, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmhi, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmhi, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmhi, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmhi, 8b, 8b, 8b)
+GEN_BINARY_TEST(cmhs, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmhs, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmhs, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmhs, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmhs, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmhs, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmhs, 8b, 8b, 8b)
+GEN_BINARY_TEST(cmtst, 2d, 2d, 2d)
+GEN_BINARY_TEST(cmtst, 4s, 4s, 4s)
+GEN_BINARY_TEST(cmtst, 2s, 2s, 2s)
+GEN_BINARY_TEST(cmtst, 8h, 8h, 8h)
+GEN_BINARY_TEST(cmtst, 4h, 4h, 4h)
+GEN_BINARY_TEST(cmtst, 16b, 16b, 16b)
+GEN_BINARY_TEST(cmtst, 8b, 8b, 8b)
+
GEN_TWOVEC_TEST(cmeq_zero_d_d, "cmeq d2, d11, #0", 2, 11)
GEN_TWOVEC_TEST(cmge_zero_d_d, "cmge d2, d11, #0", 2, 11)
GEN_TWOVEC_TEST(cmgt_zero_d_d, "cmgt d2, d11, #0", 2, 11)
GEN_TWOVEC_TEST(cmle_zero_d_d, "cmle d2, d11, #0", 2, 11)
GEN_TWOVEC_TEST(cmlt_zero_d_d, "cmlt d2, d11, #0", 2, 11)
+GEN_TWOVEC_TEST(cmeq_zero_2d_2d, "cmeq v5.2d, v22.2d, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_4s_4s, "cmeq v5.4s, v22.4s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_2s_2s, "cmeq v5.2s, v22.2s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_8h_8h, "cmeq v5.8h, v22.8h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_4h_4h, "cmeq v5.4h, v22.4h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_16b_16b, "cmeq v5.16b, v22.16b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmeq_zero_8b_8b, "cmeq v5.8b, v22.8b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_2d_2d, "cmge v5.2d, v22.2d, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_4s_4s, "cmge v5.4s, v22.4s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_2s_2s, "cmge v5.2s, v22.2s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_8h_8h, "cmge v5.8h, v22.8h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_4h_4h, "cmge v5.4h, v22.4h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_16b_16b, "cmge v5.16b, v22.16b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmge_zero_8b_8b, "cmge v5.8b, v22.8b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_2d_2d, "cmgt v5.2d, v22.2d, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_4s_4s, "cmgt v5.4s, v22.4s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_2s_2s, "cmgt v5.2s, v22.2s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_8h_8h, "cmgt v5.8h, v22.8h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_4h_4h, "cmgt v5.4h, v22.4h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_16b_16b, "cmgt v5.16b, v22.16b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmgt_zero_8b_8b, "cmgt v5.8b, v22.8b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_2d_2d, "cmle v5.2d, v22.2d, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_4s_4s, "cmle v5.4s, v22.4s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_2s_2s, "cmle v5.2s, v22.2s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_8h_8h, "cmle v5.8h, v22.8h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_4h_4h, "cmle v5.4h, v22.4h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_16b_16b, "cmle v5.16b, v22.16b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmle_zero_8b_8b, "cmle v5.8b, v22.8b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_2d_2d, "cmlt v5.2d, v22.2d, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_4s_4s, "cmlt v5.4s, v22.4s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_2s_2s, "cmlt v5.2s, v22.2s, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_8h_8h, "cmlt v5.8h, v22.8h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_4h_4h, "cmlt v5.4h, v22.4h, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_16b_16b, "cmlt v5.16b, v22.16b, #0", 5, 22)
+GEN_TWOVEC_TEST(cmlt_zero_8b_8b, "cmlt v5.8b, v22.8b, #0", 5, 22)
+
GEN_UNARY_TEST(cnt, 16b, 16b)
GEN_UNARY_TEST(cnt, 8b, 8b)
@@ -1594,27 +1521,25 @@
GEN_THREEVEC_TEST(ext_8b_8b_8b_0x7,
"ext v2.8b, v11.8b, v29.8b, #7", 2, 11, 29)
-
GEN_TWOVEC_TEST(ins_d0_d0, "ins v3.d[0], v24.d[0]", 3, 24)
GEN_TWOVEC_TEST(ins_d0_d1, "ins v3.d[0], v24.d[1]", 3, 24)
GEN_TWOVEC_TEST(ins_d1_d0, "ins v3.d[1], v24.d[0]", 3, 24)
GEN_TWOVEC_TEST(ins_d1_d1, "ins v3.d[1], v24.d[1]", 3, 24)
-
GEN_TWOVEC_TEST(ins_s0_s2, "ins v3.s[0], v24.s[2]", 3, 24)
GEN_TWOVEC_TEST(ins_s3_s0, "ins v3.s[3], v24.s[0]", 3, 24)
GEN_TWOVEC_TEST(ins_s2_s1, "ins v3.s[2], v24.s[1]", 3, 24)
GEN_TWOVEC_TEST(ins_s1_s3, "ins v3.s[1], v24.s[3]", 3, 24)
-
GEN_TWOVEC_TEST(ins_h0_h6, "ins v3.h[0], v24.h[6]", 3, 24)
GEN_TWOVEC_TEST(ins_h7_h0, "ins v3.h[7], v24.h[0]", 3, 24)
GEN_TWOVEC_TEST(ins_h6_h1, "ins v3.h[6], v24.h[1]", 3, 24)
GEN_TWOVEC_TEST(ins_h1_h7, "ins v3.h[1], v24.h[7]", 3, 24)
-
GEN_TWOVEC_TEST(ins_b0_b14, "ins v3.b[0], v24.b[14]", 3, 24)
GEN_TWOVEC_TEST(ins_b15_b8, "ins v3.b[15], v24.b[8]", 3, 24)
GEN_TWOVEC_TEST(ins_b13_b9, "ins v3.b[13], v24.b[9]", 3, 24)
GEN_TWOVEC_TEST(ins_b5_b12, "ins v3.b[5], v24.b[12]", 3, 24)
+// test_INS_general is a handwritten function
+
GEN_THREEVEC_TEST(mla_4s_4s_s0, "mla v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
GEN_THREEVEC_TEST(mla_4s_4s_s3, "mla v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
GEN_THREEVEC_TEST(mla_2s_2s_s0, "mla v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
@@ -1624,7 +1549,6 @@
GEN_THREEVEC_TEST(mla_8h_8h_h5, "mla v2.8h, v11.8h, v2.h[5]", 2, 11, 9)
GEN_THREEVEC_TEST(mla_4h_4h_h2, "mla v2.4h, v11.4h, v2.h[2]", 2, 11, 9)
GEN_THREEVEC_TEST(mla_4h_4h_h7, "mla v2.4h, v11.4h, v2.h[7]", 2, 11, 9)
-
GEN_THREEVEC_TEST(mls_4s_4s_s0, "mls v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
GEN_THREEVEC_TEST(mls_4s_4s_s3, "mls v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
GEN_THREEVEC_TEST(mls_2s_2s_s0, "mls v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
@@ -1634,7 +1558,6 @@
GEN_THREEVEC_TEST(mls_8h_8h_h5, "mls v2.8h, v11.8h, v2.h[5]", 2, 11, 9)
GEN_THREEVEC_TEST(mls_4h_4h_h2, "mls v2.4h, v11.4h, v2.h[2]", 2, 11, 9)
GEN_THREEVEC_TEST(mls_4h_4h_h7, "mls v2.4h, v11.4h, v2.h[7]", 2, 11, 9)
-
GEN_THREEVEC_TEST(mul_4s_4s_s0, "mul v2.4s, v11.4s, v29.s[0]", 2, 11, 29)
GEN_THREEVEC_TEST(mul_4s_4s_s3, "mul v2.4s, v11.4s, v29.s[3]", 2, 11, 29)
GEN_THREEVEC_TEST(mul_2s_2s_s0, "mul v2.2s, v11.2s, v29.s[0]", 2, 11, 29)
@@ -1645,13 +1568,38 @@
GEN_THREEVEC_TEST(mul_4h_4h_h2, "mul v2.4h, v11.4h, v2.h[2]", 2, 11, 9)
GEN_THREEVEC_TEST(mul_4h_4h_h7, "mul v2.4h, v11.4h, v2.h[7]", 2, 11, 9)
+GEN_BINARY_TEST(mla, 4s, 4s, 4s)
+GEN_BINARY_TEST(mla, 2s, 2s, 2s)
+GEN_BINARY_TEST(mla, 8h, 8h, 8h)
+GEN_BINARY_TEST(mla, 4h, 4h, 4h)
+GEN_BINARY_TEST(mla, 16b, 16b, 16b)
+GEN_BINARY_TEST(mla, 8b, 8b, 8b)
+GEN_BINARY_TEST(mls, 4s, 4s, 4s)
+GEN_BINARY_TEST(mls, 2s, 2s, 2s)
+GEN_BINARY_TEST(mls, 8h, 8h, 8h)
+GEN_BINARY_TEST(mls, 4h, 4h, 4h)
+GEN_BINARY_TEST(mls, 16b, 16b, 16b)
+GEN_BINARY_TEST(mls, 8b, 8b, 8b)
+GEN_BINARY_TEST(mul, 4s, 4s, 4s)
+GEN_BINARY_TEST(mul, 2s, 2s, 2s)
+GEN_BINARY_TEST(mul, 8h, 8h, 8h)
+GEN_BINARY_TEST(mul, 4h, 4h, 4h)
+GEN_BINARY_TEST(mul, 16b, 16b, 16b)
+GEN_BINARY_TEST(mul, 8b, 8b, 8b)
+
/* overkill -- don't need two vecs, only one */
GEN_TWOVEC_TEST(movi_16b_0x9C_lsl0, "movi v22.16b, #0x9C, LSL #0", 22, 23)
GEN_TWOVEC_TEST(movi_8b_0x8B_lsl0, "movi v22.8b, #0x8B, LSL #0", 22, 23)
+
GEN_TWOVEC_TEST(movi_8h_0x5A_lsl0, "movi v22.8h, #0x5A, LSL #0", 22, 23)
GEN_TWOVEC_TEST(movi_8h_0xA5_lsl8, "movi v22.8h, #0xA5, LSL #8", 22, 23)
GEN_TWOVEC_TEST(movi_4h_0x5A_lsl0, "movi v22.4h, #0x5A, LSL #0", 22, 23)
GEN_TWOVEC_TEST(movi_4h_0xA5_lsl8, "movi v22.4h, #0xA5, LSL #8", 22, 23)
+GEN_TWOVEC_TEST(mvni_8h_0x5A_lsl0, "mvni v22.8h, #0x5A, LSL #0", 22, 23)
+GEN_TWOVEC_TEST(mvni_8h_0xA5_lsl8, "mvni v22.8h, #0xA5, LSL #8", 22, 23)
+GEN_TWOVEC_TEST(mvni_4h_0x5A_lsl0, "mvni v22.4h, #0x5A, LSL #0", 22, 23)
+GEN_TWOVEC_TEST(mvni_4h_0xA5_lsl8, "mvni v22.4h, #0xA5, LSL #8", 22, 23)
+
GEN_TWOVEC_TEST(movi_4s_0x5A_lsl0, "movi v22.4s, #0x5A, LSL #0", 22, 23)
GEN_TWOVEC_TEST(movi_4s_0x6B_lsl8, "movi v22.4s, #0x6B, LSL #8", 22, 23)
GEN_TWOVEC_TEST(movi_4s_0x49_lsl16, "movi v22.4s, #0x49, LSL #16", 22, 23)
@@ -1660,19 +1608,6 @@
GEN_TWOVEC_TEST(movi_2s_0x6B_lsl8, "movi v22.2s, #0x6B, LSL #8", 22, 23)
GEN_TWOVEC_TEST(movi_2s_0x49_lsl16, "movi v22.2s, #0x49, LSL #16", 22, 23)
GEN_TWOVEC_TEST(movi_2s_0x3D_lsl24, "movi v22.2s, #0x3D, LSL #24", 22, 23)
-GEN_TWOVEC_TEST(movi_4s_0x6B_msl8, "movi v22.4s, #0x6B, MSL #8", 22, 23)
-GEN_TWOVEC_TEST(movi_4s_0x94_msl16, "movi v22.4s, #0x94, MSL #16", 22, 23)
-GEN_TWOVEC_TEST(movi_2s_0x7A_msl8, "movi v22.2s, #0x7A, MSL #8", 22, 23)
-GEN_TWOVEC_TEST(movi_2s_0xA5_msl16, "movi v22.2s, #0xA5, MSL #16", 22, 23)
-
-GEN_TWOVEC_TEST(movi_d_0xA5, "movi d22, #0xFF00FF0000FF00FF", 22, 23)
-GEN_TWOVEC_TEST(movi_2d_0xB4, "movi v22.2d, #0xFF00FFFF00FF0000", 22, 23)
-
-/* overkill -- don't need two vecs, only one */
-GEN_TWOVEC_TEST(mvni_8h_0x5A_lsl0, "mvni v22.8h, #0x5A, LSL #0", 22, 23)
-GEN_TWOVEC_TEST(mvni_8h_0xA5_lsl8, "mvni v22.8h, #0xA5, LSL #8", 22, 23)
-GEN_TWOVEC_TEST(mvni_4h_0x5A_lsl0, "mvni v22.4h, #0x5A, LSL #0", 22, 23)
-GEN_TWOVEC_TEST(mvni_4h_0xA5_lsl8, "mvni v22.4h, #0xA5, LSL #8", 22, 23)
GEN_TWOVEC_TEST(mvni_4s_0x5A_lsl0, "mvni v22.4s, #0x5A, LSL #0", 22, 23)
GEN_TWOVEC_TEST(mvni_4s_0x6B_lsl8, "mvni v22.4s, #0x6B, LSL #8", 22, 23)
GEN_TWOVEC_TEST(mvni_4s_0x49_lsl16, "mvni v22.4s, #0x49, LSL #16", 22, 23)
@@ -1681,11 +1616,20 @@
GEN_TWOVEC_TEST(mvni_2s_0x6B_lsl8, "mvni v22.2s, #0x6B, LSL #8", 22, 23)
GEN_TWOVEC_TEST(mvni_2s_0x49_lsl16, "mvni v22.2s, #0x49, LSL #16", 22, 23)
GEN_TWOVEC_TEST(mvni_2s_0x3D_lsl24, "mvni v22.2s, #0x3D, LSL #24", 22, 23)
+
+/* overkill -- don't need two vecs, only one */
+GEN_TWOVEC_TEST(movi_4s_0x6B_msl8, "movi v22.4s, #0x6B, MSL #8", 22, 23)
+GEN_TWOVEC_TEST(movi_4s_0x94_msl16, "movi v22.4s, #0x94, MSL #16", 22, 23)
+GEN_TWOVEC_TEST(movi_2s_0x7A_msl8, "movi v22.2s, #0x7A, MSL #8", 22, 23)
+GEN_TWOVEC_TEST(movi_2s_0xA5_msl16, "movi v22.2s, #0xA5, MSL #16", 22, 23)
GEN_TWOVEC_TEST(mvni_4s_0x6B_msl8, "mvni v22.4s, #0x6B, MSL #8", 22, 23)
GEN_TWOVEC_TEST(mvni_4s_0x94_msl16, "mvni v22.4s, #0x94, MSL #16", 22, 23)
GEN_TWOVEC_TEST(mvni_2s_0x7A_msl8, "mvni v22.2s, #0x7A, MSL #8", 22, 23)
GEN_TWOVEC_TEST(mvni_2s_0xA5_msl16, "mvni v22.2s, #0xA5, MSL #16", 22, 23)
+GEN_TWOVEC_TEST(movi_d_0xA5, "movi d22, #0xFF00FF0000FF00FF", 22, 23)
+GEN_TWOVEC_TEST(movi_2d_0xB4, "movi v22.2d, #0xFF00FFFF00FF0000", 22, 23)
+
GEN_UNARY_TEST(not, 16b, 16b)
GEN_UNARY_TEST(not, 8b, 8b)
@@ -1718,7 +1662,6 @@
GEN_BINARY_TEST(saba, 4h, 4h, 4h)
GEN_BINARY_TEST(saba, 16b, 16b, 16b)
GEN_BINARY_TEST(saba, 8b, 8b, 8b)
-
GEN_BINARY_TEST(uaba, 4s, 4s, 4s)
GEN_BINARY_TEST(uaba, 2s, 2s, 2s)
GEN_BINARY_TEST(uaba, 8h, 8h, 8h)
@@ -1728,20 +1671,15 @@
GEN_THREEVEC_TEST(sabal_2d_2s_2s, "sabal v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(sabal2_2d_4s_4s, "sabal2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(sabal_4s_4h_4h, "sabal v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(sabal2_4s_8h_8h, "sabal2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(sabal_8h_8b_8b, "sabal v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(sabal2_8h_16b_16b,
"sabal2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabal_2d_2s_2s, "uabal v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uabal2_2d_4s_4s, "uabal2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabal_4s_4h_4h, "uabal v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(uabal2_4s_8h_8h, "uabal2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabal_8h_8b_8b, "uabal v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(uabal2_8h_16b_16b,
"uabal2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
@@ -1752,7 +1690,6 @@
GEN_THREEVEC_TEST(sabd_4h_4h_4h, "sabd v2.4h, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(sabd_16b_16b_16b, "sabd v2.16b, v11.16b, v29.16b", 2, 11, 29)
GEN_THREEVEC_TEST(sabd_8b_8b_8b, "sabd v2.8b, v11.8b, v29.8b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabd_4s_4s_4s, "uabd v2.4s, v11.4s, v29.4s", 2, 11, 29)
GEN_THREEVEC_TEST(uabd_2s_2s_2s, "uabd v2.2s, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uabd_8h_8h_8h, "uabd v2.8h, v11.8h, v29.8h", 2, 11, 29)
@@ -1762,20 +1699,15 @@
GEN_THREEVEC_TEST(sabdl_2d_2s_2s, "sabdl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(sabdl2_2d_4s_4s, "sabdl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(sabdl_4s_4h_4h, "sabdl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(sabdl2_4s_8h_8h, "sabdl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(sabdl_8h_8b_8b, "sabdl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(sabdl2_8h_16b_16b,
"sabdl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabdl_2d_2s_2s, "uabdl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uabdl2_2d_4s_4s, "uabdl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabdl_4s_4h_4h, "uabdl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(uabdl2_4s_8h_8h, "uabdl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(uabdl_8h_8b_8b, "uabdl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(uabdl2_8h_16b_16b,
"uabdl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
@@ -1786,7 +1718,6 @@
GEN_TWOVEC_TEST(sadalp_4s_8h, "sadalp v3.4s, v19.8h", 3, 19)
GEN_TWOVEC_TEST(sadalp_1d_2s, "sadalp v3.1d, v19.2s", 3, 19)
GEN_TWOVEC_TEST(sadalp_2d_4s, "sadalp v3.2d, v19.4s", 3, 19)
-
GEN_TWOVEC_TEST(uadalp_4h_8b, "uadalp v3.4h, v19.8b", 3, 19)
GEN_TWOVEC_TEST(uadalp_8h_16b, "uadalp v3.8h, v19.16b", 3, 19)
GEN_TWOVEC_TEST(uadalp_2s_4h, "uadalp v3.2s, v19.4h", 3, 19)
@@ -1796,40 +1727,29 @@
GEN_THREEVEC_TEST(saddl_2d_2s_2s, "saddl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(saddl2_2d_4s_4s, "saddl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(saddl_4s_4h_4h, "saddl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(saddl2_4s_8h_8h, "saddl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(saddl_8h_8b_8b, "saddl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(saddl2_8h_16b_16b,
"saddl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uaddl_2d_2s_2s, "uaddl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uaddl2_2d_4s_4s, "uaddl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(uaddl_4s_4h_4h, "uaddl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(uaddl2_4s_8h_8h, "uaddl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(uaddl_8h_8b_8b, "uaddl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(uaddl2_8h_16b_16b,
"uaddl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
-
GEN_THREEVEC_TEST(ssubl_2d_2s_2s, "ssubl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(ssubl2_2d_4s_4s, "ssubl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(ssubl_4s_4h_4h, "ssubl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(ssubl2_4s_8h_8h, "ssubl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(ssubl_8h_8b_8b, "ssubl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(ssubl2_8h_16b_16b,
"ssubl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
-
GEN_THREEVEC_TEST(usubl_2d_2s_2s, "usubl v2.2d, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(usubl2_2d_4s_4s, "usubl2 v2.2d, v11.4s, v29.4s", 2, 11, 29)
-
GEN_THREEVEC_TEST(usubl_4s_4h_4h, "usubl v2.4s, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(usubl2_4s_8h_8h, "usubl2 v2.4s, v11.8h, v29.8h", 2, 11, 29)
-
GEN_THREEVEC_TEST(usubl_8h_8b_8b, "usubl v2.8h, v11.8b, v29.8b", 2, 11, 29)
GEN_THREEVEC_TEST(usubl2_8h_16b_16b,
"usubl2 v2.8h, v11.16b, v29.16b", 2, 11, 29)
@@ -1840,7 +1760,6 @@
GEN_TWOVEC_TEST(saddlp_4s_8h, "saddlp v3.4s, v19.8h", 3, 19)
GEN_TWOVEC_TEST(saddlp_1d_2s, "saddlp v3.1d, v19.2s", 3, 19)
GEN_TWOVEC_TEST(saddlp_2d_4s, "saddlp v3.2d, v19.4s", 3, 19)
-
GEN_TWOVEC_TEST(uaddlp_4h_8b, "uaddlp v3.4h, v19.8b", 3, 19)
GEN_TWOVEC_TEST(uaddlp_8h_16b, "uaddlp v3.8h, v19.16b", 3, 19)
GEN_TWOVEC_TEST(uaddlp_2s_4h, "uaddlp v3.2s, v19.4h", 3, 19)
@@ -1853,7 +1772,6 @@
GEN_TWOVEC_TEST(saddlv_s_8h, "saddlv s3, v19.8h", 3, 19)
GEN_TWOVEC_TEST(saddlv_s_4h, "saddlv s3, v19.4h", 3, 19)
GEN_TWOVEC_TEST(saddlv_d_4s, "saddlv d3, v19.4s", 3, 19)
-
GEN_TWOVEC_TEST(uaddlv_h_16b, "uaddlv h3, v19.16b", 3, 19)
GEN_TWOVEC_TEST(uaddlv_h_8b, "uaddlv h3, v19.8b", 3, 19)
GEN_TWOVEC_TEST(uaddlv_s_8h, "uaddlv s3, v19.8h", 3, 19)
@@ -1866,21 +1784,18 @@
GEN_THREEVEC_TEST(saddw_4s_4s_4h, "saddw v5.4s, v13.4s, v31.4h", 5, 13, 31)
GEN_THREEVEC_TEST(saddw2_2d_2d_4s, "saddw2 v5.2d, v13.2d, v31.4s", 5, 13, 31)
GEN_THREEVEC_TEST(saddw_2d_2d_2s, "saddw v5.2d, v13.2d, v31.2s", 5, 13, 31)
-
GEN_THREEVEC_TEST(uaddw2_8h_8h_16b, "uaddw2 v5.8h, v13.8h, v31.16b", 5, 13, 31)
GEN_THREEVEC_TEST(uaddw_8h_8h_8b, "uaddw v5.8h, v13.8h, v31.8b", 5, 13, 31)
GEN_THREEVEC_TEST(uaddw2_4s_4s_8h, "uaddw2 v5.4s, v13.4s, v31.8h", 5, 13, 31)
GEN_THREEVEC_TEST(uaddw_4s_4s_4h, "uaddw v5.4s, v13.4s, v31.4h", 5, 13, 31)
GEN_THREEVEC_TEST(uaddw2_2d_2d_4s, "uaddw2 v5.2d, v13.2d, v31.4s", 5, 13, 31)
GEN_THREEVEC_TEST(uaddw_2d_2d_2s, "uaddw v5.2d, v13.2d, v31.2s", 5, 13, 31)
-
GEN_THREEVEC_TEST(ssubw2_8h_8h_16b, "ssubw2 v5.8h, v13.8h, v31.16b", 5, 13, 31)
GEN_THREEVEC_TEST(ssubw_8h_8h_8b, "ssubw v5.8h, v13.8h, v31.8b", 5, 13, 31)
GEN_THREEVEC_TEST(ssubw2_4s_4s_8h, "ssubw2 v5.4s, v13.4s, v31.8h", 5, 13, 31)
GEN_THREEVEC_TEST(ssubw_4s_4s_4h, "ssubw v5.4s, v13.4s, v31.4h", 5, 13, 31)
GEN_THREEVEC_TEST(ssubw2_2d_2d_4s, "ssubw2 v5.2d, v13.2d, v31.4s", 5, 13, 31)
GEN_THREEVEC_TEST(ssubw_2d_2d_2s, "ssubw v5.2d, v13.2d, v31.2s", 5, 13, 31)
-
GEN_THREEVEC_TEST(usubw2_8h_8h_16b, "usubw2 v5.8h, v13.8h, v31.16b", 5, 13, 31)
GEN_THREEVEC_TEST(usubw_8h_8h_8b, "usubw v5.8h, v13.8h, v31.8b", 5, 13, 31)
GEN_THREEVEC_TEST(usubw2_4s_4s_8h, "usubw2 v5.4s, v13.4s, v31.8h", 5, 13, 31)
@@ -1894,21 +1809,18 @@
GEN_THREEVEC_TEST(shadd_4h_4h_4h, "shadd v2.4h, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(shadd_16b_16b_16b,"shadd v2.16b, v11.16b, v29.16b", 2, 11, 29)
GEN_THREEVEC_TEST(shadd_8b_8b_8b, "shadd v2.8b, v11.8b, v29.8b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uhadd_4s_4s_4s, "uhadd v2.4s, v11.4s, v29.4s", 2, 11, 29)
GEN_THREEVEC_TEST(uhadd_2s_2s_2s, "uhadd v2.2s, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uhadd_8h_8h_8h, "uhadd v2.8h, v11.8h, v29.8h", 2, 11, 29)
GEN_THREEVEC_TEST(uhadd_4h_4h_4h, "uhadd v2.4h, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(uhadd_16b_16b_16b,"uhadd v2.16b, v11.16b, v29.16b", 2, 11, 29)
GEN_THREEVEC_TEST(uhadd_8b_8b_8b, "uhadd v2.8b, v11.8b, v29.8b", 2, 11, 29)
-
GEN_THREEVEC_TEST(shsub_4s_4s_4s, "shsub v2.4s, v11.4s, v29.4s", 2, 11, 29)
GEN_THREEVEC_TEST(shsub_2s_2s_2s, "shsub v2.2s, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(shsub_8h_8h_8h, "shsub v2.8h, v11.8h, v29.8h", 2, 11, 29)
GEN_THREEVEC_TEST(shsub_4h_4h_4h, "shsub v2.4h, v11.4h, v29.4h", 2, 11, 29)
GEN_THREEVEC_TEST(shsub_16b_16b_16b,"shsub v2.16b, v11.16b, v29.16b", 2, 11, 29)
GEN_THREEVEC_TEST(shsub_8b_8b_8b, "shsub v2.8b, v11.8b, v29.8b", 2, 11, 29)
-
GEN_THREEVEC_TEST(uhsub_4s_4s_4s, "uhsub v2.4s, v11.4s, v29.4s", 2, 11, 29)
GEN_THREEVEC_TEST(uhsub_2s_2s_2s, "uhsub v2.2s, v11.2s, v29.2s", 2, 11, 29)
GEN_THREEVEC_TEST(uhsub_8h_8h_8h, "uhsub v2.8h, v11.8h, v29.8h", 2, 11, 29)
@@ -1935,7 +1847,6 @@
GEN_TWOVEC_TEST(shrn_8b_8h_8, "shrn v4.8b, v29.8h, #8", 4, 29)
GEN_TWOVEC_TEST(shrn2_16b_8h_1, "shrn2 v4.16b, v29.8h, #1", 4, 29)
GEN_TWOVEC_TEST(shrn2_16b_8h_8, "shrn2 v4.16b, v29.8h, #8", 4, 29)
-
GEN_TWOVEC_TEST(rshrn_2s_2d_1, "rshrn v4.2s, v29.2d, #1", 4, 29)
GEN_TWOVEC_TEST(rshrn_2s_2d_32, "rshrn v4.2s, v29.2d, #32", 4, 29)
GEN_TWOVEC_TEST(rshrn2_4s_2d_1, "rshrn2 v4.4s, v29.2d, #1", 4, 29)
@@ -1977,7 +1888,6 @@
GEN_TWOVEC_TEST(sli_8b_8b_0, "sli v6.8b, v27.8b, #0", 6, 27)
GEN_TWOVEC_TEST(sli_8b_8b_3, "sli v6.8b, v27.8b, #3", 6, 27)
GEN_TWOVEC_TEST(sli_8b_8b_7, "sli v6.8b, v27.8b, #7", 6, 27)
-
GEN_TWOVEC_TEST(sri_2d_2d_1, "sri v6.2d, v27.2d, #1", 6, 27)
GEN_TWOVEC_TEST(sri_2d_2d_33, "sri v6.2d, v27.2d, #33", 6, 27)
GEN_TWOVEC_TEST(sri_2d_2d_64, "sri v6.2d, v27.2d, #64", 6, 27)
@@ -2000,27 +1910,49 @@
GEN_TWOVEC_TEST(sri_8b_8b_4, "sri v6.8b, v27.8b, #4", 6, 27)
GEN_TWOVEC_TEST(sri_8b_8b_8, "sri v6.8b, v27.8b, #8", 6, 27)
+GEN_BINARY_TEST(smax, 4s, 4s, 4s)
+GEN_BINARY_TEST(smax, 2s, 2s, 2s)
+GEN_BINARY_TEST(smax, 8h, 8h, 8h)
+GEN_BINARY_TEST(smax, 4h, 4h, 4h)
+GEN_BINARY_TEST(smax, 16b, 16b, 16b)
+GEN_BINARY_TEST(smax, 8b, 8b, 8b)
+GEN_BINARY_TEST(umax, 4s, 4s, 4s)
+GEN_BINARY_TEST(umax, 2s, 2s, 2s)
+GEN_BINARY_TEST(umax, 8h, 8h, 8h)
+GEN_BINARY_TEST(umax, 4h, 4h, 4h)
+GEN_BINARY_TEST(umax, 16b, 16b, 16b)
+GEN_BINARY_TEST(umax, 8b, 8b, 8b)
+GEN_BINARY_TEST(smin, 4s, 4s, 4s)
+GEN_BINARY_TEST(smin, 2s, 2s, 2s)
+GEN_BINARY_TEST(smin, 8h, 8h, 8h)
+GEN_BINARY_TEST(smin, 4h, 4h, 4h)
+GEN_BINARY_TEST(smin, 16b, 16b, 16b)
+GEN_BINARY_TEST(smin, 8b, 8b, 8b)
+GEN_BINARY_TEST(umin, 4s, 4s, 4s)
+GEN_BINARY_TEST(umin, 2s, 2s, 2s)
+GEN_BINARY_TEST(umin, 8h, 8h, 8h)
+GEN_BINARY_TEST(umin, 4h, 4h, 4h)
+GEN_BINARY_TEST(umin, 16b, 16b, 16b)
+GEN_BINARY_TEST(umin, 8b, 8b, 8b)
+
GEN_BINARY_TEST(smaxp, 4s, 4s, 4s)
GEN_BINARY_TEST(smaxp, 2s, 2s, 2s)
GEN_BINARY_TEST(smaxp, 8h, 8h, 8h)
GEN_BINARY_TEST(smaxp, 4h, 4h, 4h)
GEN_BINARY_TEST(smaxp, 16b, 16b, 16b)
GEN_BINARY_TEST(smaxp, 8b, 8b, 8b)
-
GEN_BINARY_TEST(umaxp, 4s, 4s, 4s)
GEN_BINARY_TEST(umaxp, 2s, 2s, 2s)
GEN_BINARY_TEST(umaxp, 8h, 8h, 8h)
GEN_BINARY_TEST(umaxp, 4h, 4h, 4h)
GEN_BINARY_TEST(umaxp, 16b, 16b, 16b)
GEN_BINARY_TEST(umaxp, 8b, 8b, 8b)
-
GEN_BINARY_TEST(sminp, 4s, 4s, 4s)
GEN_BINARY_TEST(sminp, 2s, 2s, 2s)
GEN_BINARY_TEST(sminp, 8h, 8h, 8h)
GEN_BINARY_TEST(sminp, 4h, 4h, 4h)
GEN_BINARY_TEST(sminp, 16b, 16b, 16b)
GEN_BINARY_TEST(sminp, 8b, 8b, 8b)
-
GEN_BINARY_TEST(uminp, 4s, 4s, 4s)
GEN_BINARY_TEST(uminp, 2s, 2s, 2s)
GEN_BINARY_TEST(uminp, 8h, 8h, 8h)
@@ -2028,6 +1960,11 @@
GEN_BINARY_TEST(uminp, 16b, 16b, 16b)
GEN_BINARY_TEST(uminp, 8b, 8b, 8b)
+// test_SMAXV is a handwritten function
+// test_UMAXV is a handwritten function
+// test_SMINV is a handwritten function
+// test_UMINV is a handwritten function
+
GEN_THREEVEC_TEST(smlal_2d_2s_s0, "smlal v29.2d, v20.2s, v3.s[0]", 29, 20, 3)
GEN_THREEVEC_TEST(smlal_2d_2s_s3, "smlal v29.2d, v20.2s, v3.s[3]", 29, 20, 3)
GEN_THREEVEC_TEST(smlal2_2d_4s_s1, "smlal2 v29.2d, v20.4s, v3.s[1]", 29, 20, 3)
@@ -2036,7 +1973,6 @@
GEN_THREEVEC_TEST(smlal_4s_4h_h7, "smlal v29.4s, v20.4h, v3.h[7]", 29, 20, 3)
GEN_THREEVEC_TEST(smlal2_4s_8h_h1, "smlal2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
GEN_THREEVEC_TEST(smlal2_4s_8h_h4, "smlal2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
-
GEN_THREEVEC_TEST(umlal_2d_2s_s0, "umlal v29.2d, v20.2s, v3.s[0]", 29, 20, 3)
GEN_THREEVEC_TEST(umlal_2d_2s_s3, "umlal v29.2d, v20.2s, v3.s[3]", 29, 20, 3)
GEN_THREEVEC_TEST(umlal2_2d_4s_s1, "umlal2 v29.2d, v20.4s, v3.s[1]", 29, 20, 3)
@@ -2045,7 +1981,6 @@
GEN_THREEVEC_TEST(umlal_4s_4h_h7, "umlal v29.4s, v20.4h, v3.h[7]", 29, 20, 3)
GEN_THREEVEC_TEST(umlal2_4s_8h_h1, "umlal2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
GEN_THREEVEC_TEST(umlal2_4s_8h_h4, "umlal2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
-
GEN_THREEVEC_TEST(smlsl_2d_2s_s0, "smlsl v29.2d, v20.2s, v3.s[0]", 29, 20, 3)
GEN_THREEVEC_TEST(smlsl_2d_2s_s3, "smlsl v29.2d, v20.2s, v3.s[3]", 29, 20, 3)
GEN_THREEVEC_TEST(smlsl2_2d_4s_s1, "smlsl2 v29.2d, v20.4s, v3.s[1]", 29, 20, 3)
@@ -2054,7 +1989,6 @@
GEN_THREEVEC_TEST(smlsl_4s_4h_h7, "smlsl v29.4s, v20.4h, v3.h[7]", 29, 20, 3)
GEN_THREEVEC_TEST(smlsl2_4s_8h_h1, "smlsl2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
GEN_THREEVEC_TEST(smlsl2_4s_8h_h4, "smlsl2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
-
GEN_THREEVEC_TEST(umlsl_2d_2s_s0, "umlsl v29.2d, v20.2s, v3.s[0]", 29, 20, 3)
GEN_THREEVEC_TEST(umlsl_2d_2s_s3, "umlsl v29.2d, v20.2s, v3.s[3]", 29, 20, 3)
GEN_THREEVEC_TEST(umlsl2_2d_4s_s1, "umlsl2 v29.2d, v20.4s, v3.s[1]", 29, 20, 3)
@@ -2063,7 +1997,6 @@
GEN_THREEVEC_TEST(umlsl_4s_4h_h7, "umlsl v29.4s, v20.4h, v3.h[7]", 29, 20, 3)
GEN_THREEVEC_TEST(umlsl2_4s_8h_h1, "umlsl2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
GEN_THREEVEC_TEST(umlsl2_4s_8h_h4, "umlsl2 v29.4s, v20.8h, v3.h[1]", 29, 20, 3)
-
GEN_THREEVEC_TEST(smull_2d_2s_s0, "smull v29.2d, v20.2s, v3.s[0]", 29, 20, 3)
GEN_THREEVEC_TEST(smull_2d_2s_s3, "smull v29.2d, v20.2s, v3.s[3]", 29, 20, 3)
GEN_THREEVEC_TEST(smull2_2d_4s_s1, "smull2 v29.2d, v20.4s, v3.s[1]", 29, 20, 3...
[truncated message content] |
|
From: Christian B. <bor...@de...> - 2014-11-01 05:14:01
|
valgrind revision: 14680 VEX revision: 2986 C compiler: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] GDB: GNU gdb (GDB) SUSE (7.5.1-0.7.29) Assembler: GNU assembler (GNU Binutils; SUSE Linux Enterprise 11) 2.23.1 C library: GNU C Library stable release version 2.11.3 (20110527) uname -mrs: Linux 3.0.101-0.35-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP3 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP3 gcc 4.3.4 on z196 (s390x) ) Started at 2014-11-01 03:45:01 CET Ended at 2014-11-01 06:13:47 CET Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 662 tests, 3 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/origin5-bz2 (stderr) helgrind/tests/pth_cond_destroy_busy (stderr) helgrind/tests/tc20_verifywrap (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.23s no: 4.4s (19.3x, -----) me: 7.3s (32.0x, -----) ca:26.3s (114.2x, -----) he: 5.4s (23.5x, -----) ca: 9.2s (40.1x, -----) dr: 5.9s (25.7x, -----) ma: 4.8s (21.1x, -----) bigcode1 valgrind-old:0.23s no: 4.4s (19.3x, 0.2%) me: 7.6s (33.0x, -3.1%) ca:26.3s (114.3x, -0.0%) he: 5.4s (23.5x, 0.0%) ca: 9.2s (40.0x, 0.1%) dr: 5.9s (25.7x, -0.2%) ma: 4.8s (21.1x, 0.0%) -- bigcode2 -- bigcode2 valgrind-new:0.24s no: 7.6s (31.7x, -----) me:14.6s (60.7x, -----) ca:39.5s (164.4x, -----) he:10.6s (44.3x, -----) ca:14.6s (60.9x, -----) dr:10.3s (42.8x, -----) ma: 8.4s (35.1x, -----) bigcode2 valgrind-old:0.24s no: 7.6s (31.7x, -0.1%) me:15.1s (62.8x, -3.4%) ca:39.4s (164.2x, 0.1%) he:10.6s (44.3x, -0.1%) ca:14.6s (60.8x, 0.1%) dr:10.2s (42.7x, 0.2%) ma: 8.4s (34.9x, 0.6%) -- bz2 -- bz2 valgrind-new:0.70s no: 5.0s ( 7.2x, -----) me:13.1s (18.7x, -----) ca:30.5s (43.5x, -----) he:19.9s (28.5x, -----) ca:34.3s (49.0x, -----) dr:29.8s (42.6x, -----) ma: 3.6s ( 5.2x, -----) bz2 valgrind-old:0.70s no: 5.1s ( 7.2x, -0.6%) me:13.0s (18.6x, 0.4%) ca:30.5s (43.6x, -0.1%) he:19.9s (28.4x, 0.1%) ca:34.3s (49.0x, -0.0%) dr:29.7s (42.4x, 0.3%) ma: 3.8s ( 5.4x, -3.3%) -- fbench -- fbench valgrind-new:0.41s no: 1.6s ( 4.0x, -----) me: 4.5s (11.0x, -----) ca: 9.3s (22.7x, -----) he: 6.5s (15.8x, -----) ca: 7.3s (17.9x, -----) dr: 5.8s (14.1x, -----) ma: 1.7s ( 4.1x, -----) fbench valgrind-old:0.41s no: 1.6s ( 4.0x, -0.6%) me: 4.5s (11.0x, -0.4%) ca: 9.3s (22.8x, -0.2%) he: 6.5s (15.8x, 0.0%) ca: 7.3s (17.8x, 0.4%) dr: 5.8s (14.2x, -0.2%) ma: 1.7s ( 4.1x, 0.6%) -- ffbench -- ffbench valgrind-new:0.21s no: 1.1s ( 5.0x, -----) me: 3.5s (16.7x, -----) ca: 3.0s (14.4x, -----) he:44.4s (211.6x, -----) ca: 9.6s (45.7x, -----) dr: 7.3s (34.8x, -----) ma: 1.0s ( 4.6x, -----) ffbench valgrind-old:0.21s no: 1.1s ( 5.0x, 0.9%) me: 3.4s (16.4x, 1.7%) ca: 3.0s (14.3x, 0.3%) he:44.4s (211.5x, 0.0%) ca: 9.6s (45.7x, 0.1%) dr: 7.3s (35.0x, -0.4%) ma: 1.0s ( 4.6x, 0.0%) -- heap -- heap valgrind-new:0.23s no: 1.8s ( 7.9x, -----) me: 8.9s (38.9x, -----) ca:13.2s (57.6x, -----) he:13.1s (56.7x, -----) ca:11.2s (48.7x, -----) dr: 7.8s (33.9x, -----) ma: 7.6s (33.2x, -----) heap valgrind-old:0.23s no: 1.8s ( 7.9x, 0.0%) me: 9.0s (39.0x, -0.4%) ca:13.3s (57.9x, -0.5%) he:13.1s (56.7x, 0.0%) ca:11.3s (49.1x, -0.8%) dr: 7.7s (33.6x, 0.9%) ma: 7.7s (33.3x, -0.1%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.23s no: 2.0s ( 8.6x, -----) me:13.1s (56.8x, -----) ca:14.3s (62.4x, -----) he:14.4s (62.4x, -----) ca:12.5s (54.5x, -----) dr: 8.8s (38.4x, -----) ma: 7.8s (33.9x, -----) heap_pdb4 valgrind-old:0.23s no: 2.0s ( 8.7x, -0.5%) me:13.1s (56.8x, 0.0%) ca:14.3s (62.3x, 0.2%) he:14.7s (63.7x, -2.0%) ca:12.5s (54.4x, 0.2%) dr: 8.7s (38.0x, 1.0%) ma: 7.8s (33.8x, 0.3%) -- many-loss-records -- many-loss-records valgrind-new:0.03s no: 0.5s (16.0x, -----) me: 2.3s (78.0x, -----) ca: 2.0s (65.3x, -----) he: 2.4s (80.3x, -----) ca: 1.9s (64.7x, -----) dr: 1.9s (64.3x, -----) ma: 1.6s (53.7x, -----) many-loss-records valgrind-old:0.03s no: 0.5s (16.0x, 0.0%) me: 2.4s (78.3x, -0.4%) ca: 1.9s (65.0x, 0.5%) he: 2.4s (80.3x, 0.0%) ca: 1.9s (64.7x, 0.0%) dr: 1.9s (64.7x, -0.5%) ma: 1.6s (53.7x, -0.0%) -- many-xpts -- many-xpts valgrind-new:0.07s no: 0.6s ( 8.7x, -----) me: 3.4s (48.4x, -----) ca:372.0s (5314.6x, -----) he: 6.9s (99.1x, -----) ca: 2.8s (40.1x, -----) dr: 2.7s (38.4x, -----) ma: 2.5s (35.9x, -----) many-xpts valgrind-old:0.07s no: 0.6s ( 8.7x, 0.0%) me: 3.4s (48.4x, 0.0%) ca:373.8s (5340.3x, -0.5%) he: 6.9s (99.1x, -0.0%) ca: 2.8s (40.1x, 0.0%) dr: 2.7s (38.4x, 0.0%) ma: 2.5s (35.7x, 0.4%) -- sarp -- sarp valgrind-new:0.03s no: 0.6s (20.0x, -----) me: 3.7s (123.3x, -----) ca: 3.2s (107.3x, -----) he:18.0s (600.3x, -----) ca: 2.0s (68.0x, -----) dr: 1.6s (52.7x, -----) ma: 0.5s (16.0x, -----) sarp valgrind-old:0.03s no: 0.6s (20.0x, 0.0%) me: 3.7s (123.0x, 0.3%) ca: 3.2s (107.7x, -0.3%) he:17.6s (587.3x, 2.2%) ca: 2.0s (68.3x, -0.5%) dr: 1.6s (52.7x, 0.0%) ma: 0.5s (16.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.22s no: 2.7s (12.2x, -----) me:14.6s (66.5x, -----) ca:30.0s (136.2x, -----) he:28.2s (128.3x, -----) ca:21.3s (97.0x, -----) dr:20.9s (95.0x, -----) ma: 3.9s (17.8x, -----) tinycc valgrind-old:0.22s no: 2.7s (12.2x, 0.0%) me:14.6s (66.4x, 0.1%) ca:29.9s (136.0x, 0.2%) he:28.3s (128.5x, -0.1%) ca:21.3s (96.6x, 0.4%) dr:20.9s (95.2x, -0.2%) ma: 3.9s (17.8x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 112m8.836s user 111m26.383s sys 0m34.446s |