You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
1
(12) |
2
(14) |
3
(8) |
|
4
(6) |
5
(15) |
6
(14) |
7
(13) |
8
(14) |
9
(13) |
10
(9) |
|
11
(6) |
12
(12) |
13
(10) |
14
(12) |
15
(9) |
16
(9) |
17
(2) |
|
18
(16) |
19
(21) |
20
(17) |
21
(6) |
22
(5) |
23
(3) |
24
(12) |
|
25
(10) |
26
(5) |
27
(15) |
28
(16) |
29
(12) |
30
(11) |
31
(11) |
|
From: Rich C. <rc...@wi...> - 2015-01-29 04:34:02
|
valgrind revision: 14895
VEX revision: 3079
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.6-2-desktop x86_64
Vendor version: openSUSE 13.2 (Harlequin)
Nightly build on ultra ( gcc (SUSE Linux) 4.8.3 20140627 [gcc-4_8-branch revision 212064] Linux 3.16.6-2-desktop x86_64 )
Started at 2015-01-28 21:30:01 CST
Ended at 2015-01-28 22:33:52 CST
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
== 615 tests, 6 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)
helgrind/tests/hg05_race2 (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
=================================================
./valgrind-new/gdbserver_tests/hgtls.stdoutB.diff
=================================================
--- hgtls.stdoutB.exp 2015-01-28 22:02:21.739506699 -0600
+++ hgtls.stdoutB.out 2015-01-28 22:21:49.156559883 -0600
@@ -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/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2015-01-28 22:07:49.047548711 -0600
+++ hg05_race2.stderr.out 2015-01-28 22:28:23.801738074 -0600
@@ -26,8 +26,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
----------------------------------------------------------------
@@ -42,8 +41,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2015-01-28 22:07:49.069548153 -0600
+++ tc09_bad_unlock.stderr.out 2015-01-28 22:28:51.125988317 -0600
@@ -37,7 +37,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:31)
by 0x........: main (tc09_bad_unlock.c:49)
Address 0x........ is on thread #x's stack
- in frame #x, created by nearly_main (tc09_bad_unlock.c:16)
----------------------------------------------------------------
=================================================
./valgrind-new/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2015-01-28 22:02:49.780739526 -0600
+++ err_disable3.stderr.out 2015-01-28 22:23:39.983522181 -0600
@@ -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 2015-01-28 22:03:21.793863281 -0600
+++ err_disable4.stderr.out 2015-01-28 22:23:41.246487558 -0600
@@ -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 2015-01-28 22:03:07.070266359 -0600
+++ threadname.stderr.out 2015-01-28 22:25:40.435219457 -0600
@@ -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 2015-01-28 22:03:00.585442938 -0600
+++ threadname_xml.stderr.out 2015-01-28 22:25:41.075201906 -0600
@@ -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 2015-01-28 21:31:07.158667311 -0600
+++ hgtls.stdoutB.out 2015-01-28 21:49:47.457423066 -0600
@@ -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/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2015-01-28 21:36:56.905913790 -0600
+++ hg05_race2.stderr.out 2015-01-28 21:56:24.786338829 -0600
@@ -26,8 +26,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
----------------------------------------------------------------
@@ -42,8 +41,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2015-01-28 21:36:56.927913685 -0600
+++ tc09_bad_unlock.stderr.out 2015-01-28 21:56:52.043578382 -0600
@@ -37,7 +37,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:31)
by 0x........: main (tc09_bad_unlock.c:49)
Address 0x........ is on thread #x's stack
- in frame #x, created by nearly_main (tc09_bad_unlock.c:16)
----------------------------------------------------------------
=================================================
./valgrind-old/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2015-01-28 21:31:44.692620191 -0600
+++ err_disable3.stderr.out 2015-01-28 21:51:38.179334425 -0600
@@ -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 2015-01-28 21:32:27.123438678 -0600
+++ err_disable4.stderr.out 2015-01-28 21:51:39.438299305 -0600
@@ -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 2015-01-28 21:32:05.936027398 -0600
+++ threadname.stderr.out 2015-01-28 21:53:39.118960617 -0600
@@ -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 2015-01-28 21:31:58.971219038 -0600
+++ threadname_xml.stderr.out 2015-01-28 21:53:39.771942401 -0600
@@ -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...> - 2015-01-29 04:13:57
|
valgrind revision: 14895 VEX revision: 3079 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2015-01-29 03:02:14 GMT Ended at 2015-01-29 04:13:46 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 == 698 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.3s (30.1x, -----) ca:14.3s (130.5x, -----) he: 2.1s (18.9x, -----) ca: 3.9s (35.0x, -----) dr: 2.0s (18.0x, -----) ma: 2.0s (17.9x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (15.0x, 1.2%) me: 3.4s (30.9x, -2.7%) ca:14.4s (131.1x, -0.5%) he: 2.0s (18.6x, 1.4%) ca: 3.9s (35.2x, -0.5%) dr: 2.0s (18.0x, 0.0%) ma: 1.9s (17.7x, 1.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.5x, -----) me: 8.4s (76.8x, -----) ca:25.9s (235.2x, -----) he: 5.0s (45.5x, -----) ca: 7.4s (66.9x, -----) dr: 4.7s (42.7x, -----) ma: 4.6s (42.1x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.2x, 0.7%) me: 8.6s (77.9x, -1.4%) ca:25.6s (233.1x, 0.9%) he: 5.0s (45.6x, -0.2%) ca: 7.3s (66.6x, 0.4%) dr: 4.7s (42.6x, 0.2%) ma: 4.6s (41.9x, 0.4%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.7s (11.0x, -----) ca:13.2s (25.4x, -----) he: 8.2s (15.8x, -----) ca:10.9s (20.9x, -----) dr:10.8s (20.7x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, 0.6%) me: 5.7s (11.0x, 0.3%) ca:13.2s (25.4x, 0.1%) he: 8.3s (16.0x, -1.0%) ca:10.9s (20.9x, -0.1%) dr:10.6s (20.3x, 1.8%) ma: 1.6s ( 3.1x, -0.6%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.8s (17.2x, -----) ca: 5.5s (25.2x, -----) he: 2.8s (12.8x, -----) ca: 3.1s (14.3x, -----) dr: 2.6s (12.0x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.5x, 1.0%) me: 3.8s (17.1x, 0.3%) ca: 5.5s (25.2x, 0.0%) he: 2.9s (13.0x, -1.4%) ca: 3.1s (14.3x, 0.0%) dr: 2.6s (11.9x, 0.4%) ma: 1.0s ( 4.6x, 2.9%) -- ffbench -- ffbench valgrind-new:0.20s no: 0.9s ( 4.5x, -----) me: 2.8s (14.0x, -----) ca: 1.8s ( 9.1x, -----) he: 5.7s (28.5x, -----) ca: 4.1s (20.6x, -----) dr: 3.4s (16.8x, -----) ma: 0.9s ( 4.4x, -----) ffbench valgrind-old:0.20s no: 0.9s ( 4.7x, -4.4%) me: 2.9s (14.4x, -2.8%) ca: 1.9s ( 9.4x, -3.3%) he: 5.7s (28.6x, -0.4%) ca: 4.2s (21.2x, -3.2%) dr: 3.3s (16.7x, 0.6%) ma: 0.9s ( 4.4x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.4x, -----) me: 5.1s (64.0x, -----) ca: 6.3s (78.2x, -----) he: 6.6s (83.0x, -----) ca: 3.4s (41.9x, -----) dr: 4.3s (54.4x, -----) ma: 4.7s (58.4x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.4x, 0.0%) me: 5.0s (62.3x, 2.7%) ca: 6.2s (77.1x, 1.4%) he: 6.5s (81.4x, 2.0%) ca: 3.3s (41.2x, 1.5%) dr: 4.2s (52.6x, 3.2%) ma: 4.7s (58.1x, 0.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.2x, -----) me: 8.4s (76.7x, -----) ca: 6.7s (60.9x, -----) he: 7.5s (67.7x, -----) ca: 3.5s (31.7x, -----) dr: 4.8s (44.1x, -----) ma: 4.8s (43.8x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 5.9x, 4.4%) me: 8.4s (76.5x, 0.2%) ca: 6.7s (61.3x, -0.6%) he: 7.5s (68.6x, -1.3%) ca: 3.5s (31.4x, 1.1%) dr: 4.8s (43.9x, 0.4%) ma: 4.7s (42.9x, 2.1%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.3s (133.0x, -----) ca: 1.0s (100.0x, -----) he: 1.2s (118.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.1s (105.0x, -----) ma: 1.0s (102.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 3.8%) me: 1.4s (141.0x, -6.0%) ca: 1.1s (106.0x, -6.0%) he: 1.2s (122.0x, -3.4%) ca: 0.7s (70.0x, -6.1%) dr: 1.1s (109.0x, -3.8%) ma: 1.0s (102.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.3s ( 7.8x, -----) me: 2.0s (49.8x, -----) ca: 2.7s (67.5x, -----) he: 2.3s (57.5x, -----) ca: 1.0s (25.0x, -----) dr: 1.5s (38.5x, -----) ma: 1.5s (37.0x, -----) many-xpts valgrind-old:0.04s no: 0.3s ( 8.0x, -3.2%) me: 2.0s (49.2x, 1.0%) ca: 2.7s (68.0x, -0.7%) he: 2.4s (58.8x, -2.2%) ca: 1.0s (25.2x, -1.0%) dr: 1.5s (38.5x, 0.0%) ma: 1.5s (37.0x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.7s (133.0x, -----) ca: 1.9s (93.5x, -----) he: 6.6s (330.0x, -----) ca: 1.0s (48.5x, -----) dr: 1.0s (51.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.7s (133.0x, 0.0%) ca: 1.9s (94.0x, -0.5%) he: 6.6s (329.0x, 0.3%) ca: 1.0s (48.0x, 1.0%) dr: 1.0s (51.5x, 0.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 9.0x, -----) me: 9.2s (57.4x, -----) ca:11.2s (70.1x, -----) he: 9.9s (62.1x, -----) ca: 8.4s (52.5x, -----) dr: 8.2s (51.6x, -----) ma: 2.5s (15.5x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 9.1x, -0.7%) me: 9.2s (57.7x, -0.5%) ca:11.2s (70.1x, 0.0%) he: 9.9s (61.9x, 0.3%) ca: 8.4s (52.3x, 0.4%) dr: 8.3s (51.7x, -0.2%) ma: 2.5s (15.9x, -2.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m26.109s user 33m28.645s sys 0m22.880s |
|
From: Tom H. <to...@co...> - 2015-01-29 04:05:24
|
valgrind revision: 14895 VEX revision: 3079 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2015-01-29 02:51:24 GMT Ended at 2015-01-29 04:05:08 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 == 698 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.10s no: 1.6s (16.5x, -----) me: 3.5s (34.9x, -----) ca:14.4s (144.1x, -----) he: 2.1s (20.9x, -----) ca: 3.9s (38.6x, -----) dr: 2.0s (20.2x, -----) ma: 2.0s (19.6x, -----) bigcode1 valgrind-old:0.10s no: 1.7s (16.7x, -1.2%) me: 3.4s (33.9x, 2.9%) ca:14.4s (144.1x, 0.0%) he: 2.1s (20.9x, 0.0%) ca: 3.9s (38.8x, -0.5%) dr: 2.0s (20.4x, -1.0%) ma: 2.0s (19.7x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.10s no: 4.0s (39.8x, -----) me: 8.5s (85.4x, -----) ca:26.8s (267.5x, -----) he: 5.1s (51.0x, -----) ca: 7.3s (73.5x, -----) dr: 4.8s (47.7x, -----) ma: 4.6s (46.2x, -----) bigcode2 valgrind-old:0.10s no: 4.0s (40.3x, -1.3%) me: 8.6s (85.7x, -0.4%) ca:25.7s (257.1x, 3.9%) he: 5.1s (50.8x, 0.4%) ca: 7.3s (73.2x, 0.4%) dr: 4.7s (47.4x, 0.6%) ma: 4.7s (46.5x, -0.6%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.8s (11.1x, -----) ca:13.3s (25.7x, -----) he: 8.4s (16.2x, -----) 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, 0.6%) me: 5.8s (11.1x, -0.2%) ca:13.3s (25.7x, 0.0%) he: 8.4s (16.1x, 0.8%) ca:10.9s (21.0x, -0.1%) dr:10.6s (20.4x, -0.6%) ma: 1.6s ( 3.1x, -0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.8s (17.3x, -----) ca: 5.7s (25.7x, -----) he: 2.9s (13.0x, -----) ca: 3.2s (14.4x, -----) dr: 2.7s (12.1x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.8s (17.1x, 0.8%) ca: 5.6s (25.5x, 0.9%) he: 2.8s (12.8x, 1.4%) ca: 3.2s (14.5x, -0.9%) dr: 2.6s (12.0x, 0.7%) ma: 1.1s ( 4.8x, 0.0%) -- ffbench -- ffbench valgrind-new:0.20s no: 0.9s ( 4.7x, -----) me: 2.9s (14.7x, -----) ca: 1.9s ( 9.3x, -----) he: 6.2s (31.0x, -----) ca: 4.2s (20.9x, -----) dr: 3.5s (17.2x, -----) ma: 0.9s ( 4.4x, -----) ffbench valgrind-old:0.20s no: 0.9s ( 4.7x, 1.1%) me: 2.9s (14.7x, 0.0%) ca: 1.9s ( 9.3x, 0.0%) he: 5.7s (28.5x, 8.1%) ca: 4.2s (21.0x, -0.2%) dr: 3.5s (17.6x, -2.0%) ma: 0.9s ( 4.5x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.9x, -----) me: 5.0s (62.6x, -----) ca: 6.6s (83.0x, -----) he: 7.0s (87.6x, -----) ca: 3.3s (40.9x, -----) dr: 4.7s (58.4x, -----) ma: 4.8s (60.0x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.9x, 0.0%) me: 5.0s (63.1x, -0.8%) ca: 6.6s (82.5x, 0.6%) he: 6.9s (86.2x, 1.6%) ca: 3.3s (41.6x, -1.8%) dr: 4.5s (55.6x, 4.7%) ma: 4.8s (59.4x, 1.0%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.7x, -----) me: 8.6s (86.2x, -----) ca: 7.2s (72.1x, -----) he: 7.7s (76.7x, -----) ca: 3.6s (36.5x, -----) dr: 5.0s (50.2x, -----) ma: 5.0s (49.6x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.8x, -1.5%) me: 8.7s (86.8x, -0.7%) ca: 7.3s (72.9x, -1.1%) he: 7.9s (79.2x, -3.3%) ca: 3.7s (36.6x, -0.3%) dr: 5.1s (51.2x, -2.0%) ma: 4.9s (48.7x, 1.8%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.4s (139.0x, -----) ca: 1.0s (104.0x, -----) he: 1.2s (118.0x, -----) ca: 0.7s (67.0x, -----) dr: 1.1s (108.0x, -----) ma: 1.0s (100.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, -4.0%) me: 1.5s (147.0x, -5.8%) ca: 1.1s (108.0x, -3.8%) he: 1.2s (122.0x, -3.4%) ca: 0.7s (69.0x, -3.0%) dr: 1.1s (112.0x, -3.7%) ma: 1.0s (102.0x, -2.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (11.0x, -----) me: 1.9s (64.7x, -----) ca: 2.8s (92.0x, -----) he: 2.3s (76.7x, -----) ca: 1.0s (33.0x, -----) dr: 1.6s (52.7x, -----) ma: 1.4s (48.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 3.0%) me: 2.0s (66.0x, -2.1%) ca: 2.8s (91.7x, 0.4%) he: 2.2s (75.0x, 2.2%) ca: 1.0s (33.3x, -1.0%) dr: 1.6s (52.0x, 1.3%) ma: 1.4s (48.0x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.5s (126.0x, -----) ca: 1.8s (88.5x, -----) he: 6.7s (335.5x, -----) ca: 0.9s (46.5x, -----) dr: 1.0s (51.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (13.5x, 3.6%) me: 2.5s (126.5x, -0.4%) ca: 1.7s (87.0x, 1.7%) he: 6.7s (333.0x, 0.7%) ca: 0.9s (45.0x, 3.2%) dr: 1.0s (50.5x, 1.9%) ma: 0.3s (14.5x, 3.3%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.5x, -----) me: 8.7s (58.2x, -----) ca:10.7s (71.6x, -----) he: 9.4s (62.6x, -----) ca: 8.0s (53.3x, -----) dr: 7.9s (52.7x, -----) ma: 2.5s (16.3x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.3x, 2.1%) me: 8.8s (58.3x, -0.2%) ca:10.7s (71.1x, 0.7%) he: 9.4s (62.7x, -0.1%) ca: 7.9s (52.5x, 1.4%) dr: 7.8s (51.8x, 1.6%) ma: 2.5s (16.5x, -1.2%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m47.603s user 33m44.340s sys 0m23.614s |
|
From: Tom H. <to...@co...> - 2015-01-29 03:55:58
|
valgrind revision: 14895 VEX revision: 3079 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 19 (Schrödingerâs Cat) ) Started at 2015-01-29 02:41:12 GMT Ended at 2015-01-29 03:55:43 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 == 698 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.10s no: 1.7s (16.7x, -----) me: 3.5s (34.5x, -----) ca:13.3s (133.2x, -----) he: 2.1s (20.9x, -----) ca: 3.8s (37.8x, -----) dr: 2.0s (20.5x, -----) ma: 1.9s (19.5x, -----) bigcode1 valgrind-old:0.10s no: 1.7s (16.7x, 0.0%) me: 3.4s (34.4x, 0.3%) ca:13.3s (133.1x, 0.1%) he: 2.1s (20.9x, 0.0%) ca: 3.8s (38.2x, -1.1%) dr: 2.0s (20.4x, 0.5%) ma: 1.9s (19.4x, 0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.0x, -----) me: 8.6s (78.2x, -----) ca:24.6s (223.3x, -----) he: 5.0s (45.2x, -----) ca: 7.1s (64.3x, -----) dr: 4.8s (43.2x, -----) ma: 4.5s (41.1x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.6x, 1.0%) me: 8.5s (77.5x, 0.8%) ca:25.1s (228.1x, -2.2%) he: 5.0s (45.9x, -1.6%) ca: 7.2s (65.7x, -2.3%) dr: 4.7s (42.7x, 1.1%) ma: 4.5s (41.1x, 0.0%) -- bz2 -- bz2 valgrind-new:0.49s no: 1.6s ( 3.2x, -----) me: 5.8s (11.8x, -----) ca:12.5s (25.5x, -----) he: 8.7s (17.8x, -----) ca:10.4s (21.2x, -----) dr:10.6s (21.7x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.49s no: 1.6s ( 3.2x, -0.0%) me: 5.8s (11.7x, 0.3%) ca:12.7s (25.8x, -1.4%) he: 8.8s (17.9x, -0.7%) ca:10.4s (21.2x, -0.1%) dr:10.7s (21.8x, -0.5%) ma: 1.6s ( 3.2x, 0.6%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.5s (16.0x, -----) ca: 5.5s (24.9x, -----) he: 3.0s (13.5x, -----) ca: 3.0s (13.5x, -----) dr: 2.7s (12.4x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.5s (16.0x, -0.6%) ca: 5.5s (25.0x, -0.4%) he: 3.0s (13.7x, -1.0%) ca: 3.0s (13.5x, 0.3%) dr: 2.7s (12.4x, 0.4%) 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.9s ( 8.6x, -----) he: 6.1s (27.6x, -----) ca: 4.3s (19.8x, -----) dr: 3.4s (15.5x, -----) ma: 0.9s ( 4.1x, -----) ffbench valgrind-old:0.22s no: 1.0s ( 4.4x, 0.0%) me: 3.0s (13.6x, -1.0%) ca: 1.9s ( 8.6x, -0.5%) he: 5.2s (23.7x, 14.0%) ca: 4.3s (19.6x, 0.9%) dr: 3.4s (15.3x, 1.2%) ma: 0.9s ( 4.1x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.2s (64.5x, -----) ca: 6.0s (75.5x, -----) he: 6.8s (84.8x, -----) ca: 3.2s (40.0x, -----) dr: 5.0s (62.7x, -----) ma: 4.7s (58.1x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 1.6%) me: 5.2s (64.6x, -0.2%) ca: 6.1s (75.9x, -0.5%) he: 6.8s (84.6x, 0.1%) ca: 3.2s (39.8x, 0.6%) dr: 4.4s (55.2x, 12.0%) ma: 4.7s (58.8x, -1.1%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.7x, -----) me: 9.4s (93.9x, -----) ca: 6.6s (66.1x, -----) he: 7.7s (77.2x, -----) ca: 3.6s (35.6x, -----) dr: 4.9s (48.8x, -----) ma: 4.9s (48.7x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.6x, 1.5%) me: 9.4s (93.6x, 0.3%) ca: 6.6s (65.6x, 0.8%) he: 7.7s (77.3x, -0.1%) ca: 3.6s (35.7x, -0.3%) dr: 5.2s (52.4x, -7.4%) ma: 4.9s (49.2x, -1.0%) -- 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 (130.0x, -----) ca: 0.7s (67.0x, -----) dr: 1.2s (116.0x, -----) ma: 1.1s (106.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (27.0x, -3.8%) me: 1.5s (147.0x, 0.0%) ca: 1.0s (100.0x, 1.0%) he: 1.3s (129.0x, 0.8%) ca: 0.7s (66.0x, 1.5%) dr: 1.2s (117.0x, -0.9%) ma: 1.0s (103.0x, 2.8%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.7s (55.3x, -----) ca: 2.5s (83.3x, -----) he: 2.2s (73.7x, -----) ca: 0.9s (31.3x, -----) dr: 1.6s (51.7x, -----) ma: 1.6s (52.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.7s (55.7x, -0.6%) ca: 2.5s (84.3x, -1.2%) he: 2.2s (74.0x, -0.5%) ca: 0.9s (31.0x, 1.1%) dr: 1.5s (51.3x, 0.6%) ma: 1.5s (51.3x, 1.9%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.3s (114.0x, -----) ca: 1.7s (85.5x, -----) he: 6.8s (337.5x, -----) ca: 0.9s (45.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.3s (115.0x, -0.9%) ca: 1.7s (85.5x, 0.0%) he: 6.7s (335.5x, 0.6%) ca: 0.9s (46.0x, -1.1%) dr: 1.1s (54.5x, 0.0%) ma: 0.3s (15.5x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.6x, -----) me: 7.9s (49.2x, -----) ca:10.6s (66.4x, -----) he: 9.8s (61.3x, -----) ca: 7.7s (48.2x, -----) dr: 8.1s (50.4x, -----) ma: 2.4s (14.7x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.6x, 0.0%) me: 7.9s (49.2x, 0.0%) ca:10.6s (66.0x, 0.7%) he: 9.8s (61.4x, -0.1%) ca: 7.6s (47.7x, 1.2%) dr: 8.1s (50.4x, 0.0%) ma: 2.4s (14.8x, -0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m5.355s user 32m59.949s sys 0m24.375s |
|
From: Tom H. <to...@co...> - 2015-01-29 03:45:48
|
valgrind revision: 14895 VEX revision: 3079 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 20 ) Started at 2015-01-29 02:31:11 GMT Ended at 2015-01-29 03:45:38 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 == 698 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 (30.8x, -----) ca:13.3s (120.8x, -----) he: 2.1s (18.8x, -----) ca: 3.8s (34.6x, -----) dr: 2.0s (18.5x, -----) ma: 1.9s (17.4x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.9x, 0.6%) me: 3.4s (30.5x, 0.9%) ca:13.2s (120.5x, 0.3%) he: 2.1s (18.9x, -0.5%) ca: 3.8s (34.5x, 0.3%) dr: 2.0s (18.5x, 0.5%) ma: 1.9s (17.6x, -1.6%) -- bigcode2 -- bigcode2 valgrind-new:0.10s no: 3.9s (39.4x, -----) me: 8.7s (87.0x, -----) ca:26.1s (260.5x, -----) he: 4.9s (49.4x, -----) ca: 7.1s (71.2x, -----) dr: 4.7s (47.3x, -----) ma: 4.5s (45.5x, -----) bigcode2 valgrind-old:0.10s no: 3.9s (39.4x, 0.0%) me: 8.7s (87.0x, 0.0%) ca:26.1s (260.6x, -0.0%) he: 5.0s (49.5x, -0.2%) ca: 7.2s (71.5x, -0.4%) dr: 4.6s (46.4x, 1.9%) ma: 4.6s (45.7x, -0.4%) -- bz2 -- bz2 valgrind-new:0.49s no: 1.6s ( 3.2x, -----) me: 5.6s (11.5x, -----) ca:12.5s (25.5x, -----) he: 8.5s (17.3x, -----) ca:10.3s (21.0x, -----) dr:10.5s (21.4x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.49s no: 1.6s ( 3.2x, 0.0%) me: 5.6s (11.5x, 0.0%) ca:12.5s (25.6x, -0.2%) he: 8.4s (17.2x, 0.7%) ca:10.3s (21.1x, -0.3%) dr:10.4s (21.3x, 0.5%) ma: 1.6s ( 3.2x, 0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.4s (15.6x, -----) ca: 5.5s (24.9x, -----) he: 2.6s (11.8x, -----) ca: 3.0s (13.6x, -----) dr: 2.5s (11.4x, -----) ma: 1.0s ( 4.7x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 1.0%) me: 3.5s (15.7x, -0.6%) ca: 5.5s (24.9x, 0.2%) he: 2.6s (11.9x, -0.8%) ca: 3.0s (13.6x, 0.0%) dr: 2.5s (11.6x, -1.6%) ma: 1.1s ( 4.8x, -2.9%) -- ffbench -- ffbench valgrind-new:0.22s no: 0.9s ( 4.3x, -----) me: 3.0s (13.5x, -----) ca: 1.9s ( 8.5x, -----) he: 5.8s (26.4x, -----) ca: 4.4s (20.0x, -----) dr: 3.4s (15.3x, -----) ma: 0.9s ( 4.1x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.3x, 0.0%) me: 3.0s (13.5x, 0.0%) ca: 1.9s ( 8.5x, 0.0%) he: 6.2s (28.1x, -6.6%) ca: 4.4s (20.2x, -1.1%) dr: 3.4s (15.4x, -0.6%) ma: 0.9s ( 4.1x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.1s (63.6x, -----) ca: 6.0s (75.4x, -----) he: 6.7s (83.8x, -----) ca: 3.3s (41.1x, -----) dr: 4.7s (59.2x, -----) ma: 4.7s (58.9x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 1.6%) me: 5.1s (64.2x, -1.0%) ca: 6.0s (75.1x, 0.3%) he: 6.7s (83.2x, 0.6%) ca: 3.3s (41.2x, -0.3%) dr: 4.6s (58.0x, 2.1%) ma: 4.7s (59.2x, -0.6%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.09s no: 0.7s ( 7.3x, -----) me: 8.9s (98.7x, -----) ca: 6.6s (73.0x, -----) he: 7.7s (85.6x, -----) ca: 3.6s (39.7x, -----) dr: 4.9s (54.3x, -----) ma: 5.0s (55.9x, -----) heap_pdb4 valgrind-old:0.09s no: 0.7s ( 7.3x, 0.0%) me: 8.9s (98.9x, -0.2%) ca: 6.6s (73.3x, -0.5%) he: 7.7s (85.6x, 0.0%) ca: 3.6s (39.6x, 0.3%) dr: 5.2s (57.9x, -6.5%) ma: 5.0s (55.6x, 0.6%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.4s (143.0x, -----) ca: 1.0s (100.0x, -----) he: 1.3s (126.0x, -----) ca: 0.7s (68.0x, -----) dr: 1.1s (115.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.4s (144.0x, -0.7%) ca: 1.0s (100.0x, 0.0%) he: 1.3s (126.0x, 0.0%) ca: 0.7s (67.0x, 1.5%) dr: 1.2s (116.0x, -0.9%) ma: 1.0s (104.0x, 1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.6s (54.7x, -----) ca: 2.5s (83.7x, -----) he: 2.2s (74.0x, -----) ca: 1.0s (32.0x, -----) dr: 1.6s (53.0x, -----) ma: 1.6s (53.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.6s (54.7x, 0.0%) ca: 2.5s (84.0x, -0.4%) he: 2.2s (73.7x, 0.5%) ca: 1.0s (32.0x, 0.0%) dr: 1.5s (51.3x, 3.1%) ma: 1.6s (51.7x, 2.5%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.4s (117.5x, -----) ca: 1.7s (86.5x, -----) he: 6.8s (341.0x, -----) ca: 0.9s (46.0x, -----) dr: 1.1s (55.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.3s (117.0x, 0.4%) ca: 1.8s (87.5x, -1.2%) he: 6.8s (339.0x, 0.6%) ca: 0.9s (45.5x, 1.1%) dr: 1.1s (54.0x, 1.8%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.1x, -----) me: 7.9s (52.7x, -----) ca:10.7s (71.3x, -----) he: 9.8s (65.1x, -----) ca: 7.9s (52.5x, -----) dr: 8.1s (53.9x, -----) ma: 2.4s (16.0x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.1x, 0.7%) me: 7.9s (52.7x, -0.1%) ca:10.7s (71.5x, -0.4%) he: 9.8s (65.6x, -0.8%) ca: 7.9s (52.9x, -0.6%) dr: 8.1s (54.3x, -0.7%) ma: 2.4s (15.9x, 0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m2.437s user 33m0.367s sys 0m24.394s |
|
From: <ma...@bu...> - 2015-01-29 02:42:11
|
valgrind revision: 14895 VEX revision: 3079 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+deb7u7) 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.8 wheezy x86_64 ) Started at 2015-01-29 00:00:01 UTC Ended at 2015-01-29 02:41:57 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 == 686 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.16s no: 2.4s (15.2x, -----) me: 4.7s (29.6x, -----) ca:19.1s (119.2x, -----) he: 2.7s (17.1x, -----) ca: 5.0s (31.2x, -----) dr: 2.7s (16.8x, -----) ma: 2.6s (16.2x, -----) bigcode1 valgrind-old:0.16s no: 2.2s (14.0x, 8.2%) me: 4.5s (28.1x, 5.1%) ca:18.2s (113.6x, 4.8%) he: 2.8s (17.3x, -1.1%) ca: 5.0s (31.3x, -0.2%) dr: 2.7s (17.1x, -2.2%) ma: 2.6s (16.4x, -1.2%) -- bigcode2 -- bigcode2 valgrind-new:0.14s no: 5.5s (39.0x, -----) me:11.5s (82.4x, -----) ca:35.9s (256.6x, -----) he: 6.8s (48.6x, -----) ca: 9.6s (68.9x, -----) dr: 6.4s (45.4x, -----) ma: 6.1s (43.5x, -----) bigcode2 valgrind-old:0.14s no: 5.3s (38.1x, 2.2%) me:11.8s (84.0x, -1.9%) ca:36.7s (261.9x, -2.1%) he: 7.5s (53.8x,-10.7%) ca:11.5s (82.1x,-19.2%) dr: 7.0s (49.7x, -9.4%) ma: 7.6s (54.3x,-24.8%) -- bz2 -- bz2 valgrind-new:0.74s no: 2.4s ( 3.2x, -----) me: 8.7s (11.7x, -----) ca:17.5s (23.7x, -----) he:11.5s (15.5x, -----) ca:16.1s (21.8x, -----) dr:16.6s (22.5x, -----) ma: 2.2s ( 3.0x, -----) bz2 valgrind-old:0.74s no: 2.1s ( 2.9x, 10.1%) me: 8.3s (11.3x, 3.7%) ca:17.0s (22.9x, 3.2%) he:12.3s (16.7x, -7.6%) ca:14.4s (19.5x, 10.7%) dr:15.8s (21.3x, 5.2%) ma: 2.4s ( 3.2x, -7.3%) -- fbench -- fbench valgrind-new:0.32s no: 1.4s ( 4.5x, -----) me: 5.1s (15.9x, -----) ca: 8.0s (24.9x, -----) he: 4.2s (13.1x, -----) ca: 4.6s (14.4x, -----) dr: 3.5s (11.1x, -----) ma: 1.6s ( 5.1x, -----) fbench valgrind-old:0.32s no: 1.5s ( 4.7x, -5.6%) me: 5.1s (15.9x, 0.2%) ca: 8.8s (27.6x,-10.7%) he: 4.1s (12.8x, 2.9%) ca: 4.2s (13.2x, 8.0%) dr: 3.7s (11.5x, -3.9%) ma: 1.5s ( 4.8x, 5.5%) -- ffbench -- ffbench valgrind-new:0.28s no: 1.4s ( 4.8x, -----) me: 4.2s (14.8x, -----) ca: 2.5s ( 8.9x, -----) he: 9.8s (34.8x, -----) ca: 5.5s (19.5x, -----) dr: 4.9s (17.4x, -----) ma: 1.3s ( 4.7x, -----) ffbench valgrind-old:0.28s no: 1.2s ( 4.4x, 8.1%) me: 4.1s (14.5x, 1.9%) ca: 2.5s ( 9.0x, -0.8%) he:10.4s (37.0x, -6.3%) ca: 5.6s (19.9x, -2.2%) dr: 4.7s (16.9x, 3.1%) ma: 1.3s ( 4.6x, 3.0%) -- heap -- heap valgrind-new:0.12s no: 0.9s ( 7.8x, -----) me: 7.1s (59.0x, -----) ca: 7.8s (65.2x, -----) he: 9.0s (75.0x, -----) ca: 4.4s (36.5x, -----) dr: 5.7s (47.4x, -----) ma: 6.1s (50.8x, -----) heap valgrind-old:0.12s no: 0.9s ( 7.9x, -1.1%) me: 6.9s (57.8x, 2.0%) ca: 8.4s (69.7x, -6.8%) he: 9.8s (81.8x, -9.1%) ca: 4.1s (34.0x, 6.8%) dr: 5.7s (47.8x, -0.9%) ma: 6.3s (52.3x, -3.0%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.16s no: 0.9s ( 5.9x, -----) me:11.6s (72.8x, -----) ca: 8.6s (53.7x, -----) he:10.3s (64.2x, -----) ca: 5.4s (33.8x, -----) dr: 6.9s (43.1x, -----) ma: 6.6s (41.2x, -----) heap_pdb4 valgrind-old:0.16s no: 1.0s ( 6.0x, -1.1%) me:11.9s (74.2x, -2.1%) ca: 9.2s (57.2x, -6.6%) he:10.8s (67.7x, -5.4%) ca: 4.8s (29.8x, 11.7%) dr: 6.4s (40.2x, 6.7%) ma: 6.7s (41.8x, -1.4%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.4s (40.0x, -----) me: 1.9s (192.0x, -----) ca: 1.3s (133.0x, -----) he: 1.7s (169.0x, -----) ca: 0.9s (92.0x, -----) dr: 1.4s (142.0x, -----) ma: 1.4s (139.0x, -----) many-loss-records valgrind-old:0.01s no: 0.4s (36.0x, 10.0%) me: 1.9s (186.0x, 3.1%) ca: 1.3s (132.0x, 0.8%) he: 1.7s (170.0x, -0.6%) ca: 0.9s (90.0x, 2.2%) dr: 1.5s (152.0x, -7.0%) ma: 1.4s (139.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.4s (10.8x, -----) me: 2.6s (64.8x, -----) ca: 3.5s (87.0x, -----) he: 3.2s (79.0x, -----) ca: 1.3s (32.8x, -----) dr: 2.0s (49.0x, -----) ma: 2.2s (55.2x, -----) many-xpts valgrind-old:0.04s no: 0.4s (11.0x, -2.3%) me: 2.7s (67.2x, -3.9%) ca: 3.5s (86.7x, 0.3%) he: 3.1s (78.5x, 0.6%) ca: 1.2s (31.2x, 4.6%) dr: 2.0s (49.2x, -0.5%) ma: 2.1s (52.5x, 5.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.4s (18.5x, -----) me: 3.2s (161.5x, -----) ca: 2.2s (111.5x, -----) he:10.7s (533.5x, -----) ca: 1.3s (65.5x, -----) dr: 1.3s (65.0x, -----) ma: 0.4s (21.0x, -----) sarp valgrind-old:0.02s no: 0.4s (19.0x, -2.7%) me: 3.2s (162.0x, -0.3%) ca: 2.2s (112.0x, -0.4%) he:10.3s (513.5x, 3.7%) ca: 1.2s (62.0x, 5.3%) dr: 1.4s (68.0x, -4.6%) ma: 0.4s (21.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.22s no: 1.9s ( 8.5x, -----) me:10.9s (49.7x, -----) ca:13.6s (61.6x, -----) he:12.8s (58.2x, -----) ca:10.5s (47.7x, -----) dr:10.0s (45.5x, -----) ma: 3.2s (14.5x, -----) tinycc valgrind-old:0.22s no: 1.9s ( 8.4x, 0.5%) me:11.6s (52.8x, -6.2%) ca:14.6s (66.3x, -7.6%) he:13.2s (60.1x, -3.4%) ca:10.9s (49.7x, -4.3%) dr:10.4s (47.2x, -3.9%) ma: 3.2s (14.5x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= 2844.64user 36.30system 1:39:45elapsed 48%CPU (0avgtext+0avgdata 500348maxresident)k 160304inputs+453784outputs (339major+11733873minor)pagefaults 0swaps Congratulations, all tests passed! |
|
From: <sv...@va...> - 2015-01-28 12:04:27
|
Author: sewardj
Date: Wed Jan 28 12:04:21 2015
New Revision: 14895
Log:
Update.
Modified:
trunk/NEWS
trunk/docs/internals/3_10_BUGSTATUS.txt
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed Jan 28 12:04:21 2015
@@ -82,6 +82,11 @@
n-i-bz Old STABS code is still being compiled, but never used. Remove it.
n-i-bz Fix compilation on distros with glibc < 2.5
+--
+335785 amd64->IR 0xC4 0xE2 0x75 0x2F (vmaskmovpd)
+ == 307399
+ == 343175
+
Release 3.10.1 (25 November 2014)
Modified: trunk/docs/internals/3_10_BUGSTATUS.txt
==============================================================================
--- trunk/docs/internals/3_10_BUGSTATUS.txt (original)
+++ trunk/docs/internals/3_10_BUGSTATUS.txt Wed Jan 28 12:04:21 2015
@@ -175,3 +175,12 @@
342988 INT 80 not recognised on amd64
Tue 20 Jan 01:23:52 CET 2015
+
+343069 Patch updating v4l2 API support
+343099 Linux setns syscall wrapper missing, unhandled syscall: 308
+343173 helgrind crash during stack unwind
+343219 fix GET_STARTREGS for arm
+343303 Valgrind on Mac 10.10 should suppress setenv() mem leak
+343306 OS X 10.10: UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option
+343332 Unhandled instruction 0x9E310021 (fcvtmu) on aarch64
+343335 unhandled instruction 0x1E638400 (fccmp)
|
|
From: <sv...@va...> - 2015-01-28 12:03:32
|
Author: sewardj
Date: Wed Jan 28 12:03:26 2015
New Revision: 3079
Log:
ppIRStoreG: print braces around guarded section, so as to be more
consistent with other guarded-IR printing. No functional change.
Modified:
trunk/priv/ir_defs.c
Modified: trunk/priv/ir_defs.c
==============================================================================
--- trunk/priv/ir_defs.c (original)
+++ trunk/priv/ir_defs.c Wed Jan 28 12:03:26 2015
@@ -1446,10 +1446,11 @@
{
vex_printf("if (");
ppIRExpr(sg->guard);
- vex_printf(") ST%s(", sg->end==Iend_LE ? "le" : "be");
+ vex_printf(") { ST%s(", sg->end==Iend_LE ? "le" : "be");
ppIRExpr(sg->addr);
vex_printf(") = ");
ppIRExpr(sg->data);
+ vex_printf(" }");
}
void ppIRLoadGOp ( IRLoadGOp cvt )
|
|
From: <sv...@va...> - 2015-01-28 11:49:53
|
Author: sewardj
Date: Wed Jan 28 11:49:46 2015
New Revision: 14894
Log:
Add test cases for AVX-1 conditional vector stores:
VMASKMOVP{D,S} xmm/ymm to memory. Pertains to #335785.
Modified:
trunk/none/tests/amd64/avx-1.c
trunk/none/tests/amd64/avx-1.stdout.exp
Modified: trunk/none/tests/amd64/avx-1.c
==============================================================================
--- trunk/none/tests/amd64/avx-1.c (original)
+++ trunk/none/tests/amd64/avx-1.c Wed Jan 28 11:49:46 2015
@@ -56,7 +56,8 @@
operands only %ymm6, %ymm7, %ymm8, %ymm9 and %r14. The mem form of
the insn may mention as operands only (%rax), %ymm7, %ymm8, %ymm9
and %r14. It's OK for the insn to clobber ymm0, as this is needed
- for testing PCMPxSTRx. */
+ for testing PCMPxSTRx, and ymm6, as this is needed for testing
+ MOVMASK variants. */
#define GEN_test_RandM(_name, _reg_form, _mem_form) \
\
@@ -99,7 +100,8 @@
"movq %%r14, 128(%0)" "\n\t" \
: /*OUT*/ \
: /*IN*/"r"(b) \
- : /*TRASH*/"xmm0","xmm8","xmm7","xmm9","r14","rax","memory","cc" \
+ : /*TRASH*/"xmm6", \
+ "xmm0","xmm8","xmm7","xmm9","r14","rax","memory","cc" \
); \
showBlock("after", b); \
printf("\n"); \
@@ -2155,11 +2157,33 @@
"vxorpd %%ymm6, %%ymm6, %%ymm6;"
"vmaskmovpd (%%rax,%%rax,4), %%ymm6, %%ymm9")
+GEN_test_Monly(VMASKMOVPS_128_StoreForm,
+ "vmaskmovps %%xmm8, %%xmm7, (%%rax);"
+ "vxorps %%xmm6, %%xmm6, %%xmm6;"
+ "vmaskmovps %%xmm9, %%xmm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VMASKMOVPS_256_StoreForm,
+ "vmaskmovps %%ymm8, %%ymm7, (%%rax);"
+ "vxorps %%ymm6, %%ymm6, %%ymm6;"
+ "vmaskmovps %%ymm9, %%ymm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VMASKMOVPD_128_StoreForm,
+ "vmaskmovpd %%xmm8, %%xmm7, (%%rax);"
+ "vxorpd %%xmm6, %%xmm6, %%xmm6;"
+ "vmaskmovpd %%xmm9, %%xmm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VMASKMOVPD_256_StoreForm,
+ "vmaskmovpd %%ymm8, %%ymm7, (%%rax);"
+ "vxorpd %%ymm6, %%ymm6, %%ymm6;"
+ "vmaskmovpd %%ymm9, %%ymm6, (%%rax,%%rax,4)")
+
/* Comment duplicated above, for convenient reference:
Allowed operands in test insns:
Reg form: %ymm6, %ymm7, %ymm8, %ymm9 and %r14.
Mem form: (%rax), %ymm7, %ymm8, %ymm9 and %r14.
Imm8 etc fields are also allowed, where they make sense.
+ Both forms may use ymm0 as scratch. Mem form may also use
+ ymm6 as scratch.
*/
#define N_DEFAULT_ITERS 3
@@ -2701,6 +2725,10 @@
DO_D( VMASKMOVPS_256_LoadForm );
DO_D( VMASKMOVPD_128_LoadForm );
DO_D( VMASKMOVPD_256_LoadForm );
+ DO_D( VMASKMOVPS_128_StoreForm );
+ DO_D( VMASKMOVPS_256_StoreForm );
+ DO_D( VMASKMOVPD_128_StoreForm );
+ DO_D( VMASKMOVPD_256_StoreForm );
return 0;
}
Modified: trunk/none/tests/amd64/avx-1.stdout.exp
==============================================================================
--- trunk/none/tests/amd64/avx-1.stdout.exp (original)
+++ trunk/none/tests/amd64/avx-1.stdout.exp Wed Jan 28 11:49:46 2015
@@ -43279,3 +43279,327 @@
0000000000000000.0000000000000000.0000000000000000.0000000000000000
868f640a975a0151
+VMASKMOVPS_128_StoreForm(reg)
+ before
+ 5609688ba8e27bdc.0d862f7b2870d0cb.636029dd16c65549.878b756cca3a3cfd
+ 4b25f4ceef10fac6.ccbf6610ff6b1442.dac251520f50aa6e.ab4aa038fdbb365b
+ c231023e086fb8bc.a744d0a6b1253948.e52d3ffecb846109.bc2f00d0bf34f274
+ 18779147908bf26a.78e0eb2b5ba9fa0c.e0ecee4de9f1b6c5.9706132029b12e74
+ 169b5514593ea486
+ after
+ 5609688ba8e27bdc.0d862f7b2870d0cb.636029dd16c65549.878b756cca3a3cfd
+ 4b25f4ceef10fac6.ccbf6610ff6b1442.dac251520f50aa6e.ab4aa038fdbb365b
+ c231023e086fb8bc.a744d0a6b1253948.e52d3ffecb846109.bc2f00d0bf34f274
+ 18779147908bf26a.78e0eb2b5ba9fa0c.e0ecee4de9f1b6c5.9706132029b12e74
+ 169b5514593ea486
+VMASKMOVPS_128_StoreForm(mem)
+ before
+ 16ba40986be811d7.a7459a5523f1e47b.1c613189180314b8.264c5aab0320e44f
+ 732f52997abb3192.cce51ad45c2cc99b.6f9121ae05404378.15997f84b59f2852
+ 09c50601a2c1bfe4.e4a30e31d7c8de78.4d3d34853d6b427a.081f5a449cf9be7b
+ b449d8be000878f9.49cd71d631525fbb.9231e7fadd90cee8.5b2ae65753bbe176
+ 69061f2a766fceee
+ after
+ 16ba40986be811d7.a7459a5523f1e47b.1c613189180314b8.264c5aabb59f2852
+ 732f52997abb3192.cce51ad45c2cc99b.6f9121ae05404378.15997f84b59f2852
+ 09c50601a2c1bfe4.e4a30e31d7c8de78.4d3d34853d6b427a.081f5a449cf9be7b
+ b449d8be000878f9.49cd71d631525fbb.9231e7fadd90cee8.5b2ae65753bbe176
+ 69061f2a766fceee
+
+VMASKMOVPS_128_StoreForm(reg)
+ before
+ 90fe0127a2a4c190.508844baaf9b18fc.58ae3f3006558713.1a38b7f900bba3ee
+ 2b6089bc73e3f607.b94cc7e3cc875a1a.6d9175acf05d932a.c1201f6ec2f97db9
+ 9576b15484baa800.cb61dc2473d7fb7e.e4c30db58ef7bfac.63b39b4640561774
+ 2c8d775a72b41426.6295ff69be97b755.199005b67aae4747.dcbfa86b96dc2e4d
+ 080ec0cadf997e6d
+ after
+ 90fe0127a2a4c190.508844baaf9b18fc.58ae3f3006558713.1a38b7f900bba3ee
+ 2b6089bc73e3f607.b94cc7e3cc875a1a.6d9175acf05d932a.c1201f6ec2f97db9
+ 9576b15484baa800.cb61dc2473d7fb7e.e4c30db58ef7bfac.63b39b4640561774
+ 2c8d775a72b41426.6295ff69be97b755.199005b67aae4747.dcbfa86b96dc2e4d
+ 080ec0cadf997e6d
+VMASKMOVPS_128_StoreForm(mem)
+ before
+ c36d61503898c303.4af1d63cd85e7626.5ab3ac9eccd44acb.6844581d500f66a4
+ e9a806e7bbe6b839.4dedcb65524309ac.8f865fafb6996f0b.2d2b0255ada45972
+ 568a2b7d878e1a3b.8fcf50417def0a63.dddb95889bf2e442.c49100ca2cfb5c5b
+ e6e14dfdb69ca536.6ee1633cf4efb5f8.207ec91594ec629b.89c14ce869a0ab0b
+ d808e41b021e812f
+ after
+ c36d61503898c303.4af1d63cd85e7626.8f865fafb6996f0b.2d2b0255500f66a4
+ e9a806e7bbe6b839.4dedcb65524309ac.8f865fafb6996f0b.2d2b0255ada45972
+ 568a2b7d878e1a3b.8fcf50417def0a63.dddb95889bf2e442.c49100ca2cfb5c5b
+ e6e14dfdb69ca536.6ee1633cf4efb5f8.207ec91594ec629b.89c14ce869a0ab0b
+ d808e41b021e812f
+
+VMASKMOVPS_128_StoreForm(reg)
+ before
+ 0db3c3d090011b73.7477e653641d1456.4470ffc354ce4617.333b7742bf92a843
+ 840ce671b1d5b483.de19746bae1c24c7.6ec920403918f86b.f4de1bfc38f07066
+ 995f476c01278a0a.ff937331afa591b3.4935c3213e5a08a0.3e32322d1a13772f
+ a7fae42b1b82d7b4.b3b15d9184c51649.2f03e3d0ff1fb264.ed0536c3820679ca
+ dc21a5a98bd53165
+ after
+ 0db3c3d090011b73.7477e653641d1456.4470ffc354ce4617.333b7742bf92a843
+ 840ce671b1d5b483.de19746bae1c24c7.6ec920403918f86b.f4de1bfc38f07066
+ 995f476c01278a0a.ff937331afa591b3.4935c3213e5a08a0.3e32322d1a13772f
+ a7fae42b1b82d7b4.b3b15d9184c51649.2f03e3d0ff1fb264.ed0536c3820679ca
+ dc21a5a98bd53165
+VMASKMOVPS_128_StoreForm(mem)
+ before
+ e953fbcb518d5c2a.0c28b81c9b73d82e.d53faf78488771b3.7d7e7cbb19f33160
+ ee67b215f139b645.2334bfaa1e85c824.4308e6d018f85c1e.90f18a4c2763c243
+ c929487386e5fbe3.486bf6414044e541.d7da7d860f2293b5.c2aa09f1c5faa1b7
+ 556537d12d9ee630.d619574d9c3c6932.6f7ff0874a13d4a5.70f3f61591440a69
+ f6194b2424ce3804
+ after
+ e953fbcb518d5c2a.0c28b81c9b73d82e.4308e6d0488771b3.90f18a4c2763c243
+ ee67b215f139b645.2334bfaa1e85c824.4308e6d018f85c1e.90f18a4c2763c243
+ c929487386e5fbe3.486bf6414044e541.d7da7d860f2293b5.c2aa09f1c5faa1b7
+ 556537d12d9ee630.d619574d9c3c6932.6f7ff0874a13d4a5.70f3f61591440a69
+ f6194b2424ce3804
+
+VMASKMOVPS_256_StoreForm(reg)
+ before
+ b067068a1c236835.6de6fd1b026f3457.2b8ae03acefa90a3.e5c4bcbee4d7d919
+ fa2b22b315cfd6a7.ef79163d1f65a185.a20a8c747309983f.17755c16fa795f3f
+ 30b09c0caa5fbd07.b5ebfc24a38ae8e6.96e5586726f6bbb3.df5d4b7da7052140
+ ae416fff775e5b01.9c062dbaa7edc6a5.65663e7f844c36aa.1b4a08de0787dd4b
+ a5060c25370c4d89
+ after
+ b067068a1c236835.6de6fd1b026f3457.2b8ae03acefa90a3.e5c4bcbee4d7d919
+ fa2b22b315cfd6a7.ef79163d1f65a185.a20a8c747309983f.17755c16fa795f3f
+ 30b09c0caa5fbd07.b5ebfc24a38ae8e6.96e5586726f6bbb3.df5d4b7da7052140
+ ae416fff775e5b01.9c062dbaa7edc6a5.65663e7f844c36aa.1b4a08de0787dd4b
+ a5060c25370c4d89
+VMASKMOVPS_256_StoreForm(mem)
+ before
+ 5b5fd43e539f2d29.d02b96fa1959ea40.819624ed4a97f7ee.69da3c29289744d1
+ 171fdd16764d3b55.f2ba0f672cdaa671.3e695da7a59637ef.008d4dcfaf6422d3
+ b613a297bc20313a.703ad6b44b6fcd3f.b04a54d6d7f541d1.84cb6ddfb43e0c5d
+ 14079fae4227cc03.a6f7e54c12a49957.b4048665f9c1d2c3.52e099c4d4b13e1b
+ c718cbe9aa4af4b8
+ after
+ 171fdd16764d3b55.d02b96fa1959ea40.3e695da7a59637ef.008d4dcfaf6422d3
+ 171fdd16764d3b55.f2ba0f672cdaa671.3e695da7a59637ef.008d4dcfaf6422d3
+ b613a297bc20313a.703ad6b44b6fcd3f.b04a54d6d7f541d1.84cb6ddfb43e0c5d
+ 14079fae4227cc03.a6f7e54c12a49957.b4048665f9c1d2c3.52e099c4d4b13e1b
+ c718cbe9aa4af4b8
+
+VMASKMOVPS_256_StoreForm(reg)
+ before
+ 3dbe01bcd29469e1.0ec65148236bc8dd.f03c3a9b1e044764.24646e402904a6ef
+ 122036a8e91bda42.7e1e324f7cfae0f3.aa57d00c0a1b1214.dd36885383cd7882
+ a08866198b6c8286.41d9c0b168dfd172.3092a30d73753710.bb46508a222506a7
+ 44438e7c53129f59.33c4765904275786.dd3ab00af49ff207.9a6043d1221a098b
+ 5750db15a0b74059
+ after
+ 3dbe01bcd29469e1.0ec65148236bc8dd.f03c3a9b1e044764.24646e402904a6ef
+ 122036a8e91bda42.7e1e324f7cfae0f3.aa57d00c0a1b1214.dd36885383cd7882
+ a08866198b6c8286.41d9c0b168dfd172.3092a30d73753710.bb46508a222506a7
+ 44438e7c53129f59.33c4765904275786.dd3ab00af49ff207.9a6043d1221a098b
+ 5750db15a0b74059
+VMASKMOVPS_256_StoreForm(mem)
+ before
+ cce19640b809653e.5a9da93bdd996b68.30abd1336bdd2d5a.0f9bf16d2a247fa3
+ d6e0ef40851b3566.3fe1b3c3c68e225f.145a4b2bba0d101b.210164a3b0911990
+ 511a63ff23f96cfc.4d5da881aa7c02ea.bb9d622d0cc3bcf4.6fb804192371fd7b
+ 19596c6bafb0c62d.e15b84df23ef45b4.014091257e0ced12.540bcd391e506710
+ 2e47bc713ebb93fa
+ after
+ cce19640b809653e.5a9da93bc68e225f.145a4b2b6bdd2d5a.0f9bf16d2a247fa3
+ d6e0ef40851b3566.3fe1b3c3c68e225f.145a4b2bba0d101b.210164a3b0911990
+ 511a63ff23f96cfc.4d5da881aa7c02ea.bb9d622d0cc3bcf4.6fb804192371fd7b
+ 19596c6bafb0c62d.e15b84df23ef45b4.014091257e0ced12.540bcd391e506710
+ 2e47bc713ebb93fa
+
+VMASKMOVPS_256_StoreForm(reg)
+ before
+ 57b9cc2b1e3dbce6.0a69886f444afe24.5729444bd0742869.c20e54ff2bf45ea1
+ 2dabf8d55a621f80.001832f7ffd6d10e.0b11e3304b96e7b7.dad427a72f85cccc
+ 0b693fda8fb6f873.d731e6effb5dfb16.59605dfa30e1bd47.255e870aa7cdf3c0
+ 4c419aa659c6826c.6b7f214355ed376a.9d61ae141ce2e7c8.7f78ef12afd88fa8
+ c4eedbad62b05bb1
+ after
+ 57b9cc2b1e3dbce6.0a69886f444afe24.5729444bd0742869.c20e54ff2bf45ea1
+ 2dabf8d55a621f80.001832f7ffd6d10e.0b11e3304b96e7b7.dad427a72f85cccc
+ 0b693fda8fb6f873.d731e6effb5dfb16.59605dfa30e1bd47.255e870aa7cdf3c0
+ 4c419aa659c6826c.6b7f214355ed376a.9d61ae141ce2e7c8.7f78ef12afd88fa8
+ c4eedbad62b05bb1
+VMASKMOVPS_256_StoreForm(mem)
+ before
+ d08cc7c6dc631407.4e7e07a5531efa16.97cf5ddf28924233.3362d2ecaa24a1e4
+ 7f1d30493afd76d5.6b6b804319489c1e.39ed18af9156d8a0.77adc6ee76342647
+ ac6e902297883c47.005503ed48d2a42f.2ca5cda0ab47b4db.c59085841e9db49e
+ 354c653d1012238b.6a888c0d7b474df6.4cc3f99c93719410.79550b1b3beb8595
+ ef4954206baad5d8
+ after
+ 7f1d30493afd76d5.4e7e07a5531efa16.97cf5ddf9156d8a0.77adc6eeaa24a1e4
+ 7f1d30493afd76d5.6b6b804319489c1e.39ed18af9156d8a0.77adc6ee76342647
+ ac6e902297883c47.005503ed48d2a42f.2ca5cda0ab47b4db.c59085841e9db49e
+ 354c653d1012238b.6a888c0d7b474df6.4cc3f99c93719410.79550b1b3beb8595
+ ef4954206baad5d8
+
+VMASKMOVPD_128_StoreForm(reg)
+ before
+ 82b85dfd4a67e212.f5812a86c0a7e7cb.035015104f34d41f.7412169164de326c
+ 90ed212073ade6ef.c8d95ce9c4514333.28f99c635f247555.8260a2693a9c4a1b
+ 74369cf382091d1c.89227552381ef5f0.36cf1c7148a36b45.5177181232b79a48
+ 8addcae41405c545.1627f3ad361ab72e.871d91a5a53ef49a.bc24f477683adc20
+ a133b284f731cdcf
+ after
+ 82b85dfd4a67e212.f5812a86c0a7e7cb.035015104f34d41f.7412169164de326c
+ 90ed212073ade6ef.c8d95ce9c4514333.28f99c635f247555.8260a2693a9c4a1b
+ 74369cf382091d1c.89227552381ef5f0.36cf1c7148a36b45.5177181232b79a48
+ 8addcae41405c545.1627f3ad361ab72e.871d91a5a53ef49a.bc24f477683adc20
+ a133b284f731cdcf
+VMASKMOVPD_128_StoreForm(mem)
+ before
+ db70cf25fba82880.2d30a75ec5301815.49b351e7dc4f4518.7830f76d13804901
+ 45a7c64691acaa60.bb7930cd30135339.00930beb46cc5ddb.65544b342df6a926
+ bda313d3d4480f9a.8f04609df13cb25d.15939ea48f9ab9a3.aad58766902a4eb4
+ 1d3132b8e188135b.041f333aa536702c.667f8400d4c7169b.a4ffa96fd7aa7558
+ ad1eadbb9e025abd
+ after
+ db70cf25fba82880.2d30a75ec5301815.49b351e7dc4f4518.65544b342df6a926
+ 45a7c64691acaa60.bb7930cd30135339.00930beb46cc5ddb.65544b342df6a926
+ bda313d3d4480f9a.8f04609df13cb25d.15939ea48f9ab9a3.aad58766902a4eb4
+ 1d3132b8e188135b.041f333aa536702c.667f8400d4c7169b.a4ffa96fd7aa7558
+ ad1eadbb9e025abd
+
+VMASKMOVPD_128_StoreForm(reg)
+ before
+ 227d8db782bc3990.431ea0e2d37972ce.7815a510e78eca53.cd233bea305e2fef
+ 5f6a47cd1f674d7d.0934d73bc726e720.4531b38c54cffc7d.284b3e4ebf6bc2cd
+ c02fd66a108cd32f.4c3f55b1d89c2f7d.c9c1581887854257.51c20a189efb895f
+ a11936fbf1b90653.e90d952e23e50510.5e0f90221d3dd78c.26551934e91940d1
+ 81d0e98ebbd2a550
+ after
+ 227d8db782bc3990.431ea0e2d37972ce.7815a510e78eca53.cd233bea305e2fef
+ 5f6a47cd1f674d7d.0934d73bc726e720.4531b38c54cffc7d.284b3e4ebf6bc2cd
+ c02fd66a108cd32f.4c3f55b1d89c2f7d.c9c1581887854257.51c20a189efb895f
+ a11936fbf1b90653.e90d952e23e50510.5e0f90221d3dd78c.26551934e91940d1
+ 81d0e98ebbd2a550
+VMASKMOVPD_128_StoreForm(mem)
+ before
+ 3ffff51230317208.5e7463eb5f792494.ba6914a0c3102706.62685714b182f8c9
+ 3caeb9ad65426424.528c59a5f558679f.9c1e4cf2d5264f8b.2f17a95ce0e0e1ba
+ 55a9b249751136d1.dbac159750e30c20.6bf9bb10743539ca.236a836545e4cd0a
+ 64bb5ad47daba63a.5422922c0ca54ec2.04c6dce6bc48a3ef.98ace09b7c19fa66
+ eb28bc6a220ba17a
+ after
+ 3ffff51230317208.5e7463eb5f792494.ba6914a0c3102706.62685714b182f8c9
+ 3caeb9ad65426424.528c59a5f558679f.9c1e4cf2d5264f8b.2f17a95ce0e0e1ba
+ 55a9b249751136d1.dbac159750e30c20.6bf9bb10743539ca.236a836545e4cd0a
+ 64bb5ad47daba63a.5422922c0ca54ec2.04c6dce6bc48a3ef.98ace09b7c19fa66
+ eb28bc6a220ba17a
+
+VMASKMOVPD_128_StoreForm(reg)
+ before
+ 792b133ed34701f1.46b22f39981b6e8c.1938ccd0c32b6b32.41512b60cb6c4727
+ 9c01e2832a585477.d758ac63e36e4bf3.863bc0ef14009c1b.ff66256abaace29e
+ b1f623a5c3cad7b9.f37a4e4079aff89a.f77768f698b0202a.1ad145f1a7143080
+ 1456d4113b2ac663.76e48fbb77ea32ae.c738c24feec7320b.6e5d07dfadb0ecf8
+ d7d7e722e98dd332
+ after
+ 792b133ed34701f1.46b22f39981b6e8c.1938ccd0c32b6b32.41512b60cb6c4727
+ 9c01e2832a585477.d758ac63e36e4bf3.863bc0ef14009c1b.ff66256abaace29e
+ b1f623a5c3cad7b9.f37a4e4079aff89a.f77768f698b0202a.1ad145f1a7143080
+ 1456d4113b2ac663.76e48fbb77ea32ae.c738c24feec7320b.6e5d07dfadb0ecf8
+ d7d7e722e98dd332
+VMASKMOVPD_128_StoreForm(mem)
+ before
+ 310c61a477b7a15b.216cf0312d035d21.3c62edc0f82cb55a.54c9c967afd20d69
+ 58c6f2537238119f.3586747336e1d79e.21bfe33b19803dcb.f97879ab795ceef0
+ 28d1141af61ee02a.aaee5a41f2517186.01c8ed19f5f2852d.118fcf86e8f2104e
+ 7dfb45e52074ca27.ddf1a009fbde6686.b84a8744a88e4aab.fa5bc663971fb02d
+ 0e285ab0236f0a39
+ after
+ 310c61a477b7a15b.216cf0312d035d21.3c62edc0f82cb55a.54c9c967afd20d69
+ 58c6f2537238119f.3586747336e1d79e.21bfe33b19803dcb.f97879ab795ceef0
+ 28d1141af61ee02a.aaee5a41f2517186.01c8ed19f5f2852d.118fcf86e8f2104e
+ 7dfb45e52074ca27.ddf1a009fbde6686.b84a8744a88e4aab.fa5bc663971fb02d
+ 0e285ab0236f0a39
+
+VMASKMOVPD_256_StoreForm(reg)
+ before
+ ab4287d8276f5a1f.330f01a00b478bc2.2adb4136f014f44a.220f2eaa4f614872
+ 2bf549473faadb8b.26d8c237d4a2de28.edf839346a80557e.1be45d3506773bad
+ ec8c9d6908accb28.3223069696918185.8293856f08adc6cd.7f9590d3e8dade89
+ 48557daa1d0263a3.33bc47a96e212d04.45fa2053632882e3.2aed436e1198ee32
+ f8baf3f49ebd26d3
+ after
+ ab4287d8276f5a1f.330f01a00b478bc2.2adb4136f014f44a.220f2eaa4f614872
+ 2bf549473faadb8b.26d8c237d4a2de28.edf839346a80557e.1be45d3506773bad
+ ec8c9d6908accb28.3223069696918185.8293856f08adc6cd.7f9590d3e8dade89
+ 48557daa1d0263a3.33bc47a96e212d04.45fa2053632882e3.2aed436e1198ee32
+ f8baf3f49ebd26d3
+VMASKMOVPD_256_StoreForm(mem)
+ before
+ c5c61a50ab534499.9d9ae7761b37e2a8.056f045d775da1d2.9277064c197bc66d
+ 6cde366e526802af.45a8d73a9ed782e2.8308b69ccd51971b.c55733c6c635ce17
+ cbcec23ab2081d42.9dcb4760406f80fd.8b52da548d0acc0a.39e6a32e05dfd68d
+ bd623ba0e43d507d.024f3556a08a18a7.f81bed6fd393fccc.4c7053ee73071979
+ 59413d74ab38d48a
+ after
+ 6cde366e526802af.45a8d73a9ed782e2.8308b69ccd51971b.9277064c197bc66d
+ 6cde366e526802af.45a8d73a9ed782e2.8308b69ccd51971b.c55733c6c635ce17
+ cbcec23ab2081d42.9dcb4760406f80fd.8b52da548d0acc0a.39e6a32e05dfd68d
+ bd623ba0e43d507d.024f3556a08a18a7.f81bed6fd393fccc.4c7053ee73071979
+ 59413d74ab38d48a
+
+VMASKMOVPD_256_StoreForm(reg)
+ before
+ bca45f2b49ff436a.1d661b8d0716598e.ce7f9c8657b48689.a52d6adbbaf8e28c
+ d1e7b57eeae6a2c6.c9a5e0eb349cf29e.5ea9785e047a0552.7055cd835e463b77
+ f35439db2a7c2c49.9bed05a88addd7dc.0e17c5494067d2ac.345f9353dc88c3b9
+ 8038e9ada34a1ea0.710806ae22e4c671.3b1680b3a9072843.cc17363750cb367d
+ 1649341bd5194fef
+ after
+ bca45f2b49ff436a.1d661b8d0716598e.ce7f9c8657b48689.a52d6adbbaf8e28c
+ d1e7b57eeae6a2c6.c9a5e0eb349cf29e.5ea9785e047a0552.7055cd835e463b77
+ f35439db2a7c2c49.9bed05a88addd7dc.0e17c5494067d2ac.345f9353dc88c3b9
+ 8038e9ada34a1ea0.710806ae22e4c671.3b1680b3a9072843.cc17363750cb367d
+ 1649341bd5194fef
+VMASKMOVPD_256_StoreForm(mem)
+ before
+ ecc008eb8780cb3d.d3dfc060f4deb477.26c360eb1abd798c.3ff2a408dbe745c5
+ 2c492f93830c6691.4794ba60b7c32979.95ea8d4a8e75ad57.77f72cb4719263dc
+ b0b12300e4c8db17.3aa5d31a8886ba52.9b490bb699171dff.3f7117230894be34
+ 55c2621cc7c0e7fc.065d08f804b2a3b0.15ab551d57af87af.f3ab5ec13b7a947a
+ eff3fffba6cf1f5a
+ after
+ 2c492f93830c6691.d3dfc060f4deb477.95ea8d4a8e75ad57.3ff2a408dbe745c5
+ 2c492f93830c6691.4794ba60b7c32979.95ea8d4a8e75ad57.77f72cb4719263dc
+ b0b12300e4c8db17.3aa5d31a8886ba52.9b490bb699171dff.3f7117230894be34
+ 55c2621cc7c0e7fc.065d08f804b2a3b0.15ab551d57af87af.f3ab5ec13b7a947a
+ eff3fffba6cf1f5a
+
+VMASKMOVPD_256_StoreForm(reg)
+ before
+ 8f93f53be61f9c7f.f84867d54700466c.09075367c6d3203d.dddee86ae54aa594
+ 2fd83cef97f74795.7311ae168195b492.9df0b2d46b766ca5.d1ac3e895ff333d9
+ 2b0ed08254e25b4a.a4e8b3ca908aec9b.206420aa8e26c495.cbe2d567e0b7efab
+ df80ae5fb96d1548.6598f3df91ecabb2.ecaf9a54cb6f64b9.a84c28ee84a19336
+ 45b6b30b68bddca5
+ after
+ 8f93f53be61f9c7f.f84867d54700466c.09075367c6d3203d.dddee86ae54aa594
+ 2fd83cef97f74795.7311ae168195b492.9df0b2d46b766ca5.d1ac3e895ff333d9
+ 2b0ed08254e25b4a.a4e8b3ca908aec9b.206420aa8e26c495.cbe2d567e0b7efab
+ df80ae5fb96d1548.6598f3df91ecabb2.ecaf9a54cb6f64b9.a84c28ee84a19336
+ 45b6b30b68bddca5
+VMASKMOVPD_256_StoreForm(mem)
+ before
+ 7cebf3aba7178525.a77cd0f46323b13b.93eee9409fc6ad04.5e1c1b40c0dd87bc
+ 2ab962b95ebc4ce1.de4c34aced906bd1.0ab611d9d624adbd.d3f99ed906fd6a4b
+ 2bea7e20a9b8eb07.e23ed5f3f4407eb3.a6bce79653126808.a590218b3b5b4911
+ 5b4bc2cea2151fc0.0e9cb03513c02790.44cce764329d9a12.312ea0c2fb8160bc
+ d41f15eae1fdeaf5
+ after
+ 7cebf3aba7178525.de4c34aced906bd1.0ab611d9d624adbd.d3f99ed906fd6a4b
+ 2ab962b95ebc4ce1.de4c34aced906bd1.0ab611d9d624adbd.d3f99ed906fd6a4b
+ 2bea7e20a9b8eb07.e23ed5f3f4407eb3.a6bce79653126808.a590218b3b5b4911
+ 5b4bc2cea2151fc0.0e9cb03513c02790.44cce764329d9a12.312ea0c2fb8160bc
+ d41f15eae1fdeaf5
+
|
|
From: <sv...@va...> - 2015-01-28 11:49:19
|
Author: sewardj
Date: Wed Jan 28 11:49:12 2015
New Revision: 3078
Log:
Implement AVX-1 conditional vector stores: VMASKMOVP{D,S} xmm/ymm to memory.
Fixes #335785.
Modified:
trunk/priv/guest_amd64_toIR.c
Modified: trunk/priv/guest_amd64_toIR.c
==============================================================================
--- trunk/priv/guest_amd64_toIR.c (original)
+++ trunk/priv/guest_amd64_toIR.c Wed Jan 28 11:49:12 2015
@@ -27259,11 +27259,11 @@
}
else if (!isLoad && isYMM) {
- DIP("%s %s,%s,%s\n", opname, nameYMMReg(rV), nameYMMReg(rG), dis_buf );
+ DIP("%s %s,%s,%s\n", opname, nameYMMReg(rG), nameYMMReg(rV), dis_buf );
}
else {
vassert(!isLoad && !isYMM);
- DIP("%s %s,%s,%s\n", opname, nameXMMReg(rV), nameXMMReg(rG), dis_buf );
+ DIP("%s %s,%s,%s\n", opname, nameXMMReg(rG), nameXMMReg(rV), dis_buf );
}
vassert(ty == Ity_I32 || ty == Ity_I64);
@@ -28205,15 +28205,17 @@
break;
case 0x2C:
- /* VMASKMOVPS m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.WIG 2C /r */
+ /* VMASKMOVPS m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.W0 2C /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 0==getRexW(pfx)/*W0*/
&& !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
/*!isYMM*/False, Ity_I32, /*isLoad*/True );
goto decode_success;
}
- /* VMASKMOVPS m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.WIG 2C /r */
+ /* VMASKMOVPS m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.W0 2C /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 0==getRexW(pfx)/*W0*/
&& !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
/*isYMM*/True, Ity_I32, /*isLoad*/True );
@@ -28222,15 +28224,17 @@
break;
case 0x2D:
- /* VMASKMOVPD m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.WIG 2D /r */
+ /* VMASKMOVPD m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.W0 2D /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 0==getRexW(pfx)/*W0*/
&& !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
/*!isYMM*/False, Ity_I64, /*isLoad*/True );
goto decode_success;
}
- /* VMASKMOVPD m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.WIG 2D /r */
+ /* VMASKMOVPD m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.W0 2D /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 0==getRexW(pfx)/*W0*/
&& !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
/*isYMM*/True, Ity_I64, /*isLoad*/True );
@@ -28238,6 +28242,44 @@
}
break;
+ case 0x2E:
+ /* VMASKMOVPS xmm1, xmm2, m128 = VEX.NDS.128.66.0F38.W0 2E /r */
+ if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 0==getRexW(pfx)/*W0*/
+ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
+ /*!isYMM*/False, Ity_I32, /*!isLoad*/False );
+ goto decode_success;
+ }
+ /* VMASKMOVPS ymm1, ymm2, m256 = VEX.NDS.256.66.0F38.W0 2E /r */
+ if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 0==getRexW(pfx)/*W0*/
+ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
+ /*isYMM*/True, Ity_I32, /*!isLoad*/False );
+ goto decode_success;
+ }
+ break;
+
+ case 0x2F:
+ /* VMASKMOVPD xmm1, xmm2, m128 = VEX.NDS.128.66.0F38.W0 2F /r */
+ if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 0==getRexW(pfx)/*W0*/
+ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
+ /*!isYMM*/False, Ity_I64, /*!isLoad*/False );
+ goto decode_success;
+ }
+ /* VMASKMOVPD ymm1, ymm2, m256 = VEX.NDS.256.66.0F38.W0 2F /r */
+ if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 0==getRexW(pfx)/*W0*/
+ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
+ /*isYMM*/True, Ity_I64, /*!isLoad*/False );
+ goto decode_success;
+ }
+ break;
+
case 0x30:
/* VPMOVZXBW xmm2/m64, xmm1 */
/* VPMOVZXBW = VEX.128.66.0F38.WIG 30 /r */
@@ -28822,28 +28864,28 @@
break;
case 0x8E:
- /* VPMASKMOVD xmm2, xmm1, m128 = VEX.NDS.128.66.0F38.W0 8E /r */
+ /* VPMASKMOVD xmm1, xmm2, m128 = VEX.NDS.128.66.0F38.W0 8E /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
/*!isYMM*/False, Ity_I32, /*!isLoad*/False );
goto decode_success;
}
- /* VPMASKMOVD ymm2, ymm1, m256 = VEX.NDS.256.66.0F38.W0 8E /r */
+ /* VPMASKMOVD ymm1, ymm2, m256 = VEX.NDS.256.66.0F38.W0 8E /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
/*isYMM*/True, Ity_I32, /*!isLoad*/False );
goto decode_success;
}
- /* VPMASKMOVQ xmm2, xmm1, m128 = VEX.NDS.128.66.0F38.W1 8E /r */
+ /* VPMASKMOVQ xmm1, xmm2, m128 = VEX.NDS.128.66.0F38.W1 8E /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
/*!isYMM*/False, Ity_I64, /*!isLoad*/False );
goto decode_success;
}
- /* VPMASKMOVQ ymm2, ymm1, m256 = VEX.NDS.256.66.0F38.W1 8E /r */
+ /* VPMASKMOVQ ymm1, ymm2, m256 = VEX.NDS.256.66.0F38.W1 8E /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
|
|
From: <sv...@va...> - 2015-01-28 11:11:13
|
Author: sewardj
Date: Wed Jan 28 11:11:02 2015
New Revision: 14893
Log:
Add test cases for VPMASKMOV{D,Q} xmm/ymm to memory.
Modified:
trunk/none/tests/amd64/avx2-1.c
trunk/none/tests/amd64/avx2-1.stdout.exp
Modified: trunk/none/tests/amd64/avx2-1.c
==============================================================================
--- trunk/none/tests/amd64/avx2-1.c (original)
+++ trunk/none/tests/amd64/avx2-1.c Wed Jan 28 11:11:02 2015
@@ -58,7 +58,8 @@
operands only %ymm6, %ymm7, %ymm8, %ymm9 and %r14. The mem form of
the insn may mention as operands only (%rax), %ymm7, %ymm8, %ymm9
and %r14. It's OK for the insn to clobber ymm0, as this is needed
- for testing PCMPxSTRx. */
+ for testing PCMPxSTRx, and ymm6, as this is needed for testing
+ MOVMASK variants. */
#define GEN_test_RandM(_name, _reg_form, _mem_form) \
\
@@ -101,7 +102,8 @@
"movq %%r14, 128(%0)" "\n\t" \
: /*OUT*/ \
: /*IN*/"r"(b) \
- : /*TRASH*/"xmm0","xmm8","xmm7","xmm9","r14","rax","memory","cc" \
+ : /*TRASH*/"xmm6", \
+ "xmm0","xmm8","xmm7","xmm9","r14","rax","memory","cc" \
); \
showBlock("after", b); \
printf("\n"); \
@@ -949,6 +951,26 @@
"vxorpd %%ymm6, %%ymm6, %%ymm6;"
"vpmaskmovq (%%rax,%%rax,4), %%ymm6, %%ymm9")
+GEN_test_Monly(VPMASKMOVD_128_StoreForm,
+ "vpmaskmovd %%xmm8, %%xmm7, (%%rax);"
+ "vxorps %%xmm6, %%xmm6, %%xmm6;"
+ "vpmaskmovd %%xmm9, %%xmm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VPMASKMOVD_256_StoreForm,
+ "vpmaskmovd %%ymm8, %%ymm7, (%%rax);"
+ "vxorps %%ymm6, %%ymm6, %%ymm6;"
+ "vpmaskmovd %%ymm9, %%ymm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VPMASKMOVQ_128_StoreForm,
+ "vpmaskmovq %%xmm8, %%xmm7, (%%rax);"
+ "vxorpd %%xmm6, %%xmm6, %%xmm6;"
+ "vpmaskmovq %%xmm9, %%xmm6, (%%rax,%%rax,4)")
+
+GEN_test_Monly(VPMASKMOVQ_256_StoreForm,
+ "vpmaskmovq %%ymm8, %%ymm7, (%%rax);"
+ "vxorpd %%ymm6, %%ymm6, %%ymm6;"
+ "vpmaskmovq %%ymm9, %%ymm6, (%%rax,%%rax,4)")
+
GEN_test_Ronly(VGATHERDPS_128,
"vpslld $25, %%xmm7, %%xmm8;"
"vpsrld $25, %%xmm8, %%xmm8;"
@@ -1220,6 +1242,8 @@
Reg form: %ymm6, %ymm7, %ymm8, %ymm9 and %r14.
Mem form: (%rax), %ymm7, %ymm8, %ymm9 and %r14.
Imm8 etc fields are also allowed, where they make sense.
+ Both forms may use ymm0 as scratch. Mem form may also use
+ ymm6 as scratch.
*/
#define N_DEFAULT_ITERS 3
@@ -1438,6 +1462,10 @@
DO_D( VPMASKMOVD_256_LoadForm );
DO_D( VPMASKMOVQ_128_LoadForm );
DO_D( VPMASKMOVQ_256_LoadForm );
+ DO_D( VPMASKMOVD_128_StoreForm );
+ DO_D( VPMASKMOVD_256_StoreForm );
+ DO_D( VPMASKMOVQ_128_StoreForm );
+ DO_D( VPMASKMOVQ_256_StoreForm );
{ int i; for (i = 0; i < sizeof(randArray); i++) randArray[i] = randUChar(); }
DO_D( VGATHERDPS_128 );
DO_D( VGATHERDPS_256 );
Modified: trunk/none/tests/amd64/avx2-1.stdout.exp
==============================================================================
--- trunk/none/tests/amd64/avx2-1.stdout.exp (original)
+++ trunk/none/tests/amd64/avx2-1.stdout.exp Wed Jan 28 11:11:02 2015
@@ -16522,332 +16522,332 @@
0000000000000000.0000000000000000.0000000000000000.0000000000000000
f89eafc8bfd35287
-VGATHERDPS_128(reg)
- before
- db3ba33aa9080146.61de3bb310750745.1989ac47b84df422.f6bf8ceae9d6b8b7
- b0e0033bfbf2f215.894d4632358a7c11.5d364e226c45ac6b.c766170711315988
- ef41c04c42be2765.897a149beb714aa6.458177a0afe031a7.696c4e6025e09d54
- a41c05c9c9660ad1.eba14fc8ffa75b20.de28531bcd1af072.690fddcff15e6f38
- 52886f31402abb50
- after
- db3ba33aa9080146.61de3bb310750745.1989ac47b84df422.f6bf8ceae9d6b8b7
- 0000000000000000.0000000000000000.1989ac4700000022.f6bf8ceae9d6b8b7
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.de28531b467b4796.690fddcff15e6f38
- 0000000000000000
-VGATHERDPS_128(mem)
- before
- b016b163e0bd6db7.dc2bff0edee808f5.3dfda3963da69d9c.33e50df111f05366
- 10f34e3f9b947189.a22ad977cb3f8e6e.0bcbbee271ecfa35.5075d17dc85dc722
- fc5cf4a23e2cb3e3.03d7c060dd6706d8.e047498667f46008.4293cd1a3e5db93f
- 038d4c69950020e1.09ece025605cdece.48acf360ea3bba30.14fd2a25bfec945b
- d36d17fb9706c312
- after
- b016b163e0bd6db7.dc2bff0edee808f5.3dfda3963da69d9c.33e50df111f05366
- 10f34e3f9b947189.a22ad977cb3f8e6e.0bcbbee271ecfa35.5075d17dc85dc722
- fc5cf4a23e2cb3e3.03d7c060dd6706d8.e047498667f46008.4293cd1a3e5db93f
- 038d4c69950020e1.09ece025605cdece.48acf360ea3bba30.14fd2a25bfec945b
- d36d17fb9706c312
-
-VGATHERDPS_128(reg)
- before
- 8a9fbef612a8b4ff.aec1056e6c8ca29e.c32664229f1a81ec.cf37664ac83bf3c9
- 45514c747bcdd2bf.8b36c88e8f4d2736.3a4179b3e89e5bcf.02244e21cb72f9f0
- 113deccf207189ed.262544a5c9bd99c6.7cf84b3485e3d812.6cae58c1c05bb7c1
- f820cb644b904525.09cd2390e85ae669.94080501c4e56452.9a13300673731a57
- 168d81cdb0340ccf
- after
- 8a9fbef612a8b4ff.aec1056e6c8ca29e.c32664229f1a81ec.cf37664ac83bf3c9
- 0000000000000000.0000000000000000.c32664220000006c.cf37664a00000049
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.94080501c1b29e3d.9a13300615e8b346
- 0000000000000000
-VGATHERDPS_128(mem)
+VPMASKMOVD_128_StoreForm(reg)
before
- 6f58f8f0421c7a44.09b6148f49277204.c2681229b69ff93c.8f2dd375efa16b2a
- 2eb2414cf7a651d2.4dbaf4ad66307d26.dd33bc4d0009be5a.7822e2ee53115937
- e1d507bd994e7b96.d2e99718eda9d026.e46aced8921221e0.5ba45ec73c339a14
- 13fef71ff590e6ab.a3ff282d2c8dd8a0.6649f3a637380ee9.446f735bf5029b5e
- 403f4c08cc7bc6b0
- after
- 6f58f8f0421c7a44.09b6148f49277204.c2681229b69ff93c.8f2dd375efa16b2a
- 2eb2414cf7a651d2.4dbaf4ad66307d26.dd33bc4d0009be5a.7822e2ee53115937
- e1d507bd994e7b96.d2e99718eda9d026.e46aced8921221e0.5ba45ec73c339a14
- 13fef71ff590e6ab.a3ff282d2c8dd8a0.6649f3a637380ee9.446f735bf5029b5e
- 403f4c08cc7bc6b0
+ 86ecccc0db05c88a.c2cee692e20bc47c.625975748e1fd585.58d5bc54baac0e3d
+ 48634f0e5b024023.e37875c43e845a0c.bef2c5494985445d.d7424f73dd185b1a
+ 9a4f341fdb56f6fd.6c3355cfe4210fa1.3d9a3a6b753c9461.101bb7b47a6129a7
+ d8fb755ff88e26c5.3bcc039defef9e6a.3a9ccd46b1d1ff3d.e12b6f02af963311
+ 2440f34b98c03783
+ after
+ 86ecccc0db05c88a.c2cee692e20bc47c.625975748e1fd585.58d5bc54baac0e3d
+ 48634f0e5b024023.e37875c43e845a0c.bef2c5494985445d.d7424f73dd185b1a
+ 9a4f341fdb56f6fd.6c3355cfe4210fa1.3d9a3a6b753c9461.101bb7b47a6129a7
+ d8fb755ff88e26c5.3bcc039defef9e6a.3a9ccd46b1d1ff3d.e12b6f02af963311
+ 2440f34b98c03783
+VPMASKMOVD_128_StoreForm(mem)
+ before
+ b724bf7a50edef2a.5eb5103a4e350b27.2a0ffc1b7cf9c491.10467b4796cfc29c
+ 74a5507cf3281731.88c7ff1d78d7e2ce.16c8bb36a64c3d43.1de241d8c3c2182b
+ 388d203b9e7d6dc5.b27e41731201e667.dcc3bcd98af3c5ab.bbbd1a67d1373f96
+ e0a9ada46cf9ab12.3826cfa7b93e559d.56cb7cef43fa17f6.4823025e5eb97188
+ 1e60f62b06d4eaad
+ after
+ b724bf7a50edef2a.5eb5103a4e350b27.16c8bb36a64c3d43.1de241d8c3c2182b
+ 74a5507cf3281731.88c7ff1d78d7e2ce.16c8bb36a64c3d43.1de241d8c3c2182b
+ 388d203b9e7d6dc5.b27e41731201e667.dcc3bcd98af3c5ab.bbbd1a67d1373f96
+ e0a9ada46cf9ab12.3826cfa7b93e559d.56cb7cef43fa17f6.4823025e5eb97188
+ 1e60f62b06d4eaad
+
+VPMASKMOVD_128_StoreForm(reg)
+ before
+ 9ac0f0396415e8b3.46c472a47aa78e43.760ba627091b691d.61ae7566ee6df04f
+ 198eeef41506a543.47acec25e494d285.c878c35e9c235f93.d9362529a6590ce3
+ f517ebc8b4365e0c.bf2c9615c4cb3203.89bb21b811e272aa.9b30072487c926de
+ 8ba8e421dd2e4eb8.8b0feb5e39586bea.171ebca102e4df0f.81689743aecafc6b
+ 68aa5273376747b7
+ after
+ 9ac0f0396415e8b3.46c472a47aa78e43.760ba627091b691d.61ae7566ee6df04f
+ 198eeef41506a543.47acec25e494d285.c878c35e9c235f93.d9362529a6590ce3
+ f517ebc8b4365e0c.bf2c9615c4cb3203.89bb21b811e272aa.9b30072487c926de
+ 8ba8e421dd2e4eb8.8b0feb5e39586bea.171ebca102e4df0f.81689743aecafc6b
+ 68aa5273376747b7
+VPMASKMOVD_128_StoreForm(mem)
+ before
+ 2cc1b29e3dacc6ed.388bd36b2d7db3f4.852269ee5c483966.cdee91850bb6e26d
+ a97b35b1dca6333a.560cb61240acc76b.8a318cb04ca557a2.07779ad0c9e3b771
+ bba25699315f4cca.42798883b149c6ca.7608ce90227e82cb.2005d5eed7f899c6
+ 3e03924158e6cac8.581d45281cdfeebc.2573ad7afddc760c.76e33d4cd180c51a
+ 645fce5454077716
+ after
+ 2cc1b29e3dacc6ed.388bd36b2d7db3f4.852269ee5c483966.cdee9185c9e3b771
+ a97b35b1dca6333a.560cb61240acc76b.8a318cb04ca557a2.07779ad0c9e3b771
+ bba25699315f4cca.42798883b149c6ca.7608ce90227e82cb.2005d5eed7f899c6
+ 3e03924158e6cac8.581d45281cdfeebc.2573ad7afddc760c.76e33d4cd180c51a
+ 645fce5454077716
+
+VPMASKMOVD_128_StoreForm(reg)
+ before
+ 45c38574fc19eb69.0e6a63946b446c61.f443e96f1efa79ee.733da45af6cdef92
+ 775c5d1764435cbd.07a347808987ecc0.723871c25227a40c.3c342f1c2b5da889
+ 557652a9291107be.057ab9f0ccbb0712.2f48d88f55f1abc1.5c22caadb8965e1c
+ 3a5d6095e60d2819.e4ba35d050ea7983.85bf1a41c2e4c9ba.afd4f2f7b886cd78
+ 111622e84738b1c8
+ after
+ 45c38574fc19eb69.0e6a63946b446c61.f443e96f1efa79ee.733da45af6cdef92
+ 775c5d1764435cbd.07a347808987ecc0.723871c25227a40c.3c342f1c2b5da889
+ 557652a9291107be.057ab9f0ccbb0712.2f48d88f55f1abc1.5c22caadb8965e1c
+ 3a5d6095e60d2819.e4ba35d050ea7983.85bf1a41c2e4c9ba.afd4f2f7b886cd78
+ 111622e84738b1c8
+VPMASKMOVD_128_StoreForm(mem)
+ before
+ 5eb4d66a82b9c539.845d834937c5fa7a.8031380c3222fd3e.d1e93344368d3ba2
+ 71798a6b8514c6f7.8dc1b830b9c4ba8c.b5a93c908d6e5070.6f121f044c773d26
+ 2833bbd66b55702d.b2d7f9b70797a4fc.5fefbf497ddb2e44.bb85dbeda12f0af2
+ 5eace39750897e08.50e94448bec9f475.5acf3c21207452e7.1090626bd03fe0b1
+ cc7db0ea7635f910
+ after
+ 5eb4d66a82b9c539.845d834937c5fa7a.8031380c3222fd3e.6f121f044c773d26
+ 71798a6b8514c6f7.8dc1b830b9c4ba8c.b5a93c908d6e5070.6f121f044c773d26
+ 2833bbd66b55702d.b2d7f9b70797a4fc.5fefbf497ddb2e44.bb85dbeda12f0af2
+ 5eace39750897e08.50e94448bec9f475.5acf3c21207452e7.1090626bd03fe0b1
+ cc7db0ea7635f910
+
+VPMASKMOVD_256_StoreForm(reg)
+ before
+ 4a99c1d72e9d91ba.efb1809a51bbadb3.c14495507ae6e5a5.811530058f457a85
+ e630929c9402e65c.b60e0dcb89f7b95b.6334e63cd57bb435.b28c15e2e85b6049
+ fc8d1ea745f032a1.918f0716154a5d2c.900535766e139dd3.c80269a347c1c05f
+ e8fe6163ddf3b237.5b00e86710bf5751.a5027d6cdf3adb2b.9e41a733c78458f5
+ 12164b8084aee235
+ after
+ 4a99c1d72e9d91ba.efb1809a51bbadb3.c14495507ae6e5a5.811530058f457a85
+ e630929c9402e65c.b60e0dcb89f7b95b.6334e63cd57bb435.b28c15e2e85b6049
+ fc8d1ea745f032a1.918f0716154a5d2c.900535766e139dd3.c80269a347c1c05f
+ e8fe6163ddf3b237.5b00e86710bf5751.a5027d6cdf3adb2b.9e41a733c78458f5
+ 12164b8084aee235
+VPMASKMOVD_256_StoreForm(mem)
+ before
+ ff4dd1759b4d1b4b.05cd573bf798a1c7.ef2c2eab976361f6.fe79ba89c47dace9
+ 40b2b6fe286dbe64.b147fd9d2f6b3c00.2be154ccc5403749.f8b4e838b96749b8
+ b3107507451989ac.47b84df422f6bf8c.eae9d6b8b7649774.ed0004e75c84f144
+ 32358a7c115d364e.226c45ac6bc76617.0711315988db3ba3.3aa908014661de3b
+ 3bfbf2f215894d46
+ after
+ 40b2b6fe9b4d1b4b.05cd573bf798a1c7.2be154ccc5403749.f8b4e838c47dace9
+ 40b2b6fe286dbe64.b147fd9d2f6b3c00.2be154ccc5403749.f8b4e838b96749b8
+ b3107507451989ac.47b84df422f6bf8c.eae9d6b8b7649774.ed0004e75c84f144
+ 32358a7c115d364e.226c45ac6bc76617.0711315988db3ba3.3aa908014661de3b
+ 3bfbf2f215894d46
+
+VPMASKMOVD_256_StoreForm(reg)
+ before
+ 4c42be2765897a14.9beb714aa6458177.a0afe031a7696c4e.6025e09d54b0e003
+ c9c9660ad1eba14f.c8ffa75b20de2853.1bcd1af072690fdd.cff15e6f38ef41c0
+ 0edee808f53dfda3.963da69d9c33e50d.f111f0536652886f.31402abb50a41c05
+ 77cb3f8e6e0bcbbe.e271ecfa355075d1.7dc85dc722b016b1.63e0bd6db7dc2bff
+ 3f9b947189a22ad9
+ after
+ 4c42be2765897a14.9beb714aa6458177.a0afe031a7696c4e.6025e09d54b0e003
+ c9c9660ad1eba14f.c8ffa75b20de2853.1bcd1af072690fdd.cff15e6f38ef41c0
+ 0edee808f53dfda3.963da69d9c33e50d.f111f0536652886f.31402abb50a41c05
+ 77cb3f8e6e0bcbbe.e271ecfa355075d1.7dc85dc722b016b1.63e0bd6db7dc2bff
+ 3f9b947189a22ad9
+VPMASKMOVD_256_StoreForm(mem)
+ before
+ a23e2cb3e303d7c0.60dd6706d8e04749.8667f460084293cd.1a3e5db93f10f34e
+ 69950020e109ece0.25605cdece48acf3.60ea3bba3014fd2a.25bfec945bfc5cf4
+ 6e6c8ca29ec32664.229f1a81eccf3766.4ac83bf3c9d36d17.fb9706c312038d4c
+ 8e8f4d27363a4179.b3e89e5bcf02244e.21cb72f9f08a9fbe.f612a8b4ffaec105
+ 747bcdd2bf8b36c8
+ after
+ a23e2cb3e109ece0.60dd6706ce48acf3.8667f4603014fd2a.25bfec943f10f34e
+ 69950020e109ece0.25605cdece48acf3.60ea3bba3014fd2a.25bfec945bfc5cf4
+ 6e6c8ca29ec32664.229f1a81eccf3766.4ac83bf3c9d36d17.fb9706c312038d4c
+ 8e8f4d27363a4179.b3e89e5bcf02244e.21cb72f9f08a9fbe.f612a8b4ffaec105
+ 747bcdd2bf8b36c8
+
+VPMASKMOVD_256_StoreForm(reg)
+ before
+ cf207189ed262544.a5c9bd99c67cf84b.3485e3d8126cae58.c1c05bb7c145514c
+ 644b90452509cd23.90e85ae669940805.01c4e564529a1330.0673731a57113dec
+ 8f49277204c26812.29b69ff93c8f2dd3.75efa16b2a168d81.cdb0340ccff820cb
+ ad66307d26dd33bc.4d0009be5a7822e2.ee531159376f58f8.f0421c7a4409b614
+ 4cf7a651d24dbaf4
+ after
+ cf207189ed262544.a5c9bd99c67cf84b.3485e3d8126cae58.c1c05bb7c145514c
+ 644b90452509cd23.90e85ae669940805.01c4e564529a1330.0673731a57113dec
+ 8f49277204c26812.29b69ff93c8f2dd3.75efa16b2a168d81.cdb0340ccff820cb
+ ad66307d26dd33bc.4d0009be5a7822e2.ee531159376f58f8.f0421c7a4409b614
+ 4cf7a651d24dbaf4
+VPMASKMOVD_256_StoreForm(mem)
+ before
+ bd994e7b96d2e997.18eda9d026e46ace.d8921221e05ba45e.c73c339a142eb241
+ 1ff590e6aba3ff28.2d2c8dd8a06649f3.a637380ee9446f73.5bf5029b5ee1d507
+ 4ed7e97c2ecdb7d4.486dd90231ec0bd8.93bdf67191403f4c.08cc7bc6b013fef7
+ 260bd32b3a5bcfc6.c5fe87b97404ed29.7beec836f55bcf15.290b9889a75168bc
+ 19ff574fde265003
+ after
+ bd994e7b96d2e997.18eda9d026e46ace.a637380ee9446f73.c73c339a5ee1d507
+ 1ff590e6aba3ff28.2d2c8dd8a06649f3.a637380ee9446f73.5bf5029b5ee1d507
+ 4ed7e97c2ecdb7d4.486dd90231ec0bd8.93bdf67191403f4c.08cc7bc6b013fef7
+ 260bd32b3a5bcfc6.c5fe87b97404ed29.7beec836f55bcf15.290b9889a75168bc
+ 19ff574fde265003
+
+VPMASKMOVQ_128_StoreForm(reg)
+ before
+ 36f4b383f11ef278.835dccdeec59002b.0029956806392a91.3a982a49319fdcfb
+ da36a8937dc68ac6.4198508160d4092f.553bfe7d821700bd.ac859997601a222a
+ 631132ea1ea95499.3c8ad900b0d7a4fd.207fbf63852ba958.ad82900a9ed85dce
+ 2bd04ef46e538b9f.4ffde547fa6e8fc1.bd43d286aa00620f.195a8b9008e34811
+ ccdb0614ba49a022
+ after
+ 36f4b383f11ef278.835dccdeec59002b.0029956806392a91.3a982a49319fdcfb
+ da36a8937dc68ac6.4198508160d4092f.553bfe7d821700bd.ac859997601a222a
+ 631132ea1ea95499.3c8ad900b0d7a4fd.207fbf63852ba958.ad82900a9ed85dce
+ 2bd04ef46e538b9f.4ffde547fa6e8fc1.bd43d286aa00620f.195a8b9008e34811
+ ccdb0614ba49a022
+VPMASKMOVQ_128_StoreForm(mem)
+ before
+ a1cf7e82cf15212b.90c1f71d0c506c81.58beef435aa683a9.88d235528e22668e
+ 76046dc563548659.ec2e29d2922d32ee.329973deeb8a3fdf.dd77e333cc1ef280
+ 264451cb93118cd7.9d64e07d9c761a90.b95aed05ca267d8f.187fd896017f4291
+ 8d5ca5807a59efd2.fdaf188cc7b56014.c9ccd9a51287fae6.953610e5c8d2926f
+ b0e8888ebda21dc4
+ after
+ a1cf7e82cf15212b.90c1f71d0c506c81.329973deeb8a3fdf.88d235528e22668e
+ 76046dc563548659.ec2e29d2922d32ee.329973deeb8a3fdf.dd77e333cc1ef280
+ 264451cb93118cd7.9d64e07d9c761a90.b95aed05ca267d8f.187fd896017f4291
+ 8d5ca5807a59efd2.fdaf188cc7b56014.c9ccd9a51287fae6.953610e5c8d2926f
+ b0e8888ebda21dc4
+
+VPMASKMOVQ_128_StoreForm(reg)
+ before
+ c5e13afb7d7b203c.8618e6ce35366a76.695bce69ae784025.3dbdb4a9dfb87210
+ 2f6c249aa4e9d784.ef438ea2dfb6bbee.3db3fd82ee4bf670.f3f7f9fc4ec5a038
+ 4cd642d6cd797e48.a2ab1be895e59c67.d605a14122b8bda0.c647248c7bbb418b
+ 776c8e1b94b65034.7d1a088d72cdc90c.8e9bb614e74dd262.9179b24481a51135
+ 32591d107c8fcc61
+ after
+ c5e13afb7d7b203c.8618e6ce35366a76.695bce69ae784025.3dbdb4a9dfb87210
+ 2f6c249aa4e9d784.ef438ea2dfb6bbee.3db3fd82ee4bf670.f3f7f9fc4ec5a038
+ 4cd642d6cd797e48.a2ab1be895e59c67.d605a14122b8bda0.c647248c7bbb418b
+ 776c8e1b94b65034.7d1a088d72cdc90c.8e9bb614e74dd262.9179b24481a51135
+ 32591d107c8fcc61
+VPMASKMOVQ_128_StoreForm(mem)
+ before
+ 83b2e3dc89862d3c.0b7806d5962d8af2.5b5ed17b937d000a.c2c23966d8967062
+ 62527f94c395f1f1.6647a5706e696831.1741f3a013fefb8c.cec625a3921dd54b
+ a9036e2547c9d4ad.e3246758b9f6259b.8f90e8e70e5e77bf.0ef37637b0713bca
+ 36922a79312d919b.dd5d48f91261fedd.9d162e3ca2a82fcf.de94288ece1bdf8a
+ 9bf7371589a9fc38
+ after
+ 83b2e3dc89862d3c.0b7806d5962d8af2.1741f3a013fefb8c.c2c23966d8967062
+ 62527f94c395f1f1.6647a5706e696831.1741f3a013fefb8c.cec625a3921dd54b
+ a9036e2547c9d4ad.e3246758b9f6259b.8f90e8e70e5e77bf.0ef37637b0713bca
+ 36922a79312d919b.dd5d48f91261fedd.9d162e3ca2a82fcf.de94288ece1bdf8a
+ 9bf7371589a9fc38
+
+VPMASKMOVQ_128_StoreForm(reg)
+ before
+ 9f66a0367da6cf80.e3cb317e9bcde5e8.b23c45bf16352fa2.1ea1408be8e8e1e7
+ 472f5e5f459e940d.8d7afe1ea4b58cc0.bc0f581760fef497.effb9bc0fe2b4734
+ ef9c6dfa7d1e878c.116b0d4765f2424e.59207f6b8d488867.eaf2b9c7ff7c1de2
+ f2f9c975c2b1e3a8.496adae4fc8fc2bf.e3bcb62938a028c0.ed50188c08e8211c
+ d2e233fb357a0d0e
+ after
+ 9f66a0367da6cf80.e3cb317e9bcde5e8.b23c45bf16352fa2.1ea1408be8e8e1e7
+ 472f5e5f459e940d.8d7afe1ea4b58cc0.bc0f581760fef497.effb9bc0fe2b4734
+ ef9c6dfa7d1e878c.116b0d4765f2424e.59207f6b8d488867.eaf2b9c7ff7c1de2
+ f2f9c975c2b1e3a8.496adae4fc8fc2bf.e3bcb62938a028c0.ed50188c08e8211c
+ d2e233fb357a0d0e
+VPMASKMOVQ_128_StoreForm(mem)
+ before
+ 76748601a13e9ee6.ae946f3bafe4e50e.1242e2e18599c93f.b82ef7bcfe92104b
+ b5d18e88684090cd.7eb859b7e141c96a.49c0a0291b1a13f9.32c4408f7aa87bb6
+ 6cc7c57ea78d9ef2.beb08557f457cb67.c8b090abdb215b19.aec98b104970a6ad
+ 7520a9ce7930857f.cac9ee8682af26b2.6cde2e50e0b75fcc.8988d6aa0676cddc
+ 1d4e1dc94d442cee
+ after
+ 76748601a13e9ee6.ae946f3bafe4e50e.49c0a0291b1a13f9.32c4408f7aa87bb6
+ b5d18e88684090cd.7eb859b7e141c96a.49c0a0291b1a13f9.32c4408f7aa87bb6
+ 6cc7c57ea78d9ef2.beb08557f457cb67.c8b090abdb215b19.aec98b104970a6ad
+ 7520a9ce7930857f.cac9ee8682af26b2.6cde2e50e0b75fcc.8988d6aa0676cddc
+ 1d4e1dc94d442cee
+
+VPMASKMOVQ_256_StoreForm(reg)
+ before
+ c7675adabb68fe8f.ada9b563fb3601a0.fe5091b12ad717f6.1116f60546ead83e
+ e31f8b47ec6e806d.f02e652b48aacd83.b58e6842855ad9e0.932465b62ac5859b
+ cec2ab7d7be0ee32.1a7b36117d98a651.4dd271a632c5aa1b.ced3f650a855200e
+ e29bb6e9044c838a.075ca301b50d4839.2167a74acaa2c455.9ef025bddba566c3
+ df476eebdfc113e8
+ after
+ c7675adabb68fe8f.ada9b563fb3601a0.fe5091b12ad717f6.1116f60546ead83e
+ e31f8b47ec6e806d.f02e652b48aacd83.b58e6842855ad9e0.932465b62ac5859b
+ cec2ab7d7be0ee32.1a7b36117d98a651.4dd271a632c5aa1b.ced3f650a855200e
+ e29bb6e9044c838a.075ca301b50d4839.2167a74acaa2c455.9ef025bddba566c3
+ df476eebdfc113e8
+VPMASKMOVQ_256_StoreForm(mem)
+ before
+ 6da44ec4d1b6e3a6.7cf8a8f5243e7d22.939c28e70c146f65.8c980798eb806437
+ 24d34036cc8f912c.f8237e0f764116a6.9a0941b0a0b9d601.ecb38bfe31e8c570
+ e0a0c02ced58daa4.b26933a297e18ac1.f86d6a468a083a3b.9c0231e6376825a9
+ 7dd64a924f1d7a3a.0616c31922aa1720.89952096e80e573c.f7d2f4be9a8bbe91
+ 5b6fd0f1f5deccd2
+ after
+ 24d34036cc8f912c.f8237e0f764116a6.9a0941b0a0b9d601.ecb38bfe31e8c570
+ 24d34036cc8f912c.f8237e0f764116a6.9a0941b0a0b9d601.ecb38bfe31e8c570
+ e0a0c02ced58daa4.b26933a297e18ac1.f86d6a468a083a3b.9c0231e6376825a9
+ 7dd64a924f1d7a3a.0616c31922aa1720.89952096e80e573c.f7d2f4be9a8bbe91
+ 5b6fd0f1f5deccd2
+
+VPMASKMOVQ_256_StoreForm(reg)
+ before
+ 2224c1ebe4ec8d19.d7435a540feb2c1b.50762ae2b429f76e.294dde8dd6d7e933
+ aa3fc41804413b11.cab16d5e48cead73.ecd46568e8e96658.b46120166f6dab4a
+ 4d0ad4e4f06a1367.32edfe9d17d0b96d.367e6e185b76a28a.069d621ccfde5aad
+ 69d3edbc45f250c6.ebc389fb97ff0b36.8abe435ca85de5af.facc208d1336b289
+ 6ebbd754567f6e0a
+ after
+ 2224c1ebe4ec8d19.d7435a540feb2c1b.50762ae2b429f76e.294dde8dd6d7e933
+ aa3fc41804413b11.cab16d5e48cead73.ecd46568e8e96658.b46120166f6dab4a
+ 4d0ad4e4f06a1367.32edfe9d17d0b96d.367e6e185b76a28a.069d621ccfde5aad
+ 69d3edbc45f250c6.ebc389fb97ff0b36.8abe435ca85de5af.facc208d1336b289
+ 6ebbd754567f6e0a
+VPMASKMOVQ_256_StoreForm(mem)
+ before
+ 3d36025db5c74b5b.58e40b0a9f6530db.d0ff8a66e56761fa.44e1dfa16c296c73
+ 43091d944b1a05a9.778a2a3b9850ed52.bf6c7ec81c1275e4.c0333f5342677384
+ 5b00a5e535825720.231047bccf3ec3d6.93d8e00f580f0321.5a005ddfc6a2358c
+ 63e7143d8e0dffeb.b6c45df8ddbbf014.270d2c25b667c9dc.6d9437b09566ef37
+ 573ac8314b3fdd32
+ after
+ 3d36025db5c74b5b.58e40b0a9f6530db.bf6c7ec81c1275e4.44e1dfa16c296c73
+ 43091d944b1a05a9.778a2a3b9850ed52.bf6c7ec81c1275e4.c0333f5342677384
+ 5b00a5e535825720.231047bccf3ec3d6.93d8e00f580f0321.5a005ddfc6a2358c
+ 63e7143d8e0dffeb.b6c45df8ddbbf014.270d2c25b667c9dc.6d9437b09566ef37
+ 573ac8314b3fdd32
+
+VPMASKMOVQ_256_StoreForm(reg)
+ before
+ 73400cd083ba3b29.358ae88673c7b737.8df0685a6154aeb8.59d8def852288142
+ 1df000f8d96244c8.afb49cadffbb3b2f.04e26450f4943a6d.04057273475de87f
+ b0979e15eac435b9.ac32ac9f4ff54900.77e44e453407d0df.03606582b112b9be
+ 8a81e493516b49ab.07d095477e819bd5.434321a5bd3aabbb.34b43211ad54b22b
+ 71cf550d562e8df4
+ after
+ 73400cd083ba3b29.358ae88673c7b737.8df0685a6154aeb8.59d8def852288142
+ 1df000f8d96244c8.afb49cadffbb3b2f.04e26450f4943a6d.04057273475de87f
+ b0979e15eac435b9.ac32ac9f4ff54900.77e44e453407d0df.03606582b112b9be
+ 8a81e493516b49ab.07d095477e819bd5.434321a5bd3aabbb.34b43211ad54b22b
+ 71cf550d562e8df4
+VPMASKMOVQ_256_StoreForm(mem)
+ before
+ 987b4a60c9ac0643.05facddeabe3be48.9e5ad190a96ceedc.c24bd9dc2ab808ad
+ 83858df721dbdb44.7f4d566293b9ce3d.4b9cde68ebc1fd3e.51477256180d2361
+ 10b99bbf7bc6c624.53c8798ca677b635.ec6137ba608c8629.4c85e88022c63782
+ 19e3efa2f27a840f.dcb534c67facb1dd.5b77597225da43c9.0f4f38c4e46e81bc
+ f6f25d8ffb923dbc
+ after
+ 987b4a60c9ac0643.05facddeabe3be48.4b9cde68ebc1fd3e.c24bd9dc2ab808ad
+ 83858df721dbdb44.7f4d566293b9ce3d.4b9cde68ebc1fd3e.51477256180d2361
+ 10b99bbf7bc6c624.53c8798ca677b635.ec6137ba608c8629.4c85e88022c63782
+ 19e3efa2f27a840f.dcb534c67facb1dd.5b77597225da43c9.0f4f38c4e46e81bc
+ f6f25d8ffb923dbc
VGATHERDPS_128(reg)
before
- 5bcf15290b9889a7.5168bc4ed7e97c2e.cdb7d4486dd90231.ec0bd893bdf67191
- 9fdcfb19ff574fde.265003260bd32b3a.5bcfc6c5fe87b974.04ed297beec836f5
- 1a222a36f4b383f1.1ef278835dccdeec.59002b0029956806.392a913a982a4931
- d85dceda36a8937d.c68ac64198508160.d4092f553bfe7d82.1700bdac85999760
- 2ba958ad82900a9e
- after
- 5bcf15290b9889a7.5168bc4ed7e97c2e.cdb7d4486dd90231.ec0bd893bdf67191
- 0000000000000000.0000000000000000.cdb7d4486dd90231.ec0bd89300000011
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.d4092f553bfe7d82.1700bdac3c946110
- 0000000000000000
-VGATHERDPS_128(mem)
- before
- 00620f195a8b9008.e34811631132ea1e.a954993c8ad900b0.d7a4fd207fbf6385
- 22668eccdb0614ba.49a0222bd04ef46e.538b9f4ffde547fa.6e8fc1bd43d286aa
- 1ef280a1cf7e82cf.15212b90c1f71d0c.506c8158beef435a.a683a988d235528e
- 7f429176046dc563.548659ec2e29d292.2d32ee329973deeb.8a3fdfdd77e333cc
- 267d8f187fd89601
- after
- 00620f195a8b9008.e34811631132ea1e.a954993c8ad900b0.d7a4fd207fbf6385
- 22668eccdb0614ba.49a0222bd04ef46e.538b9f4ffde547fa.6e8fc1bd43d286aa
- 1ef280a1cf7e82cf.15212b90c1f71d0c.506c8158beef435a.a683a988d235528e
- 7f429176046dc563.548659ec2e29d292.2d32ee329973deeb.8a3fdfdd77e333cc
- 267d8f187fd89601
-
-VGATHERDPS_256(reg)
- before
- 87fae6953610e5c8.d2926f264451cb93.118cd79d64e07d9c.761a90b95aed05ca
- b87210b0e8888ebd.a21dc48d5ca5807a.59efd2fdaf188cc7.b56014c9ccd9a512
- c5a038c5e13afb7d.7b203c8618e6ce35.366a76695bce69ae.7840253dbdb4a9df
- bb418b2f6c249aa4.e9d784ef438ea2df.b6bbee3db3fd82ee.4bf670f3f7f9fc4e
- b8bda0c647248c7b
- after
- 87fae6953610e5c8.d2926f264451cb93.118cd79d64e07d9c.761a90b95aed05ca
- 0000001500000048.d2926f264451cb93.118cd79d64e07d9c.761a90b90000004a
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 56f6fd6cc472a47a.e9d784ef438ea2df.b6bbee3db3fd82ee.4bf670f3c0f03964
- 0000000000000000
-VGATHERDPS_256(mem)
- before
- 4dd2629179b24481.a511354cd642d6cd.797e48a2ab1be895.e59c67d605a14122
- 96706232591d107c.8fcc61776c8e1b94.b650347d1a088d72.cdc90c8e9bb614e7
- 1dd54b83b2e3dc89.862d3c0b7806d596.2d8af25b5ed17b93.7d000ac2c23966d8
- 713bca62527f94c3.95f1f16647a5706e.6968311741f3a013.fefb8ccec625a392
- 5e77bf0ef37637b0
- after
- 4dd2629179b24481.a511354cd642d6cd.797e48a2ab1be895.e59c67d605a14122
- 96706232591d107c.8fcc61776c8e1b94.b650347d1a088d72.cdc90c8e9bb614e7
- 1dd54b83b2e3dc89.862d3c0b7806d596.2d8af25b5ed17b93.7d000ac2c23966d8
- 713bca62527f94c3.95f1f16647a5706e.6968311741f3a013.fefb8ccec625a392
- 5e77bf0ef37637b0
-
-VGATHERDPS_256(reg)
- before
- a82fcfde94288ece.1bdf8aa9036e2547.c9d4ade3246758b9.f6259b8f90e8e70e
- e8e1e79bf7371589.a9fc3836922a7931.2d919bdd5d48f912.61fedd9d162e3ca2
- 2b47349f66a0367d.a6cf80e3cb317e9b.cde5e8b23c45bf16.352fa21ea1408be8
- 7c1de2472f5e5f45.9e940d8d7afe1ea4.b58cc0bc0f581760.fef497effb9bc0fe
- 488867eaf2b9c7ff
- after
- a82fcfde94288ece.1bdf8aa9036e2547.c9d4ade3246758b9.f6259b8f90e8e70e
- a82fcfde94288ece.0000002900000047.00000063246758b9.f6259b8f0000000e
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 7c1de2472f5e5f45.c2182bb7a78e4376.6747b78b0f581760.fef497ef634f0e5b
- 0000000000000000
-VGATHERDPS_256(mem)
- before
- a028c0ed50188c08.e8211cef9c6dfa7d.1e878c116b0d4765.f2424e59207f6b8d
- 92104bd2e233fb35.7a0d0ef2f9c975c2.b1e3a8496adae4fc.8fc2bfe3bcb62938
- a87bb676748601a1.3e9ee6ae946f3baf.e4e50e1242e2e185.99c93fb82ef7bcfe
- 70a6adb5d18e8868.4090cd7eb859b7e1.41c96a49c0a0291b.1a13f932c4408f7a
- 215b19aec98b1049
- after
- a028c0ed50188c08.e8211cef9c6dfa7d.1e878c116b0d4765.f2424e59207f6b8d
- 92104bd2e233fb35.7a0d0ef2f9c975c2.b1e3a8496adae4fc.8fc2bfe3bcb62938
- a87bb676748601a1.3e9ee6ae946f3baf.e4e50e1242e2e185.99c93fb82ef7bcfe
- 70a6adb5d18e8868.4090cd7eb859b7e1.41c96a49c0a0291b.1a13f932c4408f7a
- 215b19aec98b1049
-
-VGATHERDPS_256(reg)
- before
- b75fcc8988d6aa06.76cddc6cc7c57ea7.8d9ef2beb08557f4.57cb67c8b090abdb
- ead83e1d4e1dc94d.442cee7520a9ce79.30857fcac9ee8682.af26b26cde2e50e0
- c5859bc7675adabb.68fe8fada9b563fb.3601a0fe5091b12a.d717f61116f60546
- 55200ee31f8b47ec.6e806df02e652b48.aacd83b58e684285.5ad9e0932465b62a
- c5aa1bced3f650a8
- after
- b75fcc8988d6aa06.76cddc6cc7c57ea7.8d9ef2beb08557f4.57cb67c8b090abdb
- 0000000988d6aa06.76cddc6c00000027.8d9ef2beb08557f4.00000048b090abdb
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 85445dd71f8b47ec.6e806df0edef2a5e.aacd83b58e684285.c472a47a2465b62a
- 0000000000000000
-VGATHERDPS_256(mem)
- before
- a2c4559ef025bddb.a566c3cec2ab7d7b.e0ee321a7b36117d.98a6514dd271a632
- 806437df476eebdf.c113e8e29bb6e904.4c838a075ca301b5.0d48392167a74aca
- e8c5706da44ec4d1.b6e3a67cf8a8f524.3e7d22939c28e70c.146f658c980798eb
- 6825a924d34036cc.8f912cf8237e0f76.4116a69a0941b0a0.b9d601ecb38bfe31
- 083a3b9c0231e637
- after
- a2c4559ef025bddb.a566c3cec2ab7d7b.e0ee321a7b36117d.98a6514dd271a632
- 806437df476eebdf.c113e8e29bb6e904.4c838a075ca301b5.0d48392167a74aca
- e8c5706da44ec4d1.b6e3a67cf8a8f524.3e7d22939c28e70c.146f658c980798eb
- 6825a924d34036cc.8f912cf8237e0f76.4116a69a0941b0a0.b9d601ecb38bfe31
- 083a3b9c0231e637
-
-VGATHERQPS_128_1(reg)
- before
- 0e573cf7d2f4be9a.8bbe91e0a0c02ced.58daa4b26933a297.e18ac1f86d6a468a
- d7e9335b6fd0f1f5.deccd27dd64a924f.1d7a3a0616c31922.aa172089952096e8
- 6dab4a2224c1ebe4.ec8d19d7435a540f.eb2c1b50762ae2b4.29f76e294dde8dd6
- de5aadaa3fc41804.413b11cab16d5e48.cead73ecd46568e8.e96658b46120166f
- 76a28a069d621ccf
- after
- 0e573cf7d2f4be9a.8bbe91e0a0c02ced.58daa4b26933a297.e18ac1f86d6a468a
- 0000000000000000.0000000000000000.58daa4b26933a297.e18ac1f86d6a468a
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.e96658b46120166f
- 0000000000000000
-VGATHERQPS_128_1(mem)
- before
- 5de5affacc208d13.36b2894d0ad4e4f0.6a136732edfe9d17.d0b96d367e6e185b
- 296c736ebbd75456.7f6e0a69d3edbc45.f250c6ebc389fb97.ff0b368abe435ca8
- 6773843d36025db5.c74b5b58e40b0a9f.6530dbd0ff8a66e5.6761fa44e1dfa16c
- a2358c43091d944b.1a05a9778a2a3b98.50ed52bf6c7ec81c.1275e4c0333f5342
- 0f03215a005ddfc6
- after
- 5de5affacc208d13.36b2894d0ad4e4f0.6a136732edfe9d17.d0b96d367e6e185b
- 296c736ebbd75456.7f6e0a69d3edbc45.f250c6ebc389fb97.ff0b368abe435ca8
- 6773843d36025db5.c74b5b58e40b0a9f.6530dbd0ff8a66e5.6761fa44e1dfa16c
- a2358c43091d944b.1a05a9778a2a3b98.50ed52bf6c7ec81c.1275e4c0333f5342
- 0f03215a005ddfc6
-
-VGATHERQPS_128_1(reg)
- before
- 67c9dc6d9437b095.66ef375b00a5e535.825720231047bccf.3ec3d693d8e00f58
- 288142573ac8314b.3fdd3263e7143d8e.0dffebb6c45df8dd.bbf014270d2c25b6
- 5de87f73400cd083.ba3b29358ae88673.c7b7378df0685a61.54aeb859d8def852
- 12b9be1df000f8d9.6244c8afb49cadff.bb3b2f04e26450f4.943a6d0405727347
- 07d0df03606582b1
- after
- 67c9dc6d9437b095.66ef375b00a5e535.825720231047bccf.3ec3d693d8e00f58
- 0000000000000000.0000000000000000.825720231047bccf.0000000000000058
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.943a6d042c9615c4
- 0000000000000000
-VGATHERQPS_128_1(mem)
- before
- 3aabbb34b43211ad.54b22bb0979e15ea.c435b9ac32ac9f4f.f5490077e44e4534
- b808ad71cf550d56.2e8df48a81e49351.6b49ab07d095477e.819bd5434321a5bd
- 0d2361987b4a60c9.ac064305facddeab.e3be489e5ad190a9.6ceedcc24bd9dc2a
- c6378283858df721.dbdb447f4d566293.b9ce3d4b9cde68eb.c1fd3e5147725618
- 8c86294c85e88022
- after
- 3aabbb34b43211ad.54b22bb0979e15ea.c435b9ac32ac9f4f.f5490077e44e4534
- b808ad71cf550d56.2e8df48a81e49351.6b49ab07d095477e.819bd5434321a5bd
- 0d2361987b4a60c9.ac064305facddeab.e3be489e5ad190a9.6ceedcc24bd9dc2a
- c6378283858df721.dbdb447f4d566293.b9ce3d4b9cde68eb.c1fd3e5147725618
- 8c86294c85e88022
-
-VGATHERQPS_128_1(reg)
- before
- da43c90f4f38c4e4.6e81bc10b99bbf7b.c6c62453c8798ca6.77b635ec6137ba60
- b6f04af6f25d8ffb.923dbc19e3efa2f2.7a840fdcb534c67f.acb1dd5b77597225
- 2d4bd75dba534e03.bca72e7bcf058ea3.02d0307861827ebb.e1fde075a8be7c56
- 4a0e9da0f3166c97.7bfabe13495a6ea9.6a68b481185f1ef5.a4d4eb17c1e4c50e
- 8172aa1b8e463769
- after
- da43c90f4f38c4e4.6e81bc10b99bbf7b.c6c62453c8798ca6.77b635ec6137ba60
- 0000000000000000.0000000000000000.0000000000000026.0000000000000060
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.b5103a4e0feb5e39
- 0000000000000000
-VGATHERQPS_128_1(mem)
- before
- 0215c85edb60bf84.19f6c71be9a35453.587317bb1c682e21.be06c65426c814ca
- b5f7f2bc74ae4a7a.a6bf822ae8f474d4.e14ee55015adba26.0b66934ed6b7cbd5
- 2655d41224adc268.fe24f9283b0737b5.a1c7d5ae00a4fed4.5c4647c9762aafb3
- df6b193ab9d81569.2ce259732fd80993.241993b2a9c9e648.be600d23501c2cff
- 3c7112b6b189ae55
- after
- 0215c85edb60bf84.19f6c71be9a35453.587317bb1c682e21.be06c65426c814ca
- b5f7f2bc74ae4a7a.a6bf822ae8f474d4.e14ee55015adba26.0b66934ed6b7cbd5
- 2655d41224adc268.fe24f9283b0737b5.a1c7d5ae00a4fed4.5c4647c9762aafb3
- df6b193ab9d81569.2ce259732fd80993.241993b2a9c9e648.be600d23501c2cff
- 3c7112b6b189ae55
-
-VGATHERQPS_256_1(reg)
- before
- e23581dfe56ea152.6e746d11fdab2e9a.3db5ce6610615609.f781ca36dc995e9e
- bd6787fa38c67192.5fad7e73bda2f916.3c58835d2aa08bb4.a53b2717658e52f1
- d7c45063f68d8bb0.3c52f53cc53a62fa.3588a5b3c98f122f.bb8256310f26af5d
- 3f0807776bbf5948.939e8148e0ee5561.35015fc6392c5817.c4930260a7dc5fff
- 4caad880f92d50f3
- after
- e23581dfe56ea152.6e746d11fdab2e9a.3db5ce6610615609.f781ca36dc995e9e
- e23581dfe56ea152.000000000000001a.0000000000000009.f781ca36dc995e9e
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.35015fc69ccd46b1.85445dd7a7dc5fff
- 0000000000000000
-VGATHERQPS_256_1(mem)
- before
- e003836dd1936d54.feeed990e25849f7.f0cecc73dc3abe68.477fdef1c573ca07
- 0bd9b003fb8ca13e.2233f10ba855c558.dd1e8399839a892a.77bd4e8fba5ed39b
- 59690a1e4393dace.b7937c4409b13b08.e8ca5196a38aa3c3.d278dafe65ebde70
- 56ef3f9a7424031f.c7caa697516816a2.9d0de3460687f650.636caf9810155922
- 3655f8bb08d8af4c
- after
- e003836dd1936d54.feeed990e25849f7.f0cecc73dc3abe68.477fdef1c573ca07
- 0bd9b003fb8ca13e.2233f10ba855c558.dd1e8399839a892a.77bd4e8fba5ed39b
- 59690a1e4393dace.b7937c4409b13b08.e8ca5196a38aa3c3.d278dafe65ebde70
- 56ef3f9a7424031f.c7caa697516816a2.9d0de3460687f650.636caf9810155922
- 3655f8bb08d8af4c
-
-VGATHERQPS_256_1(reg)
- before
- 57eee2c298304c8a.8fa6f8535cbc084e.60939a60cc76c2c3.8724e485790c70ed
- d3f498080e1a9c79.90cbe325c5d5d676.8dac85fbc6d7ab06.324b012fc795fbb5
- b62348eab4910bb5.e39aaceb7ced57b3.5bce92c48a883d08.2abee520be9e85c4
- 0a361bc5d79105d9.164fff834d7f7823.d5b8ee176584e464.fcb83e3329a3f937
- 3376b546d3214329
- after
- 57eee2c298304c8a.8fa6f8535cbc084e.60939a60cc76c2c3.8724e485790c70ed
- 57eee2c298304c8a.000000000000004e.60939a60cc76c2c3.000000000000006d
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.d5b8ee1778c35e9c.fcb83e33e3b7712c
- 0000000000000000
-VGATHERQPS_256_1(mem)
- before
- 5c33f93489934fb7.ddea40f3c316f781.b42587c8040826df.0724c550a4c70cb6
- 012db4d9177509fd.3bfbe1d2c41c4b4a.4a59f1966c024b05.fecf42cb914d229c
- b19e921049435d15.2f242abc26a06fcf.6327e8c853ebd5b1.c57592e3781390af
- f5c340b7eb7a371e.c523480e359dcdad.8bca193c833eaffe.69d1e0f6a714c48d
- f4a0595f694c29d2
- after
- 5c33f93489934fb7.ddea40f3c316f781.b42587c8040826df.0724c550a4c70cb6
- 012db4d9177509fd.3bfbe1d2c41c4b4a.4a59f1966c024b05.fecf42cb914d229c
- b19e921049435d15.2f242abc26a06fcf.6327e8c853ebd5b1.c57592e3781390af
- f5c340b7eb7a371e.c523480e359dcdad.8bca193c833eaffe.69d1e0f6a714c48d
- f4a0595f694c29d2
-
-VGATHERQPS_256_1(reg)
- before
- 749e287a09b72a19.5bd76aa9c8958431.09b267243c0fd37f.4f7f2fcdc977c408
- f5877aa2d45135fe.6e18bbc1ad102e6c.088db25b88f2ece2.3a82d756f11302ec
- 81167b351617b51e.bbc0e0dd676723eb.cd72560d66438471.d90fbdb5c78c54c6
- 2708568e1b041614.cd0b85d7c0164dc9.641b7f9720fd07c8.b6618cc41660a6b1
- 5fb5f161ac0ae5c9
- after
- 749e287a09b72a19.5bd76aa9c8958431.09b267243c0fd37f.4f7f2fcdc977c408
- 0000000000000019.5bd76aa9c8958431.000000000000007f.0000000000000008
- 0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.d1ff3de120fd07c8.dc760c76424f73dd
- 0000000000000000
-VGATHERQPS_256_1(mem)
- before
- 604797665306fb2b.f01938082f14c47d.3037558d859a9a23.da455855021ce185
- 43522bb1d8d1d5f2.ea044d019d432cf4.707efdd9816ef514.3aab0da35a9c7e41
- 9714591c07e6603b.2086c0d3b38eb816.1a1d2899820e4ab8.910bccdd73794a9a
- e5c7cc85acc08621.9e5bbddcbbf0d57e.ba4f83a752f6852c.e91fbf5f98b0b22c
- 51a31285163c2092
- after
- 604797665306fb2b.f01938082f14c47d.3037558d859a9a23.da455855021ce185
- 43522bb1d8d1d5f2.ea044d019d432cf4.707efdd9816ef514.3aab0da35a9c7e41
- 9714591c07e6603b.2086c0d3b38eb816.1a1d2899820e4ab8.910bccdd73794a9a
- e5c7cc85acc08621.9e5bbddcbbf0d57e.ba4f83a752f6852c.e91fbf5f98b0b22c
- 51a31285163c2092
-
-VGATHERQPS_128_2(reg)
- before
d255f2ab39190268.bba731c693de35c1.713f72760265f0c9.da51b9e0bfa3928c
7aef8b2d4d43c34b.a4f233bc88b95836.a4ed09ffd4e97492.085f772193905df3
542e08679eb7ced6.2ce27f4356cfdb9c.4422aed17d78cc76.cfb569449b39d27d
@@ -16855,11 +16855,11 @@
5a2897a376af6b6c
after
d255f2ab39190268.bba731c693de35c1.713f72760265f0c9.da51b9e0bfa3928c
- 0000000000000000.0000000000000000.0000000000000124.0000000000000030
+ 0000000000000000.0000000000000000.713f72760265f0c9.000000600000000c
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.b346c472c43e845a
+ 0000000000000000.0000000000000000.5c9a8e4a490f6610.839a892a495a6ea9
0000000000000000
-VGATHERQPS_128_2(mem)
+VGATHERDPS_128(mem)
before
35bd2c98e2756709.cf8a6073266a7756.4ba3a475b098b1ae.f810d5c483a9adfd
da89a4dfb1e7bd39.891f93fcf5a1ec83.faecd5d7d445dc91.2442ae9c79420dd8
@@ -16873,7 +16873,7 @@
afbaefd6abbf26c4.2ec3e3e426b734c2.517ccf7a06984e98.5fc4c8d7c462c8c9
848d61f1b2e0fc18
-VGATHERQPS_128_2(reg)
+VGATHERDPS_128(reg)
before
6a013dd98a4ef8c4.f895193e6e1e1257.324a58fa208ede0c.113af073ab376ef3
1cdc87eb9aa7296c.3a99d869c51808ed.bd9ae54b6a92c743.45420f02be746104
@@ -16882,11 +16882,11 @@
0d6d16c283b86c90
after
6a013dd98a4ef8c4.f895193e6e1e1257.324a58fa208ede0c.113af073ab376ef3
- 0000000000000000.0000000000000000.c92963e8823b7830.44ebc1ceacddbbcc
+ 0000000000000000.0000000000000000.0000007a208ede0c.113af073ab376ef3
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.3720f64d5eb975b6
+ 0000000000000000.0000000000000000.cc76c2c3221107e6.3720f64d5eb975b6
0000000000000000
-VGATHERQPS_128_2(mem)
+VGATHERDPS_128(mem)
before
86f4e43c4646e88e.752db5b60a0e3459.50ea4114388a5fdc.fb96d9402785368a
2ff10b9672dfd4cf.d1fb7208edec7202.f0e405e3d6ceb698.1761811aad16548a
@@ -16900,7 +16900,7 @@
3e3b165f391ead83.ad8af7ea172a4d04.db100a8a8ee941db.a211da416c7f0d11
296ee4463d5080cf
-VGATHERQPS_128_2(reg)
+VGATHERDPS_128(reg)
before
96746668be2e9259.bd0152856bbd7130.46c41732f682c295.3eb9a11a40ba4d99
f6de8d013c15af4c.9b2d97fc3756558e.0b4406846da4cc00.fb6b2d4ce506c43b
@@ -16909,11 +16909,11 @@
c1053c4f85addd8e
after
96746668be2e9259.bd0152856bbd7130.46c41732f682c295.3eb9a11a40ba4d99
- 0000000000000000.0000000000000000.0000000000000054.fae6846902e93664
+ 0000000000000000.0000000000000000.46c4173200000015.0000001a40ba4d99
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.0000000000000000.fd6c33553c04a099
+ 0000000000000000.0000000000000000.4a0a00b5587317bb.d6b7cbd53c04a099
0000000000000000
-VGATHERQPS_128_2(mem)
+VGATHERDPS_128(mem)
before
5c2d4da5f1c234d6.3bd194359cd982af.e96a59de2ed6fbe9.dcc6624d51a9a278
0b89aeeb4ec0928d.dc27054605bd035c.bc847d3159309825.caba445f1ad03865
@@ -16927,7 +16927,7 @@
dacb0fb307640fba.b5bf95918f61e8af.41aaa2893d93f172.ec3532613242e58e
373497081883d303
-VGATHERQPS_256_2(reg)
+VGATHERDPS_256(reg)
before
0f5b2b9af570b632.122a67eefb020667.057b0c824718238d.0a2efa468e9386ba
7f6419721504fab7.8fadbf870f78b4f4.a77b88cb5cb9c9b4.93f7bc35d86e9b94
@@ -16936,11 +16936,11 @@
214e35be8bf413a3
after
0f5b2b9af570b632.122a67eefb020667.057b0c824718238d.0a2efa468e9386ba
- 00000000000000c8.48a99fbbec08199c.15ec32091c608e34.00000000000000e8
+ 0000001a00000032.0000006efb020667.000000024718238d.0a2efa460000003a
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.67d1373fcda6064b.124b2e155e5eb971
+ d6b7cbd5b189ae55.10155922c7dee11d.61827ebbcda6064b.124b2e15e56ea152
0000000000000000
-VGATHERQPS_256_2(mem)
+VGATHERDPS_256(mem)
before
1f865509b51061da.da27bc34fe824466.1d637b2602c539f1.f570ce4ec0eb75f3
98303bd0d572ca30.2313ccbc218b455d.28cd89d38e74f714.59db148f41080053
@@ -16954,7 +16954,7 @@
2dc9094627f8a2a2.3f53bd5df052290f.cccb630bc41c56b8.d73f6dd918bf16ad
0ab0d99a075079df
-VGATHERQPS_256_2(reg)
+VGATHERDPS_256(reg)
before
ef46a993b3aba83a.613048acf015e8f8.2a1ff62e3409e502.7ed8884d070cce71
93bd0a2067cb0e59.40f9fcffdf68fadb.0cade9251b46612b.d6e80ccecab45cea
@@ -16963,11 +16963,11 @@
35888f640ad6c4ea
after
ef46a993b3aba83a.613048acf015e8f8.2a1ff62e3409e502.7ed8884d070cce71
- 00000000000000e8.00000000000001e0.a87fd8b8d0279408.00000000000001c4
+ ef46a993b3aba83a.613048ac00000078.0000002e00000002.7ed8884d00000071
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.5e5eb97190227e82.a504e4fe6b8a318c
+ 453c2d661b4a2f54.2fa076dd790c70ed.2fd8099361827ebb.a504e4fe9d0de346
0000000000000000
-VGATHERQPS_256_2(mem)
+VGATHERDPS_256(mem)
before
9aff4979c437e378.6bbd48d7b2a1c268.58f6931f887d30ed.ff42d98798039605
60a6c019fabcb453.800ea34b82ae3cb1.5c9dd6be0781aa1e.3b346faf02355020
@@ -16981,7 +16981,7 @@
41748f6a09231c59.a513cbb1fcd79650.27d27d8335ebc3e9.5d1f892f7ff0c5b9
5a91674029705a70
-VGATHERQPS_256_2(reg)
+VGATHERDPS_256(reg)
before
b0a55e57d7570f3d.731240d37bfd8bbe.cd3ff0593feb4ede.05d739617d4a3aba
6a189dd1d3a252bc.37d05c3798eb5cde.132b0676eaa49c10.ee1dca0c4bbeddf9
@@ -16990,11 +16990,11 @@
67d33773d079055e
after
b0a55e57d7570f3d.731240d37bfd8bbe.cd3ff0593feb4ede.05d739617d4a3aba
- 00000000000000f4.cc49034deff62ef8.34ffc164ffad3b78.175ce585f528eae8
+ 00000057d7570f3d.731240d37bfd8bbe.000000593feb4ede.05d739617d4a3aba
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.9d56cb7cabf7afd3.145f1d39a9da562f
+ 477fdef1e8512f42.a39b886007f4d5c1.f0cecc73abf7afd3.145f1d39a9da562f
0000000000000000
-VGATHERQPS_256_2(mem)
+VGATHERDPS_256(mem)
before
f678d7eaae1e906b.6902b82099ada081.6220f0ddf00755bb.14cda21c59884b9b
4c8ca87a0d46e471.2d49c8b9c85c4fe2.e4b573c5b41ee6e1.4c1432a0a0af2e77
@@ -17008,7 +17008,7 @@
7feb9054810c92da.a0b17ed0d4a5157c.5afd7c460249f01f.d6a5e4c528ab79de
41665e1d0179b99f
-VGATHERDPD_128(reg)
+VGATHERQPS_128_1(reg)
before
2ac828caa3ccf0e6.73affe572ea2c675.694b7a07483603ec.6729599622554070
9d876f265aa18b4d.5fd14de38cab7179.f5241d806b0bdfef.655503c24e55525c
@@ -17017,11 +17017,11 @@
812e7cff12e64cdc
after
2ac828caa3ccf0e6.73affe572ea2c675.694b7a07483603ec.6729599622554070
- 0000000000000000.0000000000000000.694b7a07483603ec.6729599600000030
+ 0000000000000000.0000000000000000.000000000000006c.6729599622554070
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.8c8207a8ee6d0d1d.2e4eb88b0feb5e39
+ 0000000000000000.0000000000000000.0000000000000000.4393dacefa216c76
0000000000000000
-VGATHERDPD_128(mem)
+VGATHERQPS_128_1(mem)
before
bdb10c2f658f9f4e.ad48e7f3f4fde55c.66c23e54cb4a7d16.ae7fa60fe5f3377f
a65fc385c0984fe7.c2d1d9a7f6af445d.a7b3cc9be9f340d8.c4ab9c27bbacffe4
@@ -17035,7 +17035,7 @@
b02f5917bfba7a00.4bbbf1dff955eb7f.cf6e4d85fa5df158.fd7f3bdf35a81626
389f3c3570e33d3a
-VGATHERDPD_128(reg)
+VGATHERQPS_128_1(reg)
before
97de44aeb941b1c1.eac88f0bfacccdb7.d693701c92420bd9.ceb098e08615b54e
27f77ea45ebfde56.007d9d956c2e2e06.4ca7cce8a090ee34.252f24a3231f518e
@@ -17044,11 +17044,11 @@
ac790bfc5e036f1e
after
97de44aeb941b1c1.eac88f0bfacccdb7.d693701c92420bd9.ceb098e08615b54e
- 0000000000000000.0000000000000000.0000001c00000019.000000208615b54e
+ 0000000000000000.0000000000000000.d693701c92420bd9.000000000000004e
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.d4eaade0a9ada46c.07d8b2d5c31ac25a
+ 0000000000000000.0000000000000000.0000000000000000.07d8b2d5392c5817
0000000000000000
-VGATHERDPD_128(mem)
+VGATHERQPS_128_1(mem)
before
d84856fb3b2ea39c.71bc151465caf585.ec9b8b560c0ddd98.a5a9c2447e9a625e
17803eaf26184cef.3a98d29a6d9c3e6c.f017afd55687ae5d.3c0948e857458ad3
@@ -17062,7 +17062,7 @@
ff1e98a75415aa86.1da1a3e14d5ebd26.50223e56522e3b6d.ea3eaaa0277fe27d
198cde6bb706ebeb
-VGATHERDPD_128(reg)
+VGATHERQPS_128_1(reg)
before
92f64fa71bce1739.c0fc61a230213701.4f45105abe46ca30.c42901129b51cff1
613928afa1d3d204.c53377c24adbe8c2.12a50f30e92df029.752cfc447da5d0ec
@@ -17071,11 +17071,11 @@
7173f13ca899a2c1
after
92f64fa71bce1739.c0fc61a230213701.4f45105abe46ca30.c42901129b51cff1
- 0000000000000000.0000000000000000.0000001a00000030.c429011200000031
+ 0000000000000000.0000000000000000.0000000000000030.0000000000000071
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.78837666a0e93757.6747b78ba8e421dd
+ 0000000000000000.0000000000000000.0000000000000000.b9d815699d0de346
0000000000000000
-VGATHERDPD_128(mem)
+VGATHERQPS_128_1(mem)
before
90bd81e2e18593b1.4d6ede26ed2a9667.de4b459903f70cbe.337a357fc4b530c3
a82ea64bae0e90a6.ed6c12f6eefcc53c.68414ae50c4386ad.af1c3665d371f38e
@@ -17089,7 +17089,7 @@
f47959d633e45608.f1b272b91218911b.06fafdac98a3a51c.1851b10be1a783b0
1d5b83837819283e
-VGATHERDPD_256(reg)
+VGATHERQPS_256_1(reg)
before
120047392a69479b.40c941b0832af8af.6d72f765cd59065d.323603dfb3b123d3
04fc298943954b62.b6316bbd97fb55c9.9feb45bc09b86afb.01abb7176c4d25b0
@@ -17098,11 +17098,11 @@
bbbc9b74414f7b3f
after
120047392a69479b.40c941b0832af8af.6d72f765cd59065d.323603dfb3b123d3
- 120047392a69479b.000000300000002f.000000250000001d.0000001fb3b123d3
+ 000000000000001b.40c941b0832af8af.6d72f765cd59065d.0000000000000053
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 590ce39ac0f03964.fa17f64823025e5e.f9ab123826cfa7b9.ba32d705e720654a
+ 0000000000000000.0000000000000000.0b66934e34beaebe.ba32d7053f080777
0000000000000000
-VGATHERDPD_256(mem)
+VGATHERQPS_256_1(mem)
before
8f70bd5869fbc5c9.3b4f40adef15ed4f.865139ae6391ffe4.f3029a63ba5c671a
c389e88d2ba22f06.96fd55fd9b86bdd8.19702b1f7e6c7be4.76b6c202f108c042
@@ -17116,7 +17116,7 @@
79de0c59accf1402.011f9b2be8b9cde9.7ab69859c18663fe.60072c05a377fd68
de1dc620b533bb9e
-VGATHERDPD_256(reg)
+VGATHERQPS_256_1(reg)
before
73cb89c8a7ebc710.13905ca9044d67fb.290924c12174e4aa.61546cdb80bda650
2acfa057c79d8f5b.3d9966ba25b58a15.ad2b2bd121ea41b5.d1eae36f626004f6
@@ -17125,11 +17125,11 @@
d2d3d737daabf0f4
after
73cb89c8a7ebc710.13905ca9044d67fb.290924c12174e4aa.61546cdb80bda650
- 73cb89c8a7ebc710.13905ca90000003b.290924c10000002a.0000001b80bda650
+ 0000000000000010.13905ca9044d67fb.290924c12174e4aa.61546cdb80bda650
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 2fc37c9dbdddffea.e272aa9b30072487.7d6dc5b27e417312.7eee6d42c4dbbcac
+ 0000000000000000.0000000000000000.8e463769a5f7791a.7eee6d42c4dbbcac
0000000000000000
-VGATHERDPD_256(mem)
+VGATHERQPS_256_1(mem)
before
dfa095b044d8ed00.952d990d2b628066.8d0d95093c420b44.dd2ff174c1862dad
32905387cedca1eb.4edbbad4f6d16c2b.6bc43db67d2ba6fc.4a83aa03d4c1d6fa
@@ -17143,7 +17143,7 @@
d8cd7dc3725edbcf.e6f5bbdad25a36fd.97f47b121b7b0c90.fb9059510f28b733
56c1a7c6ce4cc857
-VGATHERDPD_256(reg)
+VGATHERQPS_256_1(reg)
before
6d08d396b50c7da6.439141e024d33901.dddaf2d17c6deb43.fce4687912dbb0a4
4c220a1b0e6243bb.2368b5cb2510fd82.57f3de90b258bb42.500a6e82320583ba
@@ -17152,11 +17152,11 @@
6017d3f98517561c
after
6d08d396b50c7da6.439141e024d33901.dddaf2d17c6deb43.fce4687912dbb0a4
- 6d08d396b50c7da6.439141e024d33901.dddaf2d17c6deb43.fce4687912dbb0a4
+ 6d08d396b50c7da6.0000000000000001.dddaf2d17c6deb43.fce4687912dbb0a4
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 94be47b849c6b4a9.74435b7f47d367e2.01b384d6f5ab5dd8.f6e878e61fa76a5a
+ 0000000000000000.0000000000000000.01b384d6e1fde075.f6e878e61fa76a5a
0000000000000000
-VGATHERDPD_256(mem)
+VGATHERQPS_256_1(mem)
before
ea6cf81d4442224f.15b8a588c3ca35ba.fcbde6ff0051e5fa.4ad295159a0b07a8
1e23932e29a2ba11.8e74be7ddf567801.2a3cd0be39887ad1.45160c8cfc337ca1
@@ -17170,7 +17170,7 @@
baa6d98895f7feab.9826d04a31f3f1a2.a534746a5a0d952d.83fcd69226d0777b
dd1682d8863cd595
-VGATHERQPD_128_1(reg)
+VGATHERQPS_128_2(reg)
before
1a4542c7d361ae47.39eadc88b4e282bd.429321d9fffcff35.0b26850edb53f3ea
454444ba593c6e2e.938005e529f483cc.15b3dcfe9f7c7e6e.460ba5610b4318d7
@@ -17179,11 +17179,11 @@
6fc91d0cb2d963d2
after
1a4542c7d361ae47.39eadc88b4e282bd.429321d9fffcff35.0b26850edb53f3ea
- 0000000000000000.0000000000000000.429321d9fffcff35.000000000000002a
+ 0000000000000000.0000000000000000.00000000000000d4.00000000000001a8
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.62fa437b87d38043.e272aa9b30072487
+ 0000000000000000.0000000000000000.0000000000000000.ca36dc993b08e8ca
0000000000000000
-VGATHERQPD_128_1(mem)
+VGATHERQPS_128_2(mem)
before
77d534b39a41d894.d37f834238e35134.3e831ac282e6a401.f59a468a68a1da18
1101b6552dbdb012.30193edd9a6be605.7db8912b4669cd1e.e1dc649f4bd75602
@@ -17197,7 +17197,7 @@
29a8aefa88e234b1.738037dec7598404.4ed6b0d48fa15310.f1399f4b4a67608c
2ecc159afebac762
-VGATHERQPD_128_1(reg)
+VGATHERQPS_128_2(reg)
before
f3f1555fe564ffbf.be9b7cb5e783ba0a.72c5cdfc2bb8666a.f838b0ccad4e881e
4c668cf64b62743e.159e65db2228518d.c0ba03ff27ad8fe4.ddcb360180019908
@@ -17206,11 +17206,11 @@
6808a1a535192c11
after
f3f1555fe564ffbf.be9b7cb5e783ba0a.72c5cdfc2bb8666a.f838b0ccad4e881e
- 0000000000000000.0000000000000000.72c5cdfc2bb8666a.000000000000001e
+ 0000000000000000.0000000000000000.00000000000001a8.0000000000000078
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.76a700201b456686.3e559d56cb7cef43
+ 0000000000000000.0000000000000000.0000000000000000.3b08e8ca74d4e14e
0000000000000000
-VGATHERQPD_128_1(mem)
+VGATHERQPS_128_2(mem)
before
b2baf566d8bde68a.4af2b03f6d257aa2.1b5d7d66f108bd36.f71620f6aae1ede6
f4ca2ab02cd4176c.6df979b6c6481bc3.eff68dd09396d580.f626912003026acb
@@ -17224,7 +17224,7 @@
8df3ea4e1b4793dd.2fb3afd9b446d52d.9c19bea52b7ffb56.9f1813e13dc5fa91
61737d2fb85ee5ab
-VGATHERQPD_128_1(reg)
+VGATHERQPS_128_2(reg)
before
d25ee8422b6c76b9.fd84cd5b4d9db5a3.e7de743ee21ac6ad.8d1a38c7b9d1e21a
fc957f74e4eb1b57.946341606154ff43.93388f55ee215430.9f0a2e3582083aea
@@ -17233,11 +17233,11 @@
14d2add73ede28b6
after
d25ee8422b6c76b9.fd84cd5b4d9db5a3.e7de743ee21ac6ad.8d1a38c7b9d1e21a
- 0000000000000000.0000000000000000.e7de743ee21ac6ad.8d1a38c7b9d1e21a
+ 0000000000000000.0000000000000000.9f79d0fb886b1ab4.3468e31ee7478868
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.f8687a08d3b9f7ae.56ab3c61f912f11c
+ 0000000000000000.0000000000000000.0000000000000000.56ab3c61f912f11c
0000000000000000
-VGATHERQPD_128_1(mem)
+VGATHERQPS_128_2(mem)
before
23da4909ef7e80cc.53610962a1e8b4ae.bd2abfdfe09f0554.c9b6a15d4442e4e0
10fdbdd1d76de779.df230aac6504dda7.6998316173b82771.bf23cfd4c4ee1e85
@@ -17251,7 +17251,7 @@
b186db97802e8f09.e64f53607b512909.f81d8b0e00cfa4f9.4748ef9720a02996
f179389b949ed33a
-VGATHERQPD_256_1(reg)
+VGATHERQPS_256_2(reg)
before
f0b9393247af79c1.7e64dd4dd9f6a825.792ff382657824ab.f3accaf390c6d79c
4fc31bb685cf89c6.584e670999ff8048.273d1fa4f4f191be.7468fbb063ff91f7
@@ -17260,11 +17260,11 @@
9e09ee965e102a7b
after
f0b9393247af79c1.7e64dd4dd9f6a825.792ff382657824ab.f3accaf390c6d79c
- f0b9393247af79c1.0000000000000025.000000000000002b.f3accaf390c6d79c
+ 0000000000000104.f993753767daa094.e4bfce0995e092ac.ceb32bce431b5e70
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 5e2839f9d22d93bc.590ce39ac0f03964.cb320389bb21b811.3e5be126fe284f4b
+ 0000000000000000.0000000000000000.7e73bda231c776a4.3e5be126fe284f4b
0000000000000000
-VGATHERQPD_256_1(mem)
+VGATHERQPS_256_2(mem)
before
b5d49e4f302a3dd5.27facc6f786366e4.aeabeb004073b2f5.45caa7a2761cc5b0
0ff99a2d40f27474.7f88f144da9852fb.351c4c709854b94e.d4e2bd5c91b2369c
@@ -17278,7 +17278,7 @@
be412dc94a7dfff2.11c2a376fdf02665.2ce163253e98c3d6.0159508f74923486
b72f24c1d5d397bc
-VGATHERQPD_256_1(reg)
+VGATHERQPS_256_2(reg)
before
e712e5d33b46cd42.2bdb1a3edb382a0a.63e7888c570be5ef.b3ad722225f39d3d
9dbebe21f2e643b5.0bbf0548da912ad7.75b7b0719b156dd8.a8646906d46d958c
@@ -17287,11 +17287,11 @@
8e6a73b4887669fd
after
e712e5d33b46cd42.2bdb1a3edb382a0a.63e7888c570be5ef.b3ad722225f39d3d
- 0000000000000002.000000000000000a.63e7888c570be5ef.000000000000003d
+ 9c4b974ced1b3508.af6c68fb6ce0a828.00000000000001bc.ceb5c88897ce74f4
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 05c88ac2cee692e2.56f6fd6c3355cfe4.0a48771315e68935.5f4cca42798883b1
+ 0000000000000000.0000000000000000.0a48771315e68935.af981015bab38f50
0000000000000000
-VGATHERQPD_256_1(mem)
+VGATHERQPS_256_2(mem)
before
b029c1cc4e491101.5fce9609f3ae55b0.d77e707c632a5996.a4806e89e3a6f5e2
fbff5117d8a97479.a7f58adfe5daffec.fce10a7212d4e151.3053583dcb45da5d
@@ -17305,7 +17305,7 @@
3ee3eeb668fd1734.8a5d7bfe7b7cd0eb.6044f6dd79c32da7.47b9b4cf1b10be2e
ecc47d651c3496bc
-VGATHERQPD_256_1(reg)
+VGATHERQPS_256_2(reg)
before
b05aeaa967289888.4e6851c206e930ae.3d16d100b8e9cfe5.b8bca009c9ffc97a
a13625f74ae72e30.b7f6a8719752b30c.d7789f1da5626dab.e25ea8abe7ba99e3
@@ -17314,11 +17314,11 @@
ce96a9e60cb87bb6
after
b05aeaa967289888.4e6851c206e930ae.3d16d100b8e9cfe5.b8bca009c9ffc97a
- 0000000000000008.4e6851c206e930ae.3d16d100b8e9cfe5.b8bca009c9ffc97a
+ c16baaa59ca26220.00000000000000b8.f45b4402e3a73f94.00000000000001e8
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 3c9461101bb7b47a.c417e227c687a7e2.ec25551cc26e370d.e10f80bebd9b86e5
+ 0000000000000000.0000000000000000.ec25551c09932419.e10f80bec2c38724
0000000000000000
-VGATHERQPD_256_1(mem)
+VGATHERQPS_256_2(mem)
before
be37dff45a44538c.f6cc65b472bfa75c.81241ce7fb4cf092.81e995b58af73ae1
3d2dcfc371bafc84.111c92c2a783ca85.c728f9ba537e5396.2b45fdda337e8df1
@@ -17332,7 +17332,7 @@
1a0b8b132d546e49.8b4f19bc972c8e26.1f074f08a1151708.f4b9f8395773cf37
2947e22a6ad997a5
-VGATHERQPD_128_2(reg)
+VGATHERDPD_128(reg)
before
a65fa5178e2d5ebf.906bb04d6a710f4d.02aaca5fea0908d7.4a5a1f3b2d7351ae
74bb6d5c0f699022.c4103eb7a16830e3.062caaed33927742.2d9543f20d2d5518
@@ -17341,11 +17341,11 @@
a80c5dbf9d5d5402
after
a65fa5178e2d5ebf.906bb04d6a710f4d.02aaca5fea0908d7.4a5a1f3b2d7351ae
- 0000000000000000.0000000000000000.000000000000005c.29687cecb5cd46b8
+ 0000000000000000.0000000000000000.02aaca5fea0908d7.0000003b2d7351ae
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.02af9633119a4f34.50b23658f9a66aa6
+ 0000000000000000.0000000000000000.3655f8bb08d8af4c.50b23658f9a66aa6
0000000000000000
-VGATHERQPD_128_2(mem)
+VGATHERDPD_128(mem)
before
e93e871ac560b891.45c497d4b76fe114.56fb1ab51842cc25.d3f418aacf07baf9
9f8461433c2c8270.d58b2911a429f7b1.010f077b2e792519.80696a77eb153666
@@ -17359,7 +17359,7 @@
9c3ad3734a0bf88d.aca71a5353182583.53c8dd5b07371875.3f875a90c9f2cc2f
6aa9509422b9bec3
-VGATHERQPD_128_2(reg)
+VGATHERDPD_128(reg)
before
80d1d561d10b06f2.fa23c43179177c02.0b74d210ae4515f1.13e61e2c63b68a15
8fbb145524e50f57.fe0f142e28db1737.1c66ee04c63bcf87.f229290e18eedc27
@@ -17368,11 +17368,11 @@
c52dbcb34bcd4a1d
after
80d1d561d10b06f2.fa23c43179177c02.0b74d210ae4515f1.13e61e2c63b68a15
- 0000000000000000.0000000000000000.00000000000000c4.4f9878b18eda2854
+ 0000000000000000.0000000000000000.0000001000000031.0000002c63b68a15
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 0000000000000000.0000000000000000.67d1373f9674a550.3f104c76c07ed00e
+ 0000000000000000.0000000000000000.f0cecc73dc3abe68.3f104c76c07ed00e
0000000000000000
-VGATHERQPD_128_2(mem)
+VGATHERDPD_128(mem)
before
9a5ea57160c7540c.0664e8abe575e8e5.6143fb382c51a36a.f57056cb72aefa55
4ae2b48ccbe7dbf9.6eb2cacebb442d3c.729681c9d2cecdb5.484dbd3875a219a6
@@ -17386,7 +17386,7 @@
6ccff349d1890c3b.e7557c461036bb4d.44086d685eb12549.c434787972a47980
06b7240603ab9141
-VGATHERQPD_128_2(reg)
+VGATHERDPD_128(reg)
before
5a3f95abb25bd50b.f6b07aa306038ec9.1123a5532652db3f.1d9f2b2edc0f2aca
cc87f7c3c9b1b07a.8cd2d8cac0943dc4.9293e96740d61d48.fb19a8133905a5eb
@@ -17395,11 +17395,11 @@
2e36541489501421
after
5a3f95abb25bd50b.f6b07aa306038ec9.1123a5532652db3f.1d9f2b2edc0f2aca
- 0000000000000000.0000000000000000.448e954c994b6cfc.767cacbb703cab28
+ 0000000000000000.0000000000000000.1123a5532652db3f.1d9f2b2edc0f2aca
0000000000000000.0000000000000000.0000000000000000.0000000000000000
0000000000000000.0000000000000000.ce4c710fab02b30d.f8a890aac4a9ae7a
0000000000000000
-VGATHERQPD_128_2(mem)
+VGATHERDPD_128(mem)
before
9a97880d5e7f9fd8.513d775d7c6902b9.091ca9a509a38a5d.a10d0c5c95a3e002
c708d7710fb23dba.b4e053dd2f2b71d1.449d1598d2642126.fc60721fb29bde7c
@@ -17413,7 +17413,7 @@
950877ea34155e70.97289dfa8f5fd4af.9c252da5b6e993c0.7baf4e77b482fd75
b7231cc43168f62b
-VGATHERQPD_256_2(reg)
+VGATHERDPD_256(reg)
before
ab1965f7119570d8.4f1021b7403cba7d.2d46634fd4c9a0ad.d1a4327769a647c9
644e546ba005d817.f918975e5858d824.420479f7e2b96430.71446cf50258861f
@@ -17422,11 +17422,11 @@
4e481317270cc50c
after
ab1965f7119570d8.4f1021b7403cba7d.2d46634fd4c9a0ad.d1a4327769a647c9
- 0000000000000060.3c4086dd00f2e9f4.00000000000000b4.4690c9dda6991f24
+ ab1965f7119570d8.00000037403cba7d.0000000fd4c9a0ad.0000003769a647c9
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 3de12b6f02af9633.521694afdc5d0ab6.1d78d7e2ce16c8bb.24da316a158f5925
+ a6bf822ae8f474d4.521694afdc5d0ab6.636caf9810155922.24da316a158f5925
0000000000000000
-VGATHERQPD_256_2(mem)
+VGATHERDPD_256(mem)
before
14c7dce24f6f6db0.a0bdc1ee5ec1d55b.1985740fe03df7d9.f05b5880b97eb0e9
019436a659353d2e.e2450303a11728fc.00e4d0bb1f025506.76f46810e35a8896
@@ -17440,7 +17440,7 @@
81074f8843d60527.73d139b2f24b57b5.6460aa63822818f4.bec83bed5062dd3b
977b56f12c86326d
-VGATHERQPD_256_2(reg)
+VGATHERDPD_256(reg)
before
4faf2129310ede03.2c25665ebaaad5d9.da4d870599220a06.f8f681183d8255ec
f11fc9f1abf94d9a.2e80be9e43d17dd5.66e8db794e1c0ac9.dd6b838764afb460
@@ -17449,11 +17449,11 @@
ed6247cf580ad4b7
after
4faf2129310ede03.2c25665ebaaad5d9.da4d870599220a06.f8f681183d8255ec
- 000000000000000c.b095997aeaab5764.69361c1664882818.00000000000000b0
+ 4faf2129310ede03.0000001ebaaad5d9.0000000599220a06.f8f681180000002c
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 92e20bc47c625975.69e1e4c7bc040619.1a694638176aa216.ce16c8bb36a64c3d
+ 6a68b481185f1ef5.69e1e4c7bc040619.1a694638176aa216.f0cecc73dc3abe68
0000000000000000
-VGATHERQPD_256_2(mem)
+VGATHERDPD_256(mem)
before
90aeafc32660f331.cd35a341cdd76578.b95e096a4209bf99.5ac8b63bc1b511d8
40069fbd5cf7d1b2.91f175e1121e1929.91091fe50b5000d3.ef36dccfaa147e7d
@@ -17467,7 +17467,7 @@
f7c9c63730d5753a.97de6f91ba90894b.07d7d2d79295c9e3.462dfc1e69fcfedd
202f4e90d67dead2
-VGATHERQPD_256_2(reg)
+VGATHERDPD_256(reg)
before
7e2f0705b3008318.17ac556e65151579.f187ef59b6b21ef5.bd73c505e88b2af1
6cea52d74a83354d.758b1b1c33842330.964eab908616d67f.2a2d5b7cb0b3c328
@@ -17476,11 +17476,11 @@
35639c30ac3017e0
after
7e2f0705b3008318.17ac556e65151579.f187ef59b6b21ef5.bd73c505e88b2af1
- 0000000000000060.00000000000000e4.00000000000000d4.00000000000000c4
+ 7e2f0705b3008318.0000002e00000039.0000001900000035.0000000500000031
0000000000000000.0000000000000000.0000000000000000.0000000000000000
- 3de12b6f02af9633.5e5eb97188388d20.731201e667dcc3bc.67d1373f9674a550
+ 3c7112b6b189ae55.b7937c4409b13b08.6a68b481185f1ef5.2233f10ba855c558
0000000000000000
-VGATHERQPD_256_2(mem)
+VGATHERDPD_256(mem)
before
f8ec6f6333f9c8d5.12d45b1a69e01a9b.7566748822cc1839.bba50470eda10979
2ebe402b28604e80.bad2a9fce43868a2.408cd1aa47d516e6.01366b0008e2859d
@@ -17494,7 +17494,7 @@
232f8bea8df98566.7bbfbc9acaa5103b.4d8bf21419371c66.2d6faf2f7fe8a747
2a8ee3...
[truncated message content] |
|
From: <sv...@va...> - 2015-01-28 10:52:43
|
Author: sewardj
Date: Wed Jan 28 10:52:36 2015
New Revision: 3077
Log:
Use IR conditional stores (IRStoreG) to implement AVX-2 conditional
vector stores, VPMASKMOV{D,Q} xmm/ymm to memory.
Modified:
trunk/priv/guest_amd64_toIR.c
trunk/priv/host_amd64_defs.c
trunk/priv/host_amd64_defs.h
trunk/priv/host_amd64_isel.c
Modified: trunk/priv/guest_amd64_toIR.c
==============================================================================
--- trunk/priv/guest_amd64_toIR.c (original)
+++ trunk/priv/guest_amd64_toIR.c Wed Jan 28 10:52:36 2015
@@ -27235,10 +27235,11 @@
}
-/* Masked load. */
-static ULong dis_VMASKMOV_load ( Bool *uses_vvvv, const VexAbiInfo* vbi,
- Prefix pfx, Long delta,
- const HChar* opname, Bool isYMM, IRType ty )
+/* Masked load or masked store. */
+static ULong dis_VMASKMOV ( Bool *uses_vvvv, const VexAbiInfo* vbi,
+ Prefix pfx, Long delta,
+ const HChar* opname, Bool isYMM, IRType ty,
+ Bool isLoad )
{
HChar dis_buf[50];
Int alen, i;
@@ -27246,50 +27247,55 @@
UChar modrm = getUChar(delta);
UInt rG = gregOfRexRM(pfx,modrm);
UInt rV = getVexNvvvv(pfx);
- IRTemp res[8], cond;
+
addr = disAMode ( &alen, vbi, pfx, delta, dis_buf, 0 );
- if (isYMM) {
+ delta += alen;
+
+ /**/ if (isLoad && isYMM) {
DIP("%s %s,%s,%s\n", opname, dis_buf, nameYMMReg(rV), nameYMMReg(rG) );
- } else {
+ }
+ else if (isLoad && !isYMM) {
DIP("%s %s,%s,%s\n", opname, dis_buf, nameXMMReg(rV), nameXMMReg(rG) );
}
- delta += alen;
- for (i = 0; i < sizeof(res)/sizeof(res[0]); i++)
- res[i] = IRTemp_INVALID;
+ else if (!isLoad && isYMM) {
+ DIP("%s %s,%s,%s\n", opname, nameYMMReg(rV), nameYMMReg(rG), dis_buf );
+ }
+ else {
+ vassert(!isLoad && !isYMM);
+ DIP("%s %s,%s,%s\n", opname, nameXMMReg(rV), nameXMMReg(rG), dis_buf );
+ }
- for (i = 0; i < 2 * (isYMM ? 2 : 1) * (ty == Ity_I32 ? 2 : 1); i++) {
- res[i] = newTemp(ty);
- cond = newTemp(Ity_I1);
- assign( cond,
- binop(ty == Ity_I32 ? Iop_CmpLT32S : Iop_CmpLT64S,
- ty == Ity_I32 ? getYMMRegLane32( rV, i )
- : getYMMRegLane64( rV, i ),
+ vassert(ty == Ity_I32 || ty == Ity_I64);
+ Bool laneIs32 = ty == Ity_I32;
+
+ Int nLanes = (isYMM ? 2 : 1) * (laneIs32 ? 4 : 2);
+
+ for (i = 0; i < nLanes; i++) {
+ IRTemp cond = newTemp(Ity_I1);
+ assign( cond,
+ binop(laneIs32 ? Iop_CmpLT32S : Iop_CmpLT64S,
+ (laneIs32 ? getYMMRegLane32 : getYMMRegLane64)( rV, i ),
mkU(ty, 0) ));
- stmt(
- IRStmt_LoadG(
- Iend_LE,
- ty == Ity_I32 ? ILGop_Ident32 : ILGop_Ident64,
- res[i],
- binop(Iop_Add64, mkexpr(addr), mkU64(i * (ty == Ity_I32 ? 4 : 8))),
- ty == Ity_I32 ? mkU32(0) : mkU64(0),
- mkexpr(cond)
- ));
- }
- switch (ty) {
- case Ity_I32:
- for (i = 0; i < 8; i++)
- putYMMRegLane32( rG, i, (i < 4 || isYMM)
- ? mkexpr(res[i]) : mkU32(0) );
- break;
- case Ity_I64:
- for (i = 0; i < 4; i++)
- putYMMRegLane64( rG, i, (i < 2 || isYMM)
- ? mkexpr(res[i]) : mkU64(0) );
- break;
- default: vassert(0);
+ IRTemp data = newTemp(ty);
+ IRExpr* ea = binop(Iop_Add64, mkexpr(addr),
+ mkU64(i * (laneIs32 ? 4 : 8)));
+ if (isLoad) {
+ stmt(
+ IRStmt_LoadG(
+ Iend_LE, laneIs32 ? ILGop_Ident32 : ILGop_Ident64,
+ data, ea, laneIs32 ? mkU32(0) : mkU64(0), mkexpr(cond)
+ ));
+ (laneIs32 ? putYMMRegLane32 : putYMMRegLane64)( rG, i, mkexpr(data) );
+ } else {
+ assign(data, (laneIs32 ? getYMMRegLane32 : getYMMRegLane64)( rG, i ));
+ stmt( IRStmt_StoreG(Iend_LE, ea, mkexpr(data), mkexpr(cond)) );
+ }
}
+ if (isLoad && !isYMM)
+ putYMMRegLane128( rG, 1, mkV128(0) );
+
*uses_vvvv = True;
return delta;
}
@@ -28202,15 +28208,15 @@
/* VMASKMOVPS m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.WIG 2C /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
- /*!isYMM*/False, Ity_I32 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
+ /*!isYMM*/False, Ity_I32, /*isLoad*/True );
goto decode_success;
}
/* VMASKMOVPS m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.WIG 2C /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
- /*isYMM*/True, Ity_I32 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovps",
+ /*isYMM*/True, Ity_I32, /*isLoad*/True );
goto decode_success;
}
break;
@@ -28219,15 +28225,15 @@
/* VMASKMOVPD m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.WIG 2D /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
- /*!isYMM*/False, Ity_I64 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
+ /*!isYMM*/False, Ity_I64, /*isLoad*/True );
goto decode_success;
}
/* VMASKMOVPD m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.WIG 2D /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
- /*isYMM*/True, Ity_I64 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vmaskmovpd",
+ /*isYMM*/True, Ity_I64, /*isLoad*/True );
goto decode_success;
}
break;
@@ -28788,29 +28794,60 @@
/* VPMASKMOVD m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.W0 8C /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
- /*!isYMM*/False, Ity_I32 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
+ /*!isYMM*/False, Ity_I32, /*isLoad*/True );
goto decode_success;
}
/* VPMASKMOVD m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.W0 8C /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
- /*isYMM*/True, Ity_I32 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
+ /*isYMM*/True, Ity_I32, /*isLoad*/True );
goto decode_success;
}
/* VPMASKMOVQ m128, xmm2, xmm1 = VEX.NDS.128.66.0F38.W1 8C /r */
if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
&& 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
- /*!isYMM*/False, Ity_I64 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
+ /*!isYMM*/False, Ity_I64, /*isLoad*/True );
goto decode_success;
}
/* VPMASKMOVQ m256, ymm2, ymm1 = VEX.NDS.256.66.0F38.W1 8C /r */
if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
&& 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
- delta = dis_VMASKMOV_load( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
- /*isYMM*/True, Ity_I64 );
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
+ /*isYMM*/True, Ity_I64, /*isLoad*/True );
+ goto decode_success;
+ }
+ break;
+
+ case 0x8E:
+ /* VPMASKMOVD xmm2, xmm1, m128 = VEX.NDS.128.66.0F38.W0 8E /r */
+ if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
+ /*!isYMM*/False, Ity_I32, /*!isLoad*/False );
+ goto decode_success;
+ }
+ /* VPMASKMOVD ymm2, ymm1, m256 = VEX.NDS.256.66.0F38.W0 8E /r */
+ if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 0==getRexW(pfx)/*W0*/ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovd",
+ /*isYMM*/True, Ity_I32, /*!isLoad*/False );
+ goto decode_success;
+ }
+ /* VPMASKMOVQ xmm2, xmm1, m128 = VEX.NDS.128.66.0F38.W1 8E /r */
+ if (have66noF2noF3(pfx) && 0==getVexL(pfx)/*128*/
+ && 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
+ /*!isYMM*/False, Ity_I64, /*!isLoad*/False );
+ goto decode_success;
+ }
+ /* VPMASKMOVQ ymm2, ymm1, m256 = VEX.NDS.256.66.0F38.W1 8E /r */
+ if (have66noF2noF3(pfx) && 1==getVexL(pfx)/*256*/
+ && 1==getRexW(pfx)/*W1*/ && !epartIsReg(getUChar(delta))) {
+ delta = dis_VMASKMOV( uses_vvvv, vbi, pfx, delta, "vpmaskmovq",
+ /*isYMM*/True, Ity_I64, /*!isLoad*/False );
goto decode_success;
}
break;
Modified: trunk/priv/host_amd64_defs.c
==============================================================================
--- trunk/priv/host_amd64_defs.c (original)
+++ trunk/priv/host_amd64_defs.c Wed Jan 28 10:52:36 2015
@@ -753,7 +753,18 @@
i->Ain.CLoad.szB = szB;
i->Ain.CLoad.addr = addr;
i->Ain.CLoad.dst = dst;
- vassert(cond != Acc_ALWAYS);
+ vassert(cond != Acc_ALWAYS && (szB == 4 || szB == 8));
+ return i;
+}
+AMD64Instr* AMD64Instr_CStore ( AMD64CondCode cond, UChar szB,
+ HReg src, AMD64AMode* addr ) {
+ AMD64Instr* i = LibVEX_Alloc(sizeof(AMD64Instr));
+ i->tag = Ain_CStore;
+ i->Ain.CStore.cond = cond;
+ i->Ain.CStore.szB = szB;
+ i->Ain.CStore.src = src;
+ i->Ain.CStore.addr = addr;
+ vassert(cond != Acc_ALWAYS && (szB == 4 || szB == 8));
return i;
}
AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst ) {
@@ -1135,13 +1146,24 @@
case Ain_CLoad:
vex_printf("if (%%rflags.%s) { ",
showAMD64CondCode(i->Ain.CLoad.cond));
- vex_printf("mov%c (", i->Ain.CLoad.szB == 4 ? 'l' : 'q');
+ vex_printf("mov%c ", i->Ain.CLoad.szB == 4 ? 'l' : 'q');
ppAMD64AMode(i->Ain.CLoad.addr);
- vex_printf("), ");
+ vex_printf(", ");
(i->Ain.CLoad.szB == 4 ? ppHRegAMD64_lo32 : ppHRegAMD64)
(i->Ain.CLoad.dst);
vex_printf(" }");
return;
+ case Ain_CStore:
+ vex_printf("if (%%rflags.%s) { ",
+ showAMD64CondCode(i->Ain.CStore.cond));
+ vex_printf("mov%c ", i->Ain.CStore.szB == 4 ? 'l' : 'q');
+ (i->Ain.CStore.szB == 4 ? ppHRegAMD64_lo32 : ppHRegAMD64)
+ (i->Ain.CStore.src);
+ vex_printf(", ");
+ ppAMD64AMode(i->Ain.CStore.addr);
+ vex_printf(" }");
+ return;
+
case Ain_MovxLQ:
vex_printf("mov%clq ", i->Ain.MovxLQ.syned ? 's' : 'z');
ppHRegAMD64_lo32(i->Ain.MovxLQ.src);
@@ -1488,6 +1510,10 @@
addRegUsage_AMD64AMode(u, i->Ain.CLoad.addr);
addHRegUse(u, HRmModify, i->Ain.CLoad.dst);
return;
+ case Ain_CStore:
+ addRegUsage_AMD64AMode(u, i->Ain.CStore.addr);
+ addHRegUse(u, HRmRead, i->Ain.CStore.src);
+ return;
case Ain_MovxLQ:
addHRegUse(u, HRmRead, i->Ain.MovxLQ.src);
addHRegUse(u, HRmWrite, i->Ain.MovxLQ.dst);
@@ -1724,6 +1750,10 @@
mapRegs_AMD64AMode(m, i->Ain.CLoad.addr);
mapReg(m, &i->Ain.CLoad.dst);
return;
+ case Ain_CStore:
+ mapRegs_AMD64AMode(m, i->Ain.CStore.addr);
+ mapReg(m, &i->Ain.CStore.src);
+ return;
case Ain_MovxLQ:
mapReg(m, &i->Ain.MovxLQ.src);
mapReg(m, &i->Ain.MovxLQ.dst);
@@ -3035,6 +3065,35 @@
goto done;
}
+ case Ain_CStore: {
+ /* AFAICS this is identical to Ain_CStore except that the opcode
+ is 0x89 instead of 0x8B. */
+ vassert(i->Ain.CStore.cond != Acc_ALWAYS);
+
+ /* Only 32- or 64-bit variants are allowed. */
+ vassert(i->Ain.CStore.szB == 4 || i->Ain.CStore.szB == 8);
+
+ /* Use ptmp for backpatching conditional jumps. */
+ ptmp = NULL;
+
+ /* jmp fwds if !condition */
+ *p++ = toUChar(0x70 + (0xF & (i->Ain.CStore.cond ^ 1)));
+ ptmp = p; /* fill in this bit later */
+ *p++ = 0; /* # of bytes to jump over; don't know how many yet. */
+
+ /* Now the store. */
+ rex = rexAMode_M(i->Ain.CStore.src, i->Ain.CStore.addr);
+ *p++ = i->Ain.CStore.szB == 4 ? clearWBit(rex) : rex;
+ *p++ = 0x89;
+ p = doAMode_M(p, i->Ain.CStore.src, i->Ain.CStore.addr);
+
+ /* Fix up the conditional branch */
+ Int delta = p - ptmp;
+ vassert(delta > 0 && delta < 40);
+ *ptmp = toUChar(delta-1);
+ goto done;
+ }
+
case Ain_MovxLQ:
/* No, _don't_ ask me why the sense of the args has to be
different in the S vs Z case. I don't know. */
Modified: trunk/priv/host_amd64_defs.h
==============================================================================
--- trunk/priv/host_amd64_defs.h (original)
+++ trunk/priv/host_amd64_defs.h Wed Jan 28 10:52:36 2015
@@ -369,6 +369,7 @@
Ain_XAssisted, /* assisted transfer to GA */
Ain_CMov64, /* conditional move, 64-bit reg-reg only */
Ain_CLoad, /* cond. load to int reg, 32 bit ZX or 64 bit only */
+ Ain_CStore, /* cond. store from int reg, 32 or 64 bit only */
Ain_MovxLQ, /* reg-reg move, zx-ing/sx-ing top half */
Ain_LoadEX, /* mov{s,z}{b,w,l}q from mem to reg */
Ain_Store, /* store 32/16/8 bit value in memory */
@@ -514,6 +515,14 @@
AMD64AMode* addr;
HReg dst;
} CLoad;
+ /* cond. store from int reg, 32 or 64 bit only.
+ cond may not be Acc_ALWAYS. */
+ struct {
+ AMD64CondCode cond;
+ UChar szB; /* 4 or 8 only */
+ HReg src;
+ AMD64AMode* addr;
+ } CStore;
/* reg-reg move, sx-ing/zx-ing top half */
struct {
Bool syned;
@@ -721,6 +730,8 @@
extern AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode, HReg src, HReg dst );
extern AMD64Instr* AMD64Instr_CLoad ( AMD64CondCode cond, UChar szB,
AMD64AMode* addr, HReg dst );
+extern AMD64Instr* AMD64Instr_CStore ( AMD64CondCode cond, UChar szB,
+ HReg src, AMD64AMode* addr );
extern AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst );
extern AMD64Instr* AMD64Instr_LoadEX ( UChar szSmall, Bool syned,
AMD64AMode* src, HReg dst );
Modified: trunk/priv/host_amd64_isel.c
==============================================================================
--- trunk/priv/host_amd64_isel.c (original)
+++ trunk/priv/host_amd64_isel.c Wed Jan 28 10:52:36 2015
@@ -4314,6 +4314,28 @@
return;
}
+ /* --------- STOREG (guarded store) --------- */
+ case Ist_StoreG: {
+ IRStoreG* sg = stmt->Ist.StoreG.details;
+ if (sg->end != Iend_LE)
+ goto stmt_fail;
+
+ UChar szB = 0; /* invalid */
+ switch (typeOfIRExpr(env->type_env, sg->data)) {
+ case Ity_I32: szB = 4; break;
+ case Ity_I64: szB = 8; break;
+ default: break;
+ }
+ if (szB == 0)
+ goto stmt_fail;
+
+ AMD64AMode* amAddr = iselIntExpr_AMode(env, sg->addr);
+ HReg rSrc = iselIntExpr_R(env, sg->data);
+ AMD64CondCode cc = iselCondCode(env, sg->guard);
+ addInstr(env, AMD64Instr_CStore(cc, szB, rSrc, amAddr));
+ return;
+ }
+
/* --------- STORE --------- */
case Ist_Store: {
IRType tya = typeOfIRExpr(env->type_env, stmt->Ist.Store.addr);
|
|
From: Rich C. <rc...@wi...> - 2015-01-28 05:29:09
|
valgrind revision: 14892
VEX revision: 3076
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.6-2-desktop x86_64
Vendor version: Welcome to openSUSE 13.2 "Harlequin" - Kernel %r (%t).
Nightly build on rodan ( Linux 3.16.6-2-desktop x86_64 )
Started at 2015-01-27 19:22:01 CST
Ended at 2015-01-27 23:29:02 CST
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
== 615 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.7s (16.0x, -----) me:15.6s (32.5x, -----) ca:60.9s (127.0x, -----) he: 9.6s (19.9x, -----) ca:17.2s (35.8x, -----) dr: 9.1s (19.0x, -----) ma: 8.9s (18.6x, -----)
bigcode1 valgrind-old:0.48s no: 7.5s (15.6x, 2.3%) me:15.5s (32.3x, 0.7%) ca:60.9s (126.9x, 0.1%) he: 9.5s (19.9x, 0.2%) ca:17.1s (35.7x, 0.3%) dr: 9.1s (18.9x, 0.4%) ma: 8.9s (18.6x, 0.1%)
-- bigcode2 --
bigcode2 valgrind-new:0.49s no:18.9s (38.6x, -----) me:40.0s (81.7x, -----) ca:104.4s (213.1x, -----) he:24.2s (49.4x, -----) ca:33.0s (67.4x, -----) dr:22.1s (45.0x, -----) ma:21.5s (43.9x, -----)
bigcode2 valgrind-old:0.49s no:18.7s (38.1x, 1.2%) me:39.6s (80.9x, 0.9%) ca:104.4s (213.0x, 0.0%) he:24.1s (49.2x, 0.4%) ca:32.9s (67.0x, 0.6%) dr:22.0s (44.9x, 0.3%) ma:21.4s (43.8x, 0.3%)
-- bz2 --
bz2 valgrind-new:2.32s no: 7.8s ( 3.4x, -----) me:25.6s (11.0x, -----) ca:56.8s (24.5x, -----) he:37.5s (16.2x, -----) ca:50.8s (21.9x, -----) dr:53.1s (22.9x, -----) ma: 7.4s ( 3.2x, -----)
bz2 valgrind-old:2.32s no: 7.8s ( 3.4x, -0.3%) me:25.4s (11.0x, 0.5%) ca:56.8s (24.5x, 0.0%) he:37.5s (16.2x, 0.1%) ca:51.0s (22.0x, -0.3%) dr:53.1s (22.9x, 0.1%) ma: 7.4s ( 3.2x, 0.3%)
-- fbench --
fbench valgrind-new:1.45s no: 5.1s ( 3.5x, -----) me:17.5s (12.0x, -----) ca:26.8s (18.5x, -----) he:13.2s ( 9.1x, -----) ca:16.3s (11.3x, -----) dr:13.2s ( 9.1x, -----) ma: 5.4s ( 3.7x, -----)
fbench valgrind-old:1.45s no: 5.2s ( 3.6x, -1.0%) me:17.4s (12.0x, 0.2%) ca:26.9s (18.5x, -0.1%) he:13.1s ( 9.1x, 0.6%) ca:16.3s (11.2x, 0.2%) dr:13.3s ( 9.2x, -0.2%) ma: 5.4s ( 3.7x, -0.2%)
-- ffbench --
ffbench valgrind-new:1.00s no: 3.4s ( 3.4x, -----) me:12.3s (12.3x, -----) ca: 7.8s ( 7.8x, -----) he:20.6s (20.6x, -----) ca:20.1s (20.1x, -----) dr:16.8s (16.8x, -----) ma: 3.4s ( 3.4x, -----)
ffbench valgrind-old:1.00s no: 3.4s ( 3.4x, 0.3%) me:12.3s (12.3x, 0.1%) ca: 7.8s ( 7.8x, 0.0%) he:20.7s (20.7x, -0.3%) ca:20.1s (20.1x, 0.0%) dr:16.9s (16.9x, -0.2%) ma: 3.4s ( 3.4x, -0.6%)
-- heap --
heap valgrind-new:0.41s no: 3.0s ( 7.3x, -----) me:22.4s (54.7x, -----) ca:30.1s (73.4x, -----) he:30.6s (74.8x, -----) ca:15.0s (36.7x, -----) dr:20.4s (49.9x, -----) ma:21.3s (52.0x, -----)
heap valgrind-old:0.41s no: 3.0s ( 7.3x, 0.3%) me:22.2s (54.1x, 1.0%) ca:30.3s (73.8x, -0.6%) he:30.4s (74.1x, 0.9%) ca:15.0s (36.7x, 0.1%) dr:20.5s (50.0x, -0.2%) ma:22.0s (53.6x, -3.2%)
-- heap_pdb4 --
heap_pdb4 valgrind-new:0.54s no: 3.3s ( 6.1x, -----) me:38.6s (71.5x, -----) ca:33.5s (62.1x, -----) he:34.8s (64.4x, -----) ca:17.1s (31.6x, -----) dr:23.6s (43.6x, -----) ma:22.1s (40.9x, -----)
heap_pdb4 valgrind-old:0.54s no: 3.3s ( 6.2x, -0.6%) me:37.9s (70.2x, 1.9%) ca:33.5s (61.9x, 0.3%) he:34.7s (64.2x, 0.3%) ca:17.1s (31.6x, 0.0%) dr:23.1s (42.9x, 1.8%) ma:22.8s (42.2x, -3.1%)
-- many-loss-records --
many-loss-records valgrind-new:0.05s no: 1.0s (20.4x, -----) me: 6.1s (121.4x, -----) ca: 4.8s (96.0x, -----) he: 5.3s (106.8x, -----) ca: 2.9s (57.2x, -----) dr: 5.0s (99.0x, -----) ma: 4.7s (93.8x, -----)
many-loss-records valgrind-old:0.05s no: 1.0s (20.4x, 0.0%) me: 6.1s (121.4x, 0.0%) ca: 4.8s (95.4x, 0.6%) he: 5.3s (107.0x, -0.2%) ca: 2.9s (57.0x, 0.3%) dr: 4.9s (98.2x, 0.8%) ma: 4.8s (96.8x, -3.2%)
-- many-xpts --
many-xpts valgrind-new:0.16s no: 1.3s ( 7.9x, -----) me: 7.3s (45.9x, -----) ca:12.7s (79.6x, -----) he: 9.9s (61.9x, -----) ca: 4.2s (26.1x, -----) dr: 6.7s (41.7x, -----) ma: 6.9s (43.2x, -----)
many-xpts valgrind-old:0.16s no: 1.3s ( 8.1x, -2.4%) me: 7.3s (45.7x, 0.5%) ca:12.8s (79.8x, -0.2%) he: 9.9s (61.6x, 0.4%) ca: 4.2s (26.0x, 0.2%) dr: 6.6s (41.5x, 0.4%) ma: 7.1s (44.2x, -2.5%)
-- sarp --
sarp valgrind-new:0.11s no: 1.2s (11.2x, -----) me: 9.1s (82.5x, -----) ca: 7.8s (70.5x, -----) he:31.1s (282.9x, -----) ca: 4.3s (39.3x, -----) dr: 4.3s (39.2x, -----) ma: 1.3s (11.9x, -----)
sarp valgrind-old:0.11s no: 1.2s (11.3x, -0.8%) me: 9.1s (82.8x, -0.3%) ca: 7.8s (71.3x, -1.2%) he:30.7s (279.2x, 1.3%) ca: 4.3s (39.2x, 0.2%) dr: 4.4s (40.0x, -2.1%) ma: 1.3s (11.9x, 0.0%)
-- tinycc --
tinycc valgrind-new:0.76s no: 7.5s ( 9.8x, -----) me:37.6s (49.5x, -----) ca:47.0s (61.8x, -----) he:44.8s (59.0x, -----) ca:39.2s (51.5x, -----) dr:40.1s (52.8x, -----) ma:11.7s (15.4x, -----)
tinycc valgrind-old:0.76s no: 7.4s ( 9.7x, 0.8%) me:37.5s (49.4x, 0.3%) ca:47.0s (61.9x, -0.1%) he:44.8s (58.9x, 0.0%) ca:39.2s (51.5x, 0.0%) dr:39.2s (51.6x, 2.2%) ma:11.6s (15.3x, 0.3%)
-- Finished tests in perf ----------------------------------------------
== 11 programs, 154 timings =================
real 151m25.281s
user 150m1.530s
sys 1m18.272s
=================================================
./valgrind-new/gdbserver_tests/hgtls.stdoutB.diff
=================================================
--- hgtls.stdoutB.exp 2015-01-27 20:09:56.187947682 -0600
+++ hgtls.stdoutB.out 2015-01-27 20:23:27.357675967 -0600
@@ -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 2015-01-27 20:09:56.982957132 -0600
+++ err_disable3.stderr.out 2015-01-27 20:27:44.721720615 -0600
@@ -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 2015-01-27 20:09:57.819967081 -0600
+++ err_disable4.stderr.out 2015-01-27 20:27:48.797768600 -0600
@@ -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 2015-01-27 20:09:57.581964252 -0600
+++ threadname.stderr.out 2015-01-27 20:34:31.057583046 -0600
@@ -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 2015-01-27 20:09:57.288960769 -0600
+++ threadname_xml.stderr.out 2015-01-27 20:34:33.367601461 -0600
@@ -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 2015-01-27 19:22:17.098467154 -0600
+++ hgtls.stdoutB.out 2015-01-27 19:35:45.902762091 -0600
@@ -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 2015-01-27 19:22:17.896476456 -0600
+++ err_disable3.stderr.out 2015-01-27 19:40:02.160656143 -0600
@@ -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 2015-01-27 19:22:18.737486258 -0600
+++ err_disable4.stderr.out 2015-01-27 19:40:06.253702187 -0600
@@ -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 2015-01-27 19:22:18.498483473 -0600
+++ threadname.stderr.out 2015-01-27 19:46:46.459178122 -0600
@@ -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 2015-01-27 19:22:18.203480034 -0600
+++ threadname_xml.stderr.out 2015-01-27 19:46:48.745203545 -0600
@@ -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: Christian B. <bor...@de...> - 2015-01-28 05:12:58
|
valgrind revision: 14892 VEX revision: 3076 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.40-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 2015-01-28 03:45:02 CET Ended at 2015-01-28 06:12:44 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 == 664 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: 5.2s (22.4x, -----) me: 7.0s (30.6x, -----) ca:26.0s (112.9x, -----) he: 4.6s (19.8x, -----) ca: 9.2s (40.2x, -----) dr: 5.2s (22.6x, -----) ma: 5.0s (21.5x, -----) bigcode1 valgrind-old:0.23s no: 5.1s (22.2x, 0.8%) me: 7.1s (30.7x, -0.4%) ca:26.2s (113.9x, -0.9%) he: 4.6s (19.8x, 0.0%) ca: 9.2s (40.2x, 0.0%) dr: 5.2s (22.6x, 0.0%) ma: 5.0s (21.6x, -0.4%) -- bigcode2 -- bigcode2 valgrind-new:0.25s no: 8.8s (35.3x, -----) me:14.2s (56.9x, -----) ca:39.2s (156.7x, -----) he: 9.9s (39.5x, -----) ca:14.6s (58.5x, -----) dr: 9.6s (38.4x, -----) ma: 8.6s (34.5x, -----) bigcode2 valgrind-old:0.25s no: 8.3s (33.0x, 6.3%) me:14.6s (58.3x, -2.5%) ca:39.9s (159.8x, -1.9%) he: 9.9s (39.5x, 0.1%) ca:14.7s (58.7x, -0.4%) dr: 9.6s (38.5x, -0.4%) ma: 8.7s (34.7x, -0.6%) -- bz2 -- bz2 valgrind-new:0.70s no: 6.7s ( 9.5x, -----) me:13.5s (19.3x, -----) ca:30.1s (43.0x, -----) he:19.7s (28.2x, -----) ca:34.1s (48.7x, -----) dr:29.7s (42.4x, -----) ma: 5.4s ( 7.7x, -----) bz2 valgrind-old:0.70s no: 6.7s ( 9.5x, 0.2%) me:13.5s (19.3x, 0.1%) ca:30.4s (43.4x, -1.0%) he:19.7s (28.2x, 0.1%) ca:34.1s (48.7x, -0.1%) dr:29.9s (42.7x, -0.8%) ma: 5.4s ( 7.7x, 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.8x, -----) ca: 7.2s (17.6x, -----) dr: 5.7s (14.0x, -----) ma: 1.7s ( 4.1x, -----) fbench valgrind-old:0.41s no: 1.6s ( 4.0x, 0.0%) me: 4.5s (11.0x, 0.0%) ca: 9.3s (22.7x, -0.7%) he: 6.5s (15.8x, 0.2%) ca: 7.2s (17.6x, -0.1%) dr: 5.8s (14.0x, -0.3%) ma: 1.7s ( 4.1x, 0.0%) -- ffbench -- ffbench valgrind-new:0.20s no: 1.2s ( 6.1x, -----) me: 3.4s (16.8x, -----) ca: 3.0s (15.2x, -----) he:43.9s (219.3x, -----) ca: 9.6s (47.9x, -----) dr: 7.5s (37.6x, -----) ma: 1.0s ( 5.1x, -----) ffbench valgrind-old:0.20s no: 1.2s ( 6.0x, 1.6%) me: 3.4s (16.8x, 0.3%) ca: 3.1s (15.3x, -0.3%) he:43.9s (219.3x, -0.0%) ca: 9.6s (47.9x, 0.0%) dr: 7.5s (37.6x, 0.1%) ma: 1.0s ( 5.0x, 2.9%) -- heap -- heap valgrind-new:0.23s no: 2.3s (10.0x, -----) me: 8.8s (38.4x, -----) ca:13.0s (56.5x, -----) he:13.0s (56.4x, -----) ca:11.1s (48.1x, -----) dr: 8.0s (34.6x, -----) ma: 7.9s (34.2x, -----) heap valgrind-old:0.23s no: 2.3s (10.1x, -0.9%) me: 9.1s (39.3x, -2.4%) ca:13.1s (56.7x, -0.4%) he:12.9s (56.3x, 0.2%) ca:11.1s (48.3x, -0.4%) dr: 7.9s (34.4x, 0.4%) ma: 7.8s (34.0x, 0.5%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.23s no: 2.6s (11.2x, -----) me:12.9s (56.3x, -----) ca:14.0s (61.0x, -----) he:14.1s (61.3x, -----) ca:12.3s (53.6x, -----) dr: 8.8s (38.3x, -----) ma: 8.1s (35.1x, -----) heap_pdb4 valgrind-old:0.23s no: 2.5s (11.0x, 1.9%) me:13.2s (57.2x, -1.6%) ca:14.2s (61.7x, -1.2%) he:14.2s (61.9x, -0.9%) ca:12.4s (53.8x, -0.4%) dr: 8.8s (38.4x, -0.1%) ma: 8.1s (35.1x, 0.1%) -- many-loss-records -- many-loss-records valgrind-new:0.03s no: 0.6s (18.3x, -----) me: 2.3s (77.3x, -----) ca: 1.9s (64.7x, -----) he: 2.4s (80.0x, -----) ca: 1.9s (64.0x, -----) dr: 2.0s (65.7x, -----) ma: 1.7s (55.3x, -----) many-loss-records valgrind-old:0.03s no: 0.6s (18.3x, 0.0%) me: 2.4s (79.3x, -2.6%) ca: 1.9s (65.0x, -0.5%) he: 2.4s (79.0x, 1.2%) ca: 1.9s (64.0x, 0.0%) dr: 2.0s (66.0x, -0.5%) ma: 1.7s (55.3x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.07s no: 0.7s (10.0x, -----) me: 3.4s (48.9x, -----) ca:340.5s (4864.3x, -----) he: 6.8s (97.9x, -----) ca: 2.8s (40.1x, -----) dr: 2.7s (39.0x, -----) ma: 2.6s (37.6x, -----) many-xpts valgrind-old:0.07s no: 0.7s ( 9.9x, 1.4%) me: 3.5s (49.6x, -1.5%) ca:348.6s (4979.6x, -2.4%) he: 6.8s (97.9x, 0.0%) ca: 2.8s (39.9x, 0.7%) dr: 2.8s (39.3x, -0.7%) ma: 2.6s (37.1x, 1.1%) -- sarp -- sarp valgrind-new:0.03s no: 0.6s (20.3x, -----) me: 3.8s (127.3x, -----) ca: 3.2s (107.3x, -----) he:17.7s (588.7x, -----) ca: 2.1s (68.7x, -----) dr: 1.6s (53.0x, -----) ma: 0.5s (16.3x, -----) sarp valgrind-old:0.03s no: 0.6s (20.3x, 0.0%) me: 3.8s (127.0x, 0.3%) ca: 3.2s (107.3x, 0.0%) he:17.6s (588.3x, 0.1%) ca: 2.1s (68.7x, 0.0%) dr: 1.6s (53.0x, -0.0%) ma: 0.5s (17.0x, -4.1%) -- tinycc -- tinycc valgrind-new:0.22s no: 3.3s (14.8x, -----) me:14.8s (67.0x, -----) ca:29.6s (134.7x, -----) he:28.0s (127.3x, -----) ca:21.3s (97.0x, -----) dr:20.8s (94.5x, -----) ma: 4.1s (18.6x, -----) tinycc valgrind-old:0.22s no: 3.2s (14.5x, 1.8%) me:14.7s (66.9x, 0.3%) ca:29.8s (135.6x, -0.7%) he:28.1s (127.8x, -0.4%) ca:21.3s (96.7x, 0.3%) dr:20.9s (94.8x, -0.4%) ma: 4.1s (18.6x, -0.2%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 109m41.077s user 108m56.344s sys 0m34.041s |
|
From: Rich C. <rc...@wi...> - 2015-01-28 04:42:17
|
valgrind revision: 14892
VEX revision: 3076
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.6-2-desktop x86_64
Vendor version: openSUSE 13.2 (Harlequin)
Nightly build on ultra ( gcc (SUSE Linux) 4.8.3 20140627 [gcc-4_8-branch revision 212064] Linux 3.16.6-2-desktop x86_64 )
Started at 2015-01-27 21:30:01 CST
Ended at 2015-01-27 22:42:07 CST
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
== 615 tests, 6 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)
helgrind/tests/hg05_race2 (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
=================================================
./valgrind-new/gdbserver_tests/hgtls.stdoutB.diff
=================================================
--- hgtls.stdoutB.exp 2015-01-27 22:08:59.895355333 -0600
+++ hgtls.stdoutB.out 2015-01-27 22:30:04.562331236 -0600
@@ -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/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2015-01-27 22:16:15.162309306 -0600
+++ hg05_race2.stderr.out 2015-01-27 22:36:39.143478160 -0600
@@ -26,8 +26,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
----------------------------------------------------------------
@@ -42,8 +41,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2015-01-27 22:16:15.184309673 -0600
+++ tc09_bad_unlock.stderr.out 2015-01-27 22:37:06.394728156 -0600
@@ -37,7 +37,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:31)
by 0x........: main (tc09_bad_unlock.c:49)
Address 0x........ is on thread #x's stack
- in frame #x, created by nearly_main (tc09_bad_unlock.c:16)
----------------------------------------------------------------
=================================================
./valgrind-new/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2015-01-27 22:09:47.172047278 -0600
+++ err_disable3.stderr.out 2015-01-27 22:31:55.626277652 -0600
@@ -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 2015-01-27 22:10:28.182912325 -0600
+++ err_disable4.stderr.out 2015-01-27 22:31:56.911242318 -0600
@@ -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 2015-01-27 22:10:11.862364387 -0600
+++ threadname.stderr.out 2015-01-27 22:33:56.132963315 -0600
@@ -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 2015-01-27 22:10:03.475596175 -0600
+++ threadname_xml.stderr.out 2015-01-27 22:33:56.771945738 -0600
@@ -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 2015-01-27 21:31:00.427852199 -0600
+++ hgtls.stdoutB.out 2015-01-27 21:56:09.851594590 -0600
@@ -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/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2015-01-27 21:38:04.397293035 -0600
+++ hg05_race2.stderr.out 2015-01-27 22:02:47.100665159 -0600
@@ -26,8 +26,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
----------------------------------------------------------------
@@ -42,8 +41,7 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
+ Address 0x........ is on thread #x's stack
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2015-01-27 21:38:04.420292048 -0600
+++ tc09_bad_unlock.stderr.out 2015-01-27 22:03:14.398910414 -0600
@@ -37,7 +37,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:31)
by 0x........: main (tc09_bad_unlock.c:49)
Address 0x........ is on thread #x's stack
- in frame #x, created by nearly_main (tc09_bad_unlock.c:16)
----------------------------------------------------------------
=================================================
./valgrind-old/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2015-01-27 21:31:52.858424671 -0600
+++ err_disable3.stderr.out 2015-01-27 21:58:00.571558039 -0600
@@ -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 2015-01-27 21:32:36.997221022 -0600
+++ err_disable4.stderr.out 2015-01-27 21:58:01.840523230 -0600
@@ -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 2015-01-27 21:32:18.705720113 -0600
+++ threadname.stderr.out 2015-01-27 22:00:00.804259235 -0600
@@ -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 2015-01-27 21:32:10.862933117 -0600
+++ threadname_xml.stderr.out 2015-01-27 22:00:01.444241672 -0600
@@ -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: <ma...@bu...> - 2015-01-28 04:34:17
|
valgrind revision: 14892
VEX revision: 3076
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.17.7-200.fc20.s390x s390x
Vendor version: Fedora 20 (Heisenbug)
Nightly build on lfedora1 ( Fedora release 20 (Heisenbug), s390x )
Started at 2015-01-28 00:00:01 UTC
Ended at 2015-01-28 00:56:34 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
== 670 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 2015-01-28 00:28:28.248994625 +0000
+++ locked_vs_unlocked2.stderr.out 2015-01-28 00:46:44.208994625 +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 2015-01-28 00:28:28.208994625 +0000
+++ pth_cond_destroy_busy.stderr.out 2015-01-28 00:46:50.978994625 +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 2015-01-28 00:28:28.198994625 +0000
+++ tc22_exit_w_lock.stderr.out 2015-01-28 00:48:08.258994625 +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 in a rw- anonymous segment
+
+---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 2015-01-28 00:28:28.208994625 +0000
+++ tc22_exit_w_lock.stderr.out 2015-01-28 00:48:08.258994625 +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 in a rw- anonymous segment
+
+---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 2015-01-28 00:00:16.168994625 +0000
+++ locked_vs_unlocked2.stderr.out 2015-01-28 00:18:31.818994625 +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 2015-01-28 00:00:16.118994625 +0000
+++ pth_cond_destroy_busy.stderr.out 2015-01-28 00:18:38.658994625 +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 2015-01-28 00:00:16.108994625 +0000
+++ tc22_exit_w_lock.stderr.out 2015-01-28 00:19:56.738994625 +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 in a rw- anonymous segment
+
+---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 2015-01-28 00:00:16.118994625 +0000
+++ tc22_exit_w_lock.stderr.out 2015-01-28 00:19:56.738994625 +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 in a rw- anonymous segment
+
+---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: Tom H. <to...@co...> - 2015-01-28 04:14:26
|
valgrind revision: 14892 VEX revision: 3076 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2015-01-28 03:02:36 GMT Ended at 2015-01-28 04:14:06 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 == 698 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.10s no: 1.6s (16.5x, -----) me: 3.4s (33.6x, -----) ca:14.4s (143.6x, -----) he: 2.0s (20.4x, -----) ca: 3.9s (38.5x, -----) dr: 2.0s (20.0x, -----) ma: 1.9s (19.5x, -----) bigcode1 valgrind-old:0.10s no: 1.7s (16.7x, -1.2%) me: 3.4s (33.6x, 0.0%) ca:14.4s (144.0x, -0.3%) he: 2.0s (20.5x, -0.5%) ca: 3.9s (38.5x, 0.0%) dr: 2.0s (20.2x, -1.0%) ma: 2.0s (19.6x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.3x, -----) me: 8.6s (77.9x, -----) ca:26.0s (236.1x, -----) he: 5.0s (45.5x, -----) ca: 7.3s (66.4x, -----) dr: 4.7s (42.3x, -----) ma: 4.6s (41.6x, -----) bigcode2 valgrind-old:0.11s no: 4.1s (37.3x, -2.8%) me: 8.6s (78.2x, -0.4%) ca:25.5s (231.5x, 1.9%) he: 5.0s (45.1x, 0.8%) ca: 7.3s (66.7x, -0.5%) dr: 4.7s (42.5x, -0.6%) ma: 4.6s (41.6x, 0.0%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.8s (11.1x, -----) ca:13.3s (25.5x, -----) he: 8.3s (16.0x, -----) ca:10.9s (20.9x, -----) dr:10.8s (20.7x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, -0.6%) me: 5.7s (11.0x, 0.7%) ca:13.2s (25.3x, 0.8%) he: 8.3s (16.0x, -0.1%) ca:10.9s (20.9x, 0.1%) dr:10.6s (20.5x, 1.4%) ma: 1.6s ( 3.1x, -0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.8s (17.1x, -----) ca: 5.6s (25.3x, -----) he: 2.9s (13.1x, -----) ca: 3.2s (14.5x, -----) dr: 2.6s (12.0x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 1.0%) me: 3.8s (17.3x, -1.3%) ca: 5.6s (25.4x, -0.4%) he: 2.9s (13.2x, -0.3%) ca: 3.2s (14.4x, 0.3%) dr: 2.6s (12.0x, 0.0%) ma: 1.0s ( 4.7x, 1.0%) -- ffbench -- ffbench valgrind-new:0.20s no: 0.9s ( 4.7x, -----) me: 2.8s (13.9x, -----) ca: 1.8s ( 9.0x, -----) he: 5.6s (27.9x, -----) ca: 4.1s (20.5x, -----) dr: 3.2s (16.1x, -----) ma: 0.8s ( 4.2x, -----) ffbench valgrind-old:0.20s no: 0.9s ( 4.5x, 2.2%) me: 2.8s (14.0x, -0.4%) ca: 1.8s ( 9.0x, -0.6%) he: 5.4s (27.1x, 2.9%) ca: 4.1s (20.6x, -0.7%) dr: 3.2s (16.2x, -0.6%) ma: 0.9s ( 4.3x, -1.2%) -- heap -- heap valgrind-new:0.07s no: 0.6s ( 8.1x, -----) me: 4.9s (69.4x, -----) ca: 6.0s (86.4x, -----) he: 6.5s (93.4x, -----) ca: 3.2s (46.0x, -----) dr: 4.2s (59.9x, -----) ma: 4.6s (66.0x, -----) heap valgrind-old:0.07s no: 0.6s ( 8.1x, 0.0%) me: 4.9s (69.7x, -0.4%) ca: 6.1s (87.6x, -1.3%) he: 6.6s (94.3x, -0.9%) ca: 3.1s (44.4x, 3.4%) dr: 4.2s (60.7x, -1.4%) ma: 4.6s (65.7x, 0.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.6s ( 6.2x, -----) me: 8.3s (83.4x, -----) ca: 6.8s (67.5x, -----) he: 7.6s (75.8x, -----) ca: 3.5s (35.0x, -----) dr: 4.8s (48.3x, -----) ma: 4.8s (48.3x, -----) heap_pdb4 valgrind-old:0.10s no: 0.6s ( 6.3x, -1.6%) me: 8.4s (83.6x, -0.2%) ca: 6.8s (68.0x, -0.7%) he: 7.6s (75.6x, 0.3%) ca: 3.5s (35.0x, 0.0%) dr: 4.8s (48.5x, -0.4%) ma: 4.7s (47.1x, 2.5%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.4s (138.0x, -----) ca: 1.0s (99.0x, -----) he: 1.1s (114.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.0s (102.0x, -----) ma: 1.0s (101.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, -4.0%) me: 1.4s (135.0x, 2.2%) ca: 1.0s (99.0x, 0.0%) he: 1.2s (122.0x, -7.0%) ca: 0.7s (70.0x, -6.1%) dr: 1.1s (109.0x, -6.9%) ma: 1.0s (101.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 2.0s (65.7x, -----) ca: 2.7s (90.0x, -----) he: 2.3s (77.0x, -----) ca: 1.0s (33.3x, -----) dr: 1.6s (52.0x, -----) ma: 1.5s (50.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 3.1%) me: 2.0s (65.7x, 0.0%) ca: 2.7s (90.0x, 0.0%) he: 2.3s (77.0x, 0.0%) ca: 1.0s (33.0x, 1.0%) dr: 1.5s (51.0x, 1.9%) ma: 1.5s (49.0x, 2.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.6s (132.5x, -----) ca: 1.9s (93.5x, -----) he: 6.5s (326.5x, -----) ca: 1.0s (49.0x, -----) dr: 1.0s (51.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.7s (133.0x, -0.4%) ca: 1.9s (93.5x, 0.0%) he: 6.7s (336.5x, -3.1%) ca: 1.0s (48.5x, 1.0%) dr: 1.0s (51.5x, 0.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.17s no: 1.4s ( 8.5x, -----) me: 9.2s (54.2x, -----) ca:11.2s (66.1x, -----) he: 9.8s (57.9x, -----) ca: 8.4s (49.3x, -----) dr: 8.2s (48.5x, -----) ma: 2.5s (14.9x, -----) tinycc valgrind-old:0.17s no: 1.4s ( 8.5x, 0.0%) me: 9.2s (54.3x, -0.2%) ca:11.3s (66.3x, -0.4%) he: 9.9s (58.1x, -0.4%) ca: 8.4s (49.2x, 0.2%) dr: 8.3s (48.6x, -0.2%) ma: 2.5s (14.6x, 2.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m12.473s user 33m17.222s sys 0m22.498s |
|
From: Tom H. <to...@co...> - 2015-01-28 04:05:49
|
valgrind revision: 14892 VEX revision: 3076 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2015-01-28 02:51:42 GMT Ended at 2015-01-28 04:05:37 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 == 698 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.10s no: 1.7s (16.7x, -----) me: 3.4s (33.8x, -----) ca:14.4s (144.1x, -----) he: 2.1s (20.9x, -----) ca: 3.9s (38.9x, -----) dr: 2.0s (20.3x, -----) ma: 2.0s (19.8x, -----) bigcode1 valgrind-old:0.10s no: 1.7s (16.9x, -1.2%) me: 3.5s (34.5x, -2.1%) ca:14.4s (143.9x, 0.1%) he: 2.1s (20.9x, 0.0%) ca: 3.9s (38.6x, 0.8%) dr: 2.0s (20.2x, 0.5%) ma: 2.0s (19.7x, 0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.5x, -----) me: 8.5s (77.6x, -----) ca:26.7s (242.4x, -----) he: 5.1s (46.2x, -----) ca: 7.4s (67.2x, -----) dr: 4.8s (43.3x, -----) ma: 4.6s (42.2x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (36.8x, -0.7%) me: 8.6s (78.5x, -1.1%) ca:25.5s (231.9x, 4.3%) he: 5.0s (45.7x, 1.0%) ca: 7.4s (66.9x, 0.4%) dr: 4.8s (43.2x, 0.2%) ma: 4.6s (42.0x, 0.4%) -- bz2 -- bz2 valgrind-new:0.52s no: 1.6s ( 3.1x, -----) me: 5.8s (11.1x, -----) ca:13.3s (25.5x, -----) he: 8.3s (16.1x, -----) ca:10.9s (21.1x, -----) dr:10.5s (20.2x, -----) ma: 1.6s ( 3.1x, -----) bz2 valgrind-old:0.52s no: 1.6s ( 3.1x, 0.6%) me: 5.7s (11.0x, 0.3%) ca:13.3s (25.6x, -0.2%) he: 8.4s (16.2x, -0.8%) ca:11.0s (21.2x, -0.5%) dr:10.5s (20.2x, -0.2%) ma: 1.6s ( 3.1x, -1.2%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.8s (17.1x, -----) ca: 5.6s (25.6x, -----) he: 2.8s (12.9x, -----) ca: 3.2s (14.5x, -----) dr: 2.6s (12.0x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.8s (17.1x, 0.3%) ca: 5.6s (25.6x, 0.2%) he: 2.9s (13.0x, -0.4%) ca: 3.2s (14.4x, 0.3%) dr: 2.7s (12.1x, -0.4%) ma: 1.1s ( 4.8x, 0.0%) -- ffbench -- ffbench valgrind-new:0.22s no: 0.9s ( 4.3x, -----) me: 3.0s (13.4x, -----) ca: 1.9s ( 8.6x, -----) he: 5.9s (26.6x, -----) ca: 4.2s (19.3x, -----) dr: 3.5s (16.1x, -----) ma: 0.9s ( 4.0x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.3x, 0.0%) me: 2.9s (13.3x, 0.7%) ca: 1.9s ( 8.5x, 1.6%) he: 5.5s (25.0x, 6.3%) ca: 4.2s (19.0x, 1.4%) dr: 3.4s (15.5x, 3.4%) ma: 0.9s ( 4.0x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.9x, -----) me: 5.1s (63.2x, -----) ca: 6.6s (82.8x, -----) he: 6.8s (85.5x, -----) ca: 3.3s (41.4x, -----) dr: 4.4s (55.4x, -----) ma: 4.7s (59.1x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.8x, 1.6%) me: 5.1s (63.2x, 0.0%) ca: 6.6s (82.6x, 0.2%) he: 6.8s (85.0x, 0.6%) ca: 3.3s (40.8x, 1.5%) dr: 4.5s (55.9x, -0.9%) ma: 4.7s (59.1x, 0.0%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.2x, -----) me: 8.6s (78.3x, -----) ca: 7.3s (66.4x, -----) he: 7.9s (72.2x, -----) ca: 3.6s (33.2x, -----) dr: 5.2s (47.3x, -----) ma: 5.0s (45.0x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.3x, -1.5%) me: 8.7s (78.8x, -0.7%) ca: 7.2s (65.9x, 0.7%) he: 8.0s (72.9x, -1.0%) ca: 3.6s (32.5x, 1.9%) dr: 5.0s (45.6x, 3.5%) ma: 4.8s (43.6x, 3.0%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.4s (138.0x, -----) ca: 1.0s (104.0x, -----) he: 1.2s (118.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.1s (109.0x, -----) ma: 1.0s (96.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 0.0%) me: 1.4s (138.0x, -0.0%) ca: 1.0s (104.0x, 0.0%) he: 1.2s (119.0x, -0.8%) ca: 0.7s (67.0x, -1.5%) dr: 1.1s (109.0x, 0.0%) ma: 1.0s (96.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.3x, -----) me: 1.9s (63.7x, -----) ca: 2.7s (89.7x, -----) he: 2.2s (72.7x, -----) ca: 0.9s (31.7x, -----) dr: 1.5s (50.3x, -----) ma: 1.4s (47.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 0.0%) me: 1.9s (63.3x, 0.5%) ca: 2.7s (88.7x, 1.1%) he: 2.2s (74.7x, -2.8%) ca: 1.0s (32.0x, -1.1%) dr: 1.5s (50.0x, 0.7%) ma: 1.4s (46.3x, 2.1%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (13.5x, -----) me: 2.5s (122.5x, -----) ca: 1.7s (85.5x, -----) he: 6.5s (325.0x, -----) ca: 0.9s (45.0x, -----) dr: 1.0s (50.0x, -----) ma: 0.3s (14.5x, -----) sarp valgrind-old:0.02s no: 0.3s (13.5x, 0.0%) me: 2.5s (123.0x, -0.4%) ca: 1.7s (85.0x, 0.6%) he: 6.5s (323.0x, 0.6%) ca: 0.9s (45.0x, 0.0%) dr: 1.0s (50.0x, 0.0%) ma: 0.3s (15.0x, -3.4%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.2x, -----) me: 8.7s (57.9x, -----) ca:10.8s (72.0x, -----) he: 9.3s (62.1x, -----) ca: 7.8s (51.7x, -----) dr: 7.8s (51.7x, -----) ma: 2.4s (15.9x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.3x, -1.4%) me: 8.7s (57.9x, 0.0%) ca:10.7s (71.4x, 0.8%) he: 9.4s (62.8x, -1.2%) ca: 7.9s (52.6x, -1.7%) dr: 7.9s (52.6x, -1.7%) ma: 2.4s (16.0x, -0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m40.103s user 33m36.310s sys 0m22.762s |
|
From: Tom H. <to...@co...> - 2015-01-28 03:56:37
|
valgrind revision: 14892 VEX revision: 3076 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 19 (Schrödingerâs Cat) ) Started at 2015-01-28 02:41:22 GMT Ended at 2015-01-28 03:56:21 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 == 698 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.1x, -----) me: 3.4s (31.3x, -----) ca:13.3s (121.1x, -----) he: 2.1s (18.8x, -----) ca: 3.8s (34.5x, -----) dr: 2.0s (18.5x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.8x, 1.8%) me: 3.4s (30.6x, 2.0%) ca:13.3s (120.5x, 0.5%) he: 2.1s (18.9x, -0.5%) ca: 3.8s (34.5x, -0.3%) dr: 2.0s (18.5x, 0.0%) ma: 2.0s (17.8x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.6x, -----) me: 8.6s (78.0x, -----) ca:24.9s (226.5x, -----) he: 5.0s (45.2x, -----) ca: 7.2s (65.4x, -----) dr: 4.7s (42.7x, -----) ma: 4.5s (41.2x, -----) bigcode2 valgrind-old:0.11s no: 4.0s (35.9x, -0.8%) me: 8.6s (78.3x, -0.3%) ca:25.1s (228.1x, -0.7%) he: 5.0s (45.5x, -0.6%) ca: 7.2s (65.2x, 0.3%) dr: 4.7s (42.6x, 0.2%) ma: 4.5s (41.4x, -0.4%) -- bz2 -- bz2 valgrind-new:0.49s no: 1.6s ( 3.2x, -----) me: 5.8s (11.8x, -----) ca:12.6s (25.8x, -----) he: 8.7s (17.7x, -----) ca:10.4s (21.1x, -----) dr:10.7s (21.8x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.49s no: 1.6s ( 3.2x, 0.0%) me: 5.7s (11.7x, 0.5%) ca:12.6s (25.8x, 0.0%) he: 8.7s (17.8x, -0.2%) ca:10.4s (21.2x, -0.4%) dr:10.7s (21.9x, -0.8%) ma: 1.6s ( 3.2x, 0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.5s (16.0x, -----) ca: 5.5s (25.0x, -----) he: 3.0s (13.6x, -----) ca: 3.0s (13.5x, -----) dr: 2.7s (12.3x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.5s (16.0x, -0.3%) ca: 5.5s (25.0x, 0.0%) he: 3.0s (13.5x, 1.0%) ca: 3.0s (13.6x, -0.3%) dr: 2.7s (12.3x, 0.0%) ma: 1.1s ( 4.9x, -0.9%) -- ffbench -- ffbench valgrind-new:0.21s no: 1.0s ( 4.6x, -----) me: 3.0s (14.2x, -----) ca: 1.9s ( 9.0x, -----) he: 6.2s (29.7x, -----) ca: 4.3s (20.7x, -----) dr: 3.4s (16.0x, -----) ma: 0.9s ( 4.3x, -----) ffbench valgrind-old:0.21s no: 0.9s ( 4.5x, 1.0%) me: 3.0s (14.2x, 0.3%) ca: 1.9s ( 9.1x, -1.1%) he: 5.3s (25.3x, 14.9%) ca: 4.3s (20.6x, 0.2%) dr: 3.4s (16.1x, -0.3%) ma: 0.9s ( 4.3x, -1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.2s (64.6x, -----) ca: 6.1s (75.8x, -----) he: 6.8s (84.5x, -----) ca: 3.2s (39.8x, -----) dr: 4.4s (55.1x, -----) ma: 4.7s (58.2x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.6x, 0.0%) me: 5.2s (64.4x, 0.4%) ca: 6.1s (76.5x, -1.0%) he: 6.8s (85.2x, -0.9%) ca: 3.2s (39.8x, 0.0%) dr: 4.4s (55.4x, -0.5%) ma: 4.7s (59.0x, -1.3%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.7x, -----) me: 9.4s (93.8x, -----) ca: 6.6s (65.9x, -----) he: 7.7s (77.4x, -----) ca: 3.6s (35.8x, -----) dr: 5.3s (52.6x, -----) ma: 4.9s (49.2x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.7x, 0.0%) me: 9.2s (92.4x, 1.5%) ca: 6.6s (66.1x, -0.3%) he: 7.8s (78.0x, -0.8%) ca: 3.6s (35.9x, -0.3%) dr: 5.3s (53.0x, -0.8%) ma: 5.0s (50.0x, -1.6%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (27.0x, -----) me: 1.5s (147.0x, -----) ca: 1.0s (99.0x, -----) he: 1.3s (128.0x, -----) ca: 0.7s (67.0x, -----) dr: 1.2s (118.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 3.7%) me: 1.5s (146.0x, 0.7%) ca: 1.0s (99.0x, 0.0%) he: 1.3s (130.0x, -1.6%) ca: 0.7s (66.0x, 1.5%) dr: 1.2s (116.0x, 1.7%) ma: 1.0s (104.0x, 1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.6s (54.7x, -----) ca: 2.5s (84.3x, -----) he: 2.2s (73.7x, -----) ca: 0.9s (30.7x, -----) dr: 1.5s (51.3x, -----) ma: 1.6s (52.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 3.1%) me: 1.6s (54.0x, 1.2%) ca: 2.5s (84.0x, 0.4%) he: 2.2s (74.0x, -0.5%) ca: 0.9s (31.0x, -1.1%) dr: 1.5s (51.0x, 0.6%) ma: 1.6s (52.3x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.3s (113.0x, -----) ca: 1.7s (85.5x, -----) he: 6.7s (336.5x, -----) ca: 0.9s (45.5x, -----) dr: 1.1s (54.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.3s (115.0x, -1.8%) ca: 1.7s (85.0x, 0.6%) he: 6.7s (335.0x, 0.4%) ca: 0.9s (45.5x, 0.0%) dr: 1.1s (54.0x, 0.9%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.6x, -----) me: 7.9s (49.2x, -----) ca:10.6s (66.0x, -----) he: 9.8s (61.0x, -----) ca: 7.7s (48.1x, -----) dr: 8.1s (50.6x, -----) ma: 2.4s (14.7x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.4x, 1.5%) me: 7.8s (48.6x, 1.1%) ca:10.6s (66.0x, 0.0%) he: 9.8s (61.6x, -0.9%) ca: 7.7s (47.9x, 0.5%) dr: 8.1s (50.6x, 0.1%) ma: 2.4s (14.8x, -0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m8.773s user 33m0.260s sys 0m24.067s |
|
From: Tom H. <to...@co...> - 2015-01-28 03:46:47
|
valgrind revision: 14892 VEX revision: 3076 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.17.8-300.fc21.x86_64 x86_64 Vendor version: Nightly build on bristol ( x86_64, Fedora 20 ) Started at 2015-01-28 02:31:18 GMT Ended at 2015-01-28 03:46:35 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 == 698 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.10s no: 1.6s (16.4x, -----) me: 3.4s (33.7x, -----) ca:13.3s (132.7x, -----) he: 2.1s (20.9x, -----) ca: 3.8s (37.9x, -----) dr: 2.0s (19.9x, -----) ma: 1.9s (19.1x, -----) bigcode1 valgrind-old:0.10s no: 1.6s (16.5x, -0.6%) me: 3.4s (33.7x, 0.0%) ca:13.2s (132.2x, 0.4%) he: 2.1s (20.7x, 1.0%) ca: 3.8s (37.7x, 0.5%) dr: 2.1s (20.6x, -3.5%) ma: 1.9s (19.4x, -1.6%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.5x, -----) me: 8.6s (78.4x, -----) ca:25.3s (229.7x, -----) he: 4.9s (44.7x, -----) ca: 7.1s (64.7x, -----) dr: 4.6s (41.8x, -----) ma: 4.5s (41.2x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.6x, -0.3%) me: 8.6s (77.7x, 0.8%) ca:25.6s (232.7x, -1.3%) he: 5.0s (45.0x, -0.6%) ca: 7.2s (65.0x, -0.4%) dr: 4.7s (42.8x, -2.4%) ma: 4.5s (41.2x, 0.0%) -- bz2 -- bz2 valgrind-new:0.49s no: 1.6s ( 3.2x, -----) me: 5.7s (11.6x, -----) ca:12.5s (25.6x, -----) he: 8.5s (17.3x, -----) ca:10.3s (21.0x, -----) dr:10.4s (21.2x, -----) ma: 1.6s ( 3.2x, -----) bz2 valgrind-old:0.49s no: 1.6s ( 3.3x, -3.8%) me: 5.7s (11.5x, 0.4%) ca:12.5s (25.5x, 0.2%) he: 8.5s (17.3x, -0.1%) ca:10.4s (21.1x, -0.6%) dr:10.5s (21.4x, -0.9%) ma: 1.6s ( 3.2x, -1.3%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.5s (15.8x, -----) ca: 5.5s (25.0x, -----) he: 2.6s (11.9x, -----) ca: 3.0s (13.6x, -----) dr: 2.5s (11.5x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 1.0%) me: 3.5s (15.7x, 0.6%) ca: 5.5s (25.0x, 0.0%) he: 2.6s (11.9x, -0.4%) ca: 3.0s (13.7x, -0.3%) dr: 2.5s (11.5x, 0.0%) ma: 1.1s ( 4.9x, -0.9%) -- ffbench -- ffbench valgrind-new:0.24s no: 1.0s ( 4.0x, -----) me: 3.0s (12.5x, -----) ca: 1.9s ( 7.8x, -----) he: 6.2s (26.0x, -----) ca: 4.5s (18.5x, -----) dr: 3.4s (14.2x, -----) ma: 0.9s ( 3.8x, -----) ffbench valgrind-old:0.24s no: 1.0s ( 4.0x, 0.0%) me: 3.0s (12.4x, 1.0%) ca: 1.9s ( 7.9x, -0.5%) he: 5.8s (24.0x, 7.8%) ca: 4.5s (18.7x, -0.9%) dr: 3.4s (14.2x, 0.6%) ma: 0.9s ( 3.8x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.5x, -----) me: 5.2s (64.4x, -----) ca: 6.0s (75.6x, -----) he: 6.7s (83.4x, -----) ca: 3.3s (41.2x, -----) dr: 4.6s (57.6x, -----) ma: 4.7s (58.8x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.5x, 0.0%) me: 5.1s (63.7x, 1.0%) ca: 6.0s (75.6x, 0.0%) he: 6.8s (84.6x, -1.5%) ca: 3.3s (40.9x, 0.9%) dr: 4.6s (57.9x, -0.4%) ma: 4.7s (59.2x, -0.9%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.5x, -----) me: 8.9s (88.8x, -----) ca: 6.6s (65.9x, -----) he: 7.7s (77.2x, -----) ca: 3.6s (35.7x, -----) dr: 5.2s (52.2x, -----) ma: 5.0s (49.9x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.7x, -3.1%) me: 8.9s (88.6x, 0.2%) ca: 6.6s (66.1x, -0.3%) he: 7.8s (77.6x, -0.5%) ca: 3.6s (35.6x, 0.3%) dr: 5.2s (51.6x, 1.1%) ma: 5.1s (50.6x, -1.4%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.4s (143.0x, -----) ca: 1.0s (100.0x, -----) he: 1.3s (126.0x, -----) ca: 0.7s (68.0x, -----) dr: 1.2s (116.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 3.8%) me: 1.4s (142.0x, 0.7%) ca: 1.0s (100.0x, 0.0%) he: 1.3s (126.0x, 0.0%) ca: 0.7s (68.0x, 0.0%) dr: 1.1s (115.0x, 0.9%) ma: 1.0s (103.0x, 1.9%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.6s (54.7x, -----) ca: 2.5s (84.0x, -----) he: 2.2s (74.0x, -----) ca: 1.0s (33.0x, -----) dr: 1.6s (52.3x, -----) ma: 1.5s (51.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 3.1%) me: 1.6s (54.0x, 1.2%) ca: 2.5s (84.0x, 0.0%) he: 2.2s (74.3x, -0.5%) ca: 1.0s (32.7x, 1.0%) dr: 1.5s (51.0x, 2.5%) ma: 1.5s (51.0x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.3s (116.5x, -----) ca: 1.8s (87.5x, -----) he: 6.8s (342.0x, -----) ca: 0.9s (45.5x, -----) dr: 1.1s (54.0x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.3s (116.0x, 0.4%) ca: 1.7s (87.0x, 0.6%) he: 6.8s (339.0x, 0.9%) ca: 0.9s (45.5x, 0.0%) dr: 1.1s (53.5x, 0.9%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.1x, -----) me: 7.9s (52.7x, -----) ca:10.6s (70.7x, -----) he: 9.8s (65.1x, -----) ca: 7.9s (52.8x, -----) dr: 8.1s (53.9x, -----) ma: 2.4s (16.1x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.0x, 1.5%) me: 7.8s (51.9x, 1.5%) ca:10.8s (71.9x, -1.8%) he: 9.9s (65.9x, -1.2%) ca: 7.8s (52.3x, 0.9%) dr: 8.1s (54.3x, -0.6%) ma: 2.4s (15.7x, 2.1%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m19.426s user 33m4.373s sys 0m24.132s |
|
From: <ma...@bu...> - 2015-01-28 02:22:48
|
valgrind revision: 14892 VEX revision: 3076 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.8 wheezy x86_64 ) Started at 2015-01-28 00:00:01 UTC Ended at 2015-01-28 02:22:34 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 == 686 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.9x, -----) me: 4.5s (32.0x, -----) ca:18.5s (132.0x, -----) he: 2.8s (20.1x, -----) ca: 5.0s (36.0x, -----) dr: 2.8s (20.3x, -----) ma: 2.6s (18.8x, -----) bigcode1 valgrind-old:0.14s no: 2.3s (16.1x, -1.3%) me: 4.8s (34.1x, -6.5%) ca:19.1s (136.6x, -3.5%) he: 2.7s (19.6x, 2.8%) ca: 5.2s (37.3x, -3.6%) dr: 2.7s (19.4x, 4.2%) ma: 2.8s (19.9x, -5.7%) -- bigcode2 -- bigcode2 valgrind-new:0.14s no: 5.5s (38.9x, -----) me:11.7s (83.4x, -----) ca:36.2s (258.4x, -----) he: 6.8s (48.8x, -----) ca: 9.7s (69.2x, -----) dr: 6.4s (45.9x, -----) ma: 6.5s (46.6x, -----) bigcode2 valgrind-old:0.14s no: 5.6s (39.8x, -2.2%) me:12.4s (88.8x, -6.4%) ca:36.7s (262.0x, -1.4%) he: 7.0s (49.8x, -2.0%) ca: 9.4s (67.5x, 2.5%) dr: 6.3s (44.9x, 2.3%) ma: 6.5s (46.5x, 0.2%) -- bz2 -- bz2 valgrind-new:0.68s no: 2.5s ( 3.7x, -----) me: 7.9s (11.6x, -----) ca:15.4s (22.6x, -----) he:10.8s (15.9x, -----) ca:13.2s (19.3x, -----) dr:14.5s (21.3x, -----) ma: 2.1s ( 3.1x, -----) bz2 valgrind-old:0.68s no: 2.1s ( 3.1x, 16.6%) me: 7.5s (11.1x, 4.1%) ca:15.9s (23.4x, -3.5%) he:11.0s (16.2x, -1.4%) ca:13.2s (19.4x, -0.3%) dr:14.4s (21.1x, 0.7%) ma: 2.2s ( 3.2x, -2.3%) -- fbench -- fbench valgrind-new:0.29s no: 1.4s ( 4.7x, -----) me: 4.7s (16.3x, -----) ca: 7.3s (25.3x, -----) he: 3.7s (12.9x, -----) ca: 3.9s (13.6x, -----) dr: 3.4s (11.9x, -----) ma: 1.5s ( 5.1x, -----) fbench valgrind-old:0.29s no: 1.3s ( 4.6x, 0.7%) me: 4.6s (16.0x, 2.1%) ca: 7.4s (25.4x, -0.7%) he: 3.8s (13.0x, -0.5%) ca: 4.0s (13.7x, -0.8%) dr: 3.3s (11.4x, 3.5%) ma: 1.3s ( 4.6x, 8.8%) -- ffbench -- ffbench valgrind-new:0.27s no: 1.2s ( 4.6x, -----) me: 3.9s (14.3x, -----) ca: 2.4s ( 8.9x, -----) he: 9.4s (35.0x, -----) ca: 5.3s (19.5x, -----) dr: 4.7s (17.4x, -----) ma: 1.2s ( 4.4x, -----) ffbench valgrind-old:0.27s no: 1.2s ( 4.6x, 0.0%) me: 3.8s (14.2x, 0.5%) ca: 2.4s ( 9.0x, -1.2%) he: 9.3s (34.5x, 1.4%) ca: 5.2s (19.4x, 0.4%) dr: 4.5s (16.5x, 5.1%) ma: 1.2s ( 4.4x, -0.8%) -- heap -- heap valgrind-new:0.11s no: 0.9s ( 8.4x, -----) me: 6.9s (62.5x, -----) ca: 8.2s (74.2x, -----) he: 9.2s (84.0x, -----) ca: 4.0s (36.5x, -----) dr: 5.8s (52.8x, -----) ma: 6.1s (55.3x, -----) heap valgrind-old:0.11s no: 0.9s ( 7.8x, 6.5%) me: 7.2s (65.2x, -4.4%) ca: 8.1s (73.2x, 1.3%) he: 9.1s (83.1x, 1.1%) ca: 4.1s (37.1x, -1.7%) dr: 5.8s (52.7x, 0.2%) ma: 6.7s (60.5x, -9.5%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.14s no: 0.9s ( 6.6x, -----) me:11.8s (84.4x, -----) ca: 9.1s (64.7x, -----) he:10.6s (75.6x, -----) ca: 4.5s (31.9x, -----) dr: 6.4s (45.4x, -----) ma: 6.5s (46.4x, -----) heap_pdb4 valgrind-old:0.14s no: 1.0s ( 7.3x, -9.7%) me:11.9s (85.2x, -1.0%) ca: 8.5s (60.9x, 6.0%) he:10.7s (76.7x, -1.4%) ca: 4.5s (32.1x, -0.7%) dr: 6.3s (45.3x, 0.3%) ma: 6.5s (46.4x, 0.0%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.4s (37.0x, -----) me: 1.9s (193.0x, -----) ca: 1.3s (132.0x, -----) he: 1.7s (171.0x, -----) ca: 0.9s (87.0x, -----) dr: 1.4s (144.0x, -----) ma: 1.3s (134.0x, -----) many-loss-records valgrind-old:0.01s no: 0.4s (36.0x, 2.7%) me: 1.9s (187.0x, 3.1%) ca: 1.3s (134.0x, -1.5%) he: 1.7s (169.0x, 1.2%) ca: 0.9s (87.0x, 0.0%) dr: 1.5s (146.0x, -1.4%) ma: 1.3s (134.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.4s (11.0x, -----) me: 2.5s (63.5x, -----) ca: 3.5s (87.0x, -----) he: 3.1s (78.5x, -----) ca: 1.3s (31.5x, -----) dr: 1.9s (48.0x, -----) ma: 2.0s (50.5x, -----) many-xpts valgrind-old:0.04s no: 0.4s (11.0x, 0.0%) me: 2.5s (63.0x, 0.8%) ca: 3.4s (85.0x, 2.3%) he: 3.2s (79.0x, -0.6%) ca: 1.4s (34.0x, -7.9%) dr: 2.0s (50.0x, -4.2%) ma: 2.0s (50.7x, -0.5%) -- sarp -- sarp valgrind-new:0.02s no: 0.4s (19.0x, -----) me: 3.2s (159.0x, -----) ca: 2.3s (113.5x, -----) he: 9.9s (494.5x, -----) ca: 1.2s (59.5x, -----) dr: 1.3s (64.0x, -----) ma: 0.4s (20.0x, -----) sarp valgrind-old:0.02s no: 0.4s (19.5x, -2.6%) me: 3.2s (161.5x, -1.6%) ca: 2.3s (114.0x, -0.4%) he: 9.9s (495.5x, -0.2%) ca: 1.2s (61.5x, -3.4%) dr: 1.3s (64.0x, 0.0%) ma: 0.4s (21.0x, -5.0%) -- tinycc -- tinycc valgrind-new:0.26s no: 1.9s ( 7.3x, -----) me:11.7s (44.9x, -----) ca:13.9s (53.4x, -----) he:13.6s (52.3x, -----) ca:10.3s (39.5x, -----) dr:10.2s (39.2x, -----) ma: 3.3s (12.8x, -----) tinycc valgrind-old:0.26s no: 1.9s ( 7.4x, -1.6%) me:11.2s (43.2x, 3.9%) ca:13.8s (53.1x, 0.6%) he:13.4s (51.6x, 1.4%) ca:10.4s (40.0x, -1.4%) dr:10.0s (38.3x, 2.2%) ma: 3.3s (12.7x, 0.9%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= 2738.38user 32.71system 1:18:34elapsed 58%CPU (0avgtext+0avgdata 500360maxresident)k 155328inputs+453384outputs (330major+11725429minor)pagefaults 0swaps Congratulations, all tests passed! |
|
From: <sv...@va...> - 2015-01-27 23:36:04
|
Author: sewardj
Date: Tue Jan 27 23:35:58 2015
New Revision: 3076
Log:
Change AMD64Instr_CMov64 so that the source can only be a register
instead of register-or-memory (an AMD64RM). This avoids duplicating
conditional load functionality introduced in r3075 via
AMD64Instr_CLoad and in practice has no effect on the quality of the
generated code.
Modified:
trunk/priv/host_amd64_defs.c
trunk/priv/host_amd64_defs.h
trunk/priv/host_amd64_isel.c
Modified: trunk/priv/host_amd64_defs.c
==============================================================================
--- trunk/priv/host_amd64_defs.c (original)
+++ trunk/priv/host_amd64_defs.c Tue Jan 27 23:35:58 2015
@@ -736,7 +736,7 @@
return i;
}
-AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode cond, AMD64RM* src, HReg dst ) {
+AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode cond, HReg src, HReg dst ) {
AMD64Instr* i = LibVEX_Alloc(sizeof(AMD64Instr));
i->tag = Ain_CMov64;
i->Ain.CMov64.cond = cond;
@@ -1128,7 +1128,7 @@
case Ain_CMov64:
vex_printf("cmov%s ", showAMD64CondCode(i->Ain.CMov64.cond));
- ppAMD64RM(i->Ain.CMov64.src);
+ ppHRegAMD64(i->Ain.CMov64.src);
vex_printf(",");
ppHRegAMD64(i->Ain.CMov64.dst);
return;
@@ -1481,7 +1481,7 @@
addRegUsage_AMD64AMode(u, i->Ain.XAssisted.amRIP);
return;
case Ain_CMov64:
- addRegUsage_AMD64RM(u, i->Ain.CMov64.src, HRmRead);
+ addHRegUse(u, HRmRead, i->Ain.CMov64.src);
addHRegUse(u, HRmModify, i->Ain.CMov64.dst);
return;
case Ain_CLoad:
@@ -1717,7 +1717,7 @@
mapRegs_AMD64AMode(m, i->Ain.XAssisted.amRIP);
return;
case Ain_CMov64:
- mapRegs_AMD64RM(m, i->Ain.CMov64.src);
+ mapReg(m, &i->Ain.CMov64.src);
mapReg(m, &i->Ain.CMov64.dst);
return;
case Ain_CLoad:
@@ -3000,21 +3000,11 @@
case Ain_CMov64:
vassert(i->Ain.CMov64.cond != Acc_ALWAYS);
- if (i->Ain.CMov64.src->tag == Arm_Reg) {
- *p++ = rexAMode_R(i->Ain.CMov64.dst, i->Ain.CMov64.src->Arm.Reg.reg);
- *p++ = 0x0F;
- *p++ = toUChar(0x40 + (0xF & i->Ain.CMov64.cond));
- p = doAMode_R(p, i->Ain.CMov64.dst, i->Ain.CMov64.src->Arm.Reg.reg);
- goto done;
- }
- if (i->Ain.CMov64.src->tag == Arm_Mem) {
- *p++ = rexAMode_M(i->Ain.CMov64.dst, i->Ain.CMov64.src->Arm.Mem.am);
- *p++ = 0x0F;
- *p++ = toUChar(0x40 + (0xF & i->Ain.CMov64.cond));
- p = doAMode_M(p, i->Ain.CMov64.dst, i->Ain.CMov64.src->Arm.Mem.am);
- goto done;
- }
- break;
+ *p++ = rexAMode_R(i->Ain.CMov64.dst, i->Ain.CMov64.src);
+ *p++ = 0x0F;
+ *p++ = toUChar(0x40 + (0xF & i->Ain.CMov64.cond));
+ p = doAMode_R(p, i->Ain.CMov64.dst, i->Ain.CMov64.src);
+ goto done;
case Ain_CLoad: {
vassert(i->Ain.CLoad.cond != Acc_ALWAYS);
Modified: trunk/priv/host_amd64_defs.h
==============================================================================
--- trunk/priv/host_amd64_defs.h (original)
+++ trunk/priv/host_amd64_defs.h Tue Jan 27 23:35:58 2015
@@ -367,7 +367,7 @@
Ain_XDirect, /* direct transfer to GA */
Ain_XIndir, /* indirect transfer to GA */
Ain_XAssisted, /* assisted transfer to GA */
- Ain_CMov64, /* conditional move */
+ Ain_CMov64, /* conditional move, 64-bit reg-reg only */
Ain_CLoad, /* cond. load to int reg, 32 bit ZX or 64 bit only */
Ain_MovxLQ, /* reg-reg move, zx-ing/sx-ing top half */
Ain_LoadEX, /* mov{s,z}{b,w,l}q from mem to reg */
@@ -503,7 +503,7 @@
be the bogus Acc_ALWAYS. */
struct {
AMD64CondCode cond;
- AMD64RM* src;
+ HReg src;
HReg dst;
} CMov64;
/* conditional load to int reg, 32 bit ZX or 64 bit only.
@@ -718,7 +718,7 @@
AMD64CondCode cond );
extern AMD64Instr* AMD64Instr_XAssisted ( HReg dstGA, AMD64AMode* amRIP,
AMD64CondCode cond, IRJumpKind jk );
-extern AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode, AMD64RM* src, HReg dst );
+extern AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode, HReg src, HReg dst );
extern AMD64Instr* AMD64Instr_CLoad ( AMD64CondCode cond, UChar szB,
AMD64AMode* addr, HReg dst );
extern AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst );
Modified: trunk/priv/host_amd64_isel.c
==============================================================================
--- trunk/priv/host_amd64_isel.c (original)
+++ trunk/priv/host_amd64_isel.c Tue Jan 27 23:35:58 2015
@@ -1242,7 +1242,7 @@
HReg src2 = iselIntExpr_R(env, e->Iex.Binop.arg2);
addInstr(env, mk_iMOVsd_RR(src1, dst));
addInstr(env, AMD64Instr_Alu32R(Aalu_CMP, AMD64RMI_Reg(src2), dst));
- addInstr(env, AMD64Instr_CMov64(Acc_B, AMD64RM_Reg(src2), dst));
+ addInstr(env, AMD64Instr_CMov64(Acc_B, src2, dst));
return dst;
}
@@ -1862,7 +1862,7 @@
if ((ty == Ity_I64 || ty == Ity_I32 || ty == Ity_I16 || ty == Ity_I8)
&& typeOfIRExpr(env->type_env,e->Iex.ITE.cond) == Ity_I1) {
HReg r1 = iselIntExpr_R(env, e->Iex.ITE.iftrue);
- AMD64RM* r0 = iselIntExpr_RM(env, e->Iex.ITE.iffalse);
+ HReg r0 = iselIntExpr_R(env, e->Iex.ITE.iffalse);
HReg dst = newVRegI(env);
addInstr(env, mk_iMOVsd_RR(r1,dst));
AMD64CondCode cc = iselCondCode(env, e->Iex.ITE.cond);
@@ -4650,8 +4650,7 @@
default: goto unhandled_cas;
}
addInstr(env, AMD64Instr_ACAS(am, sz));
- addInstr(env, AMD64Instr_CMov64(
- Acc_NZ, AMD64RM_Reg(hregAMD64_RAX()), rOld));
+ addInstr(env, AMD64Instr_CMov64(Acc_NZ, hregAMD64_RAX(), rOld));
return;
} else {
/* double CAS */
@@ -4689,12 +4688,8 @@
addInstr(env, mk_iMOVsd_RR(rDataHi, hregAMD64_RCX()));
addInstr(env, mk_iMOVsd_RR(rDataLo, hregAMD64_RBX()));
addInstr(env, AMD64Instr_DACAS(am, sz));
- addInstr(env,
- AMD64Instr_CMov64(
- Acc_NZ, AMD64RM_Reg(hregAMD64_RDX()), rOldHi));
- addInstr(env,
- AMD64Instr_CMov64(
- Acc_NZ, AMD64RM_Reg(hregAMD64_RAX()), rOldLo));
+ addInstr(env, AMD64Instr_CMov64(Acc_NZ, hregAMD64_RDX(), rOldHi));
+ addInstr(env, AMD64Instr_CMov64(Acc_NZ, hregAMD64_RAX(), rOldLo));
return;
}
unhandled_cas:
|
|
From: <sv...@va...> - 2015-01-27 23:17:09
|
Author: sewardj
Date: Tue Jan 27 23:17:02 2015
New Revision: 3075
Log:
AMD64 front end: translate AVX2 PMASKMOV load instructions (vector
conditional loads) using IR conditional load statements IRLoadG rather
than the previous rather ingenious hack.
AMD64 back end:
* Add instruction selection etc for 32- and 64-bit conditional loads (IRLoadG)
* Handle dirty helper calls that return a value and that are conditional. These
result from Memcheck's instrumentation of IRLoadGs.
No functional change. This is a cleanup as part of supporting AVX2
PMASKMOV loads and stores by using the existing IR facilities for
conditional loads and stores.
Modified:
trunk/priv/guest_amd64_toIR.c
trunk/priv/host_amd64_defs.c
trunk/priv/host_amd64_defs.h
trunk/priv/host_amd64_isel.c
Modified: trunk/priv/guest_amd64_toIR.c
==============================================================================
--- trunk/priv/guest_amd64_toIR.c (original)
+++ trunk/priv/guest_amd64_toIR.c Tue Jan 27 23:17:02 2015
@@ -27255,6 +27255,9 @@
}
delta += alen;
+ for (i = 0; i < sizeof(res)/sizeof(res[0]); i++)
+ res[i] = IRTemp_INVALID;
+
for (i = 0; i < 2 * (isYMM ? 2 : 1) * (ty == Ity_I32 ? 2 : 1); i++) {
res[i] = newTemp(ty);
cond = newTemp(Ity_I1);
@@ -27263,19 +27266,15 @@
ty == Ity_I32 ? getYMMRegLane32( rV, i )
: getYMMRegLane64( rV, i ),
mkU(ty, 0) ));
- assign( res[i],
- IRExpr_ITE(
- mkexpr(cond),
- loadLE(ty, IRExpr_ITE(
- mkexpr(cond),
- binop(Iop_Add64, mkexpr(addr),
- mkU64(i*(ty == Ity_I32 ? 4 : 8))),
- getIReg64(R_RSP)
- )
- ),
- mkU(ty, 0)
- )
- );
+ stmt(
+ IRStmt_LoadG(
+ Iend_LE,
+ ty == Ity_I32 ? ILGop_Ident32 : ILGop_Ident64,
+ res[i],
+ binop(Iop_Add64, mkexpr(addr), mkU64(i * (ty == Ity_I32 ? 4 : 8))),
+ ty == Ity_I32 ? mkU32(0) : mkU64(0),
+ mkexpr(cond)
+ ));
}
switch (ty) {
case Ity_I32:
Modified: trunk/priv/host_amd64_defs.c
==============================================================================
--- trunk/priv/host_amd64_defs.c (original)
+++ trunk/priv/host_amd64_defs.c Tue Jan 27 23:17:02 2015
@@ -745,6 +745,17 @@
vassert(cond != Acc_ALWAYS);
return i;
}
+AMD64Instr* AMD64Instr_CLoad ( AMD64CondCode cond, UChar szB,
+ AMD64AMode* addr, HReg dst ) {
+ AMD64Instr* i = LibVEX_Alloc(sizeof(AMD64Instr));
+ i->tag = Ain_CLoad;
+ i->Ain.CLoad.cond = cond;
+ i->Ain.CLoad.szB = szB;
+ i->Ain.CLoad.addr = addr;
+ i->Ain.CLoad.dst = dst;
+ vassert(cond != Acc_ALWAYS);
+ return i;
+}
AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst ) {
AMD64Instr* i = LibVEX_Alloc(sizeof(AMD64Instr));
i->tag = Ain_MovxLQ;
@@ -1121,6 +1132,16 @@
vex_printf(",");
ppHRegAMD64(i->Ain.CMov64.dst);
return;
+ case Ain_CLoad:
+ vex_printf("if (%%rflags.%s) { ",
+ showAMD64CondCode(i->Ain.CLoad.cond));
+ vex_printf("mov%c (", i->Ain.CLoad.szB == 4 ? 'l' : 'q');
+ ppAMD64AMode(i->Ain.CLoad.addr);
+ vex_printf("), ");
+ (i->Ain.CLoad.szB == 4 ? ppHRegAMD64_lo32 : ppHRegAMD64)
+ (i->Ain.CLoad.dst);
+ vex_printf(" }");
+ return;
case Ain_MovxLQ:
vex_printf("mov%clq ", i->Ain.MovxLQ.syned ? 's' : 'z');
ppHRegAMD64_lo32(i->Ain.MovxLQ.src);
@@ -1463,6 +1484,10 @@
addRegUsage_AMD64RM(u, i->Ain.CMov64.src, HRmRead);
addHRegUse(u, HRmModify, i->Ain.CMov64.dst);
return;
+ case Ain_CLoad:
+ addRegUsage_AMD64AMode(u, i->Ain.CLoad.addr);
+ addHRegUse(u, HRmModify, i->Ain.CLoad.dst);
+ return;
case Ain_MovxLQ:
addHRegUse(u, HRmRead, i->Ain.MovxLQ.src);
addHRegUse(u, HRmWrite, i->Ain.MovxLQ.dst);
@@ -1695,6 +1720,10 @@
mapRegs_AMD64RM(m, i->Ain.CMov64.src);
mapReg(m, &i->Ain.CMov64.dst);
return;
+ case Ain_CLoad:
+ mapRegs_AMD64AMode(m, i->Ain.CLoad.addr);
+ mapReg(m, &i->Ain.CLoad.dst);
+ return;
case Ain_MovxLQ:
mapReg(m, &i->Ain.MovxLQ.src);
mapReg(m, &i->Ain.MovxLQ.dst);
@@ -2671,43 +2700,113 @@
}
case Ain_Call: {
- if (i->Ain.Call.cond != Acc_ALWAYS
- && i->Ain.Call.rloc.pri != RLPri_None) {
- /* The call might not happen (it isn't unconditional) and it
- returns a result. In this case we will need to generate a
- control flow diamond to put 0x555..555 in the return
- register(s) in the case where the call doesn't happen. If
- this ever becomes necessary, maybe copy code from the ARM
- equivalent. Until that day, just give up. */
- goto bad;
- }
- /* As per detailed comment for Ain_Call in
- getRegUsage_AMD64Instr above, %r11 is used as an address
- temporary. */
- /* jump over the following two insns if the condition does not
- hold */
- Bool shortImm = fitsIn32Bits(i->Ain.Call.target);
- if (i->Ain.Call.cond != Acc_ALWAYS) {
- *p++ = toUChar(0x70 + (0xF & (i->Ain.Call.cond ^ 1)));
- *p++ = shortImm ? 10 : 13;
- /* 10 or 13 bytes in the next two insns */
- }
- if (shortImm) {
- /* 7 bytes: movl sign-extend(imm32), %r11 */
- *p++ = 0x49;
- *p++ = 0xC7;
- *p++ = 0xC3;
- p = emit32(p, (UInt)i->Ain.Call.target);
+ /* As per detailed comment for Ain_Call in getRegUsage_AMD64Instr
+ above, %r11 is used as an address temporary. */
+ /* If we don't need to do any fixup actions in the case that the
+ call doesn't happen, just do the simple thing and emit
+ straight-line code. This is usually the case. */
+ if (i->Ain.Call.cond == Acc_ALWAYS/*call always happens*/
+ || i->Ain.Call.rloc.pri == RLPri_None/*no fixup action*/) {
+ /* jump over the following two insns if the condition does
+ not hold */
+ Bool shortImm = fitsIn32Bits(i->Ain.Call.target);
+ if (i->Ain.Call.cond != Acc_ALWAYS) {
+ *p++ = toUChar(0x70 + (0xF & (i->Ain.Call.cond ^ 1)));
+ *p++ = shortImm ? 10 : 13;
+ /* 10 or 13 bytes in the next two insns */
+ }
+ if (shortImm) {
+ /* 7 bytes: movl sign-extend(imm32), %r11 */
+ *p++ = 0x49;
+ *p++ = 0xC7;
+ *p++ = 0xC3;
+ p = emit32(p, (UInt)i->Ain.Call.target);
+ } else {
+ /* 10 bytes: movabsq $target, %r11 */
+ *p++ = 0x49;
+ *p++ = 0xBB;
+ p = emit64(p, i->Ain.Call.target);
+ }
+ /* 3 bytes: call *%r11 */
+ *p++ = 0x41;
+ *p++ = 0xFF;
+ *p++ = 0xD3;
} else {
- /* 10 bytes: movabsq $target, %r11 */
+ Int delta;
+ /* Complex case. We have to generate an if-then-else diamond. */
+ // before:
+ // j{!cond} else:
+ // movabsq $target, %r11
+ // call* %r11
+ // preElse:
+ // jmp after:
+ // else:
+ // movabsq $0x5555555555555555, %rax // possibly
+ // movq %rax, %rdx // possibly
+ // after:
+
+ // before:
+ UChar* pBefore = p;
+
+ // j{!cond} else:
+ *p++ = toUChar(0x70 + (0xF & (i->Ain.Call.cond ^ 1)));
+ *p++ = 0; /* # of bytes to jump over; don't know how many yet. */
+
+ // movabsq $target, %r11
*p++ = 0x49;
*p++ = 0xBB;
p = emit64(p, i->Ain.Call.target);
+
+ // call* %r11
+ *p++ = 0x41;
+ *p++ = 0xFF;
+ *p++ = 0xD3;
+
+ // preElse:
+ UChar* pPreElse = p;
+
+ // jmp after:
+ *p++ = 0xEB;
+ *p++ = 0; /* # of bytes to jump over; don't know how many yet. */
+
+ // else:
+ UChar* pElse = p;
+
+ /* Do the 'else' actions */
+ switch (i->Ain.Call.rloc.pri) {
+ case RLPri_Int:
+ // movabsq $0x5555555555555555, %rax
+ *p++ = 0x48; *p++ = 0xB8; p = emit64(p, 0x5555555555555555ULL);
+ break;
+ case RLPri_2Int:
+ vassert(0); //ATC
+ // movabsq $0x5555555555555555, %rax
+ *p++ = 0x48; *p++ = 0xB8; p = emit64(p, 0x5555555555555555ULL);
+ // movq %rax, %rdx
+ *p++ = 0x48; *p++ = 0x89; *p++ = 0xC2;
+ case RLPri_None: case RLPri_INVALID: default:
+ vassert(0);
+ }
+
+ // after:
+ UChar* pAfter = p;
+
+ // Fix up the branch offsets. The +2s in the offset
+ // calculations are there because x86 requires conditional
+ // branches to have their offset stated relative to the
+ // instruction immediately following the branch insn. And in
+ // both cases the branch insns are 2 bytes long.
+
+ // First, the "j{!cond} else:" at pBefore.
+ delta = (Int)(Long)(pElse - (pBefore + 2));
+ vassert(delta >= 0 && delta < 100/*arbitrary*/);
+ *(pBefore+1) = (UChar)delta;
+
+ // And secondly, the "jmp after:" at pPreElse.
+ delta = (Int)(Long)(pAfter - (pPreElse + 2));
+ vassert(delta >= 0 && delta < 100/*arbitrary*/);
+ *(pPreElse+1) = (UChar)delta;
}
- /* 3 bytes: call *%r11 */
- *p++ = 0x41;
- *p++ = 0xFF;
- *p++ = 0xD3;
goto done;
}
@@ -2917,6 +3016,35 @@
}
break;
+ case Ain_CLoad: {
+ vassert(i->Ain.CLoad.cond != Acc_ALWAYS);
+
+ /* Only 32- or 64-bit variants are allowed. */
+ vassert(i->Ain.CLoad.szB == 4 || i->Ain.CLoad.szB == 8);
+
+ /* Use ptmp for backpatching conditional jumps. */
+ ptmp = NULL;
+
+ /* jmp fwds if !condition */
+ *p++ = toUChar(0x70 + (0xF & (i->Ain.CLoad.cond ^ 1)));
+ ptmp = p; /* fill in this bit later */
+ *p++ = 0; /* # of bytes to jump over; don't know how many yet. */
+
+ /* Now the load. Either a normal 64 bit load or a normal 32 bit
+ load, which, by the default zero-extension rule, zeroes out
+ the upper half of the destination, as required. */
+ rex = rexAMode_M(i->Ain.CLoad.dst, i->Ain.CLoad.addr);
+ *p++ = i->Ain.CLoad.szB == 4 ? clearWBit(rex) : rex;
+ *p++ = 0x8B;
+ p = doAMode_M(p, i->Ain.CLoad.dst, i->Ain.CLoad.addr);
+
+ /* Fix up the conditional branch */
+ Int delta = p - ptmp;
+ vassert(delta > 0 && delta < 40);
+ *ptmp = toUChar(delta-1);
+ goto done;
+ }
+
case Ain_MovxLQ:
/* No, _don't_ ask me why the sense of the args has to be
different in the S vs Z case. I don't know. */
Modified: trunk/priv/host_amd64_defs.h
==============================================================================
--- trunk/priv/host_amd64_defs.h (original)
+++ trunk/priv/host_amd64_defs.h Tue Jan 27 23:17:02 2015
@@ -368,6 +368,7 @@
Ain_XIndir, /* indirect transfer to GA */
Ain_XAssisted, /* assisted transfer to GA */
Ain_CMov64, /* conditional move */
+ Ain_CLoad, /* cond. load to int reg, 32 bit ZX or 64 bit only */
Ain_MovxLQ, /* reg-reg move, zx-ing/sx-ing top half */
Ain_LoadEX, /* mov{s,z}{b,w,l}q from mem to reg */
Ain_Store, /* store 32/16/8 bit value in memory */
@@ -505,6 +506,14 @@
AMD64RM* src;
HReg dst;
} CMov64;
+ /* conditional load to int reg, 32 bit ZX or 64 bit only.
+ cond may not be Acc_ALWAYS. */
+ struct {
+ AMD64CondCode cond;
+ UChar szB; /* 4 or 8 only */
+ AMD64AMode* addr;
+ HReg dst;
+ } CLoad;
/* reg-reg move, sx-ing/zx-ing top half */
struct {
Bool syned;
@@ -710,6 +719,8 @@
extern AMD64Instr* AMD64Instr_XAssisted ( HReg dstGA, AMD64AMode* amRIP,
AMD64CondCode cond, IRJumpKind jk );
extern AMD64Instr* AMD64Instr_CMov64 ( AMD64CondCode, AMD64RM* src, HReg dst );
+extern AMD64Instr* AMD64Instr_CLoad ( AMD64CondCode cond, UChar szB,
+ AMD64AMode* addr, HReg dst );
extern AMD64Instr* AMD64Instr_MovxLQ ( Bool syned, HReg src, HReg dst );
extern AMD64Instr* AMD64Instr_LoadEX ( UChar szSmall, Bool syned,
AMD64AMode* src, HReg dst );
Modified: trunk/priv/host_amd64_isel.c
==============================================================================
--- trunk/priv/host_amd64_isel.c (original)
+++ trunk/priv/host_amd64_isel.c Tue Jan 27 23:17:02 2015
@@ -4288,6 +4288,32 @@
switch (stmt->tag) {
+ /* --------- LOADG (guarded load) --------- */
+ case Ist_LoadG: {
+ IRLoadG* lg = stmt->Ist.LoadG.details;
+ if (lg->end != Iend_LE)
+ goto stmt_fail;
+
+ UChar szB = 0; /* invalid */
+ switch (lg->cvt) {
+ case ILGop_Ident32: szB = 4; break;
+ case ILGop_Ident64: szB = 8; break;
+ default: break;
+ }
+ if (szB == 0)
+ goto stmt_fail;
+
+ AMD64AMode* amAddr = iselIntExpr_AMode(env, lg->addr);
+ HReg rAlt = iselIntExpr_R(env, lg->alt);
+ HReg rDst = lookupIRTemp(env, lg->dst);
+ /* Get the alt value into the dst. We'll do a conditional load
+ which overwrites it -- or not -- with loaded data. */
+ addInstr(env, mk_iMOVsd_RR(rAlt, rDst));
+ AMD64CondCode cc = iselCondCode(env, lg->guard);
+ addInstr(env, AMD64Instr_CLoad(cc, szB, amAddr, rDst));
+ return;
+ }
+
/* --------- STORE --------- */
case Ist_Store: {
IRType tya = typeOfIRExpr(env->type_env, stmt->Ist.Store.addr);
|
|
From: <sv...@va...> - 2015-01-27 23:10:25
|
Author: sewardj
Date: Tue Jan 27 23:10:19 2015
New Revision: 14892
Log:
Handle new value ILGop_Ident64 in enum type IRLoadGOp. This tracks
vex r3074.
Modified:
trunk/memcheck/mc_translate.c
Modified: trunk/memcheck/mc_translate.c
==============================================================================
--- trunk/memcheck/mc_translate.c (original)
+++ trunk/memcheck/mc_translate.c Tue Jan 27 23:10:19 2015
@@ -6027,6 +6027,7 @@
IROp vwiden = Iop_INVALID;
IRType loadedTy = Ity_INVALID;
switch (lg->cvt) {
+ case ILGop_Ident64: loadedTy = Ity_I64; vwiden = Iop_INVALID; break;
case ILGop_Ident32: loadedTy = Ity_I32; vwiden = Iop_INVALID; break;
case ILGop_16Uto32: loadedTy = Ity_I16; vwiden = Iop_16Uto32; break;
case ILGop_16Sto32: loadedTy = Ity_I16; vwiden = Iop_16Sto32; break;
@@ -7261,6 +7262,7 @@
{
IRType loadedTy = Ity_INVALID;
switch (lg->cvt) {
+ case ILGop_Ident64: loadedTy = Ity_I64; break;
case ILGop_Ident32: loadedTy = Ity_I32; break;
case ILGop_16Uto32: loadedTy = Ity_I16; break;
case ILGop_16Sto32: loadedTy = Ity_I16; break;
|
|
From: <sv...@va...> - 2015-01-27 23:09:29
|
Author: sewardj
Date: Tue Jan 27 23:09:23 2015
New Revision: 3074
Log:
Add ILGop_Ident64 to enum type IRLoadGOp so as to make it
possible to represent 64 bit conditional loads in IR.
Modified:
trunk/priv/ir_defs.c
trunk/pub/libvex_ir.h
Modified: trunk/priv/ir_defs.c
==============================================================================
--- trunk/priv/ir_defs.c (original)
+++ trunk/priv/ir_defs.c Tue Jan 27 23:09:23 2015
@@ -1456,6 +1456,7 @@
{
switch (cvt) {
case ILGop_INVALID: vex_printf("ILGop_INVALID"); break;
+ case ILGop_Ident64: vex_printf("Ident64"); break;
case ILGop_Ident32: vex_printf("Ident32"); break;
case ILGop_16Uto32: vex_printf("16Uto32"); break;
case ILGop_16Sto32: vex_printf("16Sto32"); break;
@@ -3495,6 +3496,8 @@
/*OUT*/IRType* t_res, /*OUT*/IRType* t_arg )
{
switch (cvt) {
+ case ILGop_Ident64:
+ *t_res = Ity_I64; *t_arg = Ity_I64; break;
case ILGop_Ident32:
*t_res = Ity_I32; *t_arg = Ity_I32; break;
case ILGop_16Uto32: case ILGop_16Sto32:
Modified: trunk/pub/libvex_ir.h
==============================================================================
--- trunk/pub/libvex_ir.h (original)
+++ trunk/pub/libvex_ir.h Tue Jan 27 23:09:23 2015
@@ -2566,6 +2566,7 @@
typedef
enum {
ILGop_INVALID=0x1D00,
+ ILGop_Ident64, /* 64 bit, no conversion */
ILGop_Ident32, /* 32 bit, no conversion */
ILGop_16Uto32, /* 16 bit load, Z-widen to 32 */
ILGop_16Sto32, /* 16 bit load, S-widen to 32 */
|