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
(10) |
2
(1) |
|
3
(13) |
4
(13) |
5
(15) |
6
(12) |
7
(16) |
8
(18) |
9
(19) |
|
10
(13) |
11
(19) |
12
(11) |
13
(20) |
14
(20) |
15
(26) |
16
(12) |
|
17
(16) |
18
(19) |
19
(13) |
20
(24) |
21
(18) |
22
(23) |
23
(17) |
|
24
(19) |
25
(13) |
26
(22) |
27
(13) |
28
(17) |
29
(24) |
30
(14) |
|
31
(10) |
|
|
|
|
|
|
|
From: <sv...@va...> - 2014-08-04 08:11:41
|
Author: sewardj
Date: Mon Aug 4 08:11:33 2014
New Revision: 14231
Log:
Enable tests for: sq{r}dmulh (scalar vs elem, vector vs elem),
sqshl, uqshl, sqrshl, uqrshl (reg) (vector and scalar).
Modified:
trunk/none/tests/arm64/fp_and_simd.c
Modified: trunk/none/tests/arm64/fp_and_simd.c
==============================================================================
--- trunk/none/tests/arm64/fp_and_simd.c (original)
+++ trunk/none/tests/arm64/fp_and_simd.c Mon Aug 4 08:11:33 2014
@@ -4423,40 +4423,40 @@
// sqdmulh s_s_s[], h_h_h[]
// sqrdmulh s_s_s[], h_h_h[]
- if (0) test_sqdmulh_s_s_s1(TyS);
- if (0) test_sqdmulh_s_s_s3(TyS);
- if (0) test_sqdmulh_h_h_h2(TyH);
- if (0) test_sqdmulh_h_h_h7(TyH);
- if (0) test_sqrdmulh_s_s_s1(TyS);
- if (0) test_sqrdmulh_s_s_s3(TyS);
- if (0) test_sqrdmulh_h_h_h2(TyH);
- if (0) test_sqrdmulh_h_h_h7(TyH);
+ if (1) test_sqdmulh_s_s_s1(TyS);
+ if (1) test_sqdmulh_s_s_s3(TyS);
+ if (1) test_sqdmulh_h_h_h2(TyH);
+ if (1) test_sqdmulh_h_h_h7(TyH);
+ if (1) test_sqrdmulh_s_s_s1(TyS);
+ if (1) test_sqrdmulh_s_s_s3(TyS);
+ if (1) test_sqrdmulh_h_h_h2(TyH);
+ if (1) test_sqrdmulh_h_h_h7(TyH);
// sqdmulh 4s_4s_s[], 2s_2s_s[], 8h_8h_h[], 4h_4h_h[]
// sqrdmulh 4s_4s_s[], 2s_2s_s[], 8h_8h_h[], 4h_4h_h[]
- if (0) test_sqdmulh_4s_4s_s1(TyS);
- if (0) test_sqdmulh_4s_4s_s3(TyS);
- if (0) test_sqdmulh_2s_2s_s1(TyS);
- if (0) test_sqdmulh_2s_2s_s3(TyS);
- if (0) test_sqdmulh_8h_8h_h2(TyH);
- if (0) test_sqdmulh_8h_8h_h7(TyH);
- if (0) test_sqdmulh_4h_4h_h2(TyH);
- if (0) test_sqdmulh_4h_4h_h7(TyH);
- if (0) test_sqrdmulh_4s_4s_s1(TyS);
- if (0) test_sqrdmulh_4s_4s_s3(TyS);
- if (0) test_sqrdmulh_2s_2s_s1(TyS);
- if (0) test_sqrdmulh_2s_2s_s3(TyS);
- if (0) test_sqrdmulh_8h_8h_h2(TyH);
- if (0) test_sqrdmulh_8h_8h_h7(TyH);
- if (0) test_sqrdmulh_4h_4h_h2(TyH);
- if (0) test_sqrdmulh_4h_4h_h7(TyH);
+ if (1) test_sqdmulh_4s_4s_s1(TyS);
+ if (1) test_sqdmulh_4s_4s_s3(TyS);
+ if (1) test_sqdmulh_2s_2s_s1(TyS);
+ if (1) test_sqdmulh_2s_2s_s3(TyS);
+ if (1) test_sqdmulh_8h_8h_h2(TyH);
+ if (1) test_sqdmulh_8h_8h_h7(TyH);
+ if (1) test_sqdmulh_4h_4h_h2(TyH);
+ if (1) test_sqdmulh_4h_4h_h7(TyH);
+ if (1) test_sqrdmulh_4s_4s_s1(TyS);
+ if (1) test_sqrdmulh_4s_4s_s3(TyS);
+ if (1) test_sqrdmulh_2s_2s_s1(TyS);
+ if (1) test_sqrdmulh_2s_2s_s3(TyS);
+ if (1) test_sqrdmulh_8h_8h_h2(TyH);
+ if (1) test_sqrdmulh_8h_8h_h7(TyH);
+ if (1) test_sqrdmulh_4h_4h_h2(TyH);
+ if (1) test_sqrdmulh_4h_4h_h7(TyH);
// sqdmulh h,s
// sqrdmulh h,s
- if (0) test_sqdmulh_s_s_s(TyS);
- if (0) test_sqdmulh_h_h_h(TyH);
- if (0) test_sqrdmulh_s_s_s(TyS);
- if (0) test_sqrdmulh_h_h_h(TyH);
+ if (1) test_sqdmulh_s_s_s(TyS);
+ if (1) test_sqdmulh_h_h_h(TyH);
+ if (1) test_sqrdmulh_s_s_s(TyS);
+ if (1) test_sqrdmulh_h_h_h(TyH);
// sqdmulh 4s,2s,8h,4h
// sqrdmulh 4s,2s,8h,4h
@@ -4473,55 +4473,55 @@
// uqshl (reg) d,s,h,b
// sqrshl (reg) d,s,h,b
// uqrshl (reg) d,s,h,b
- if (0) test_sqshl_d_d_d(TyD);
- if (0) test_sqshl_s_s_s(TyS);
- if (0) test_sqshl_h_h_h(TyH);
- if (0) test_sqshl_b_b_b(TyB);
- if (0) test_uqshl_d_d_d(TyD);
- if (0) test_uqshl_s_s_s(TyS);
- if (0) test_uqshl_h_h_h(TyH);
- if (0) test_uqshl_b_b_b(TyB);
- if (0) test_sqrshl_d_d_d(TyD);
- if (0) test_sqrshl_s_s_s(TyS);
- if (0) test_sqrshl_h_h_h(TyH);
- if (0) test_sqrshl_b_b_b(TyB);
- if (0) test_uqrshl_d_d_d(TyD);
- if (0) test_uqrshl_s_s_s(TyS);
- if (0) test_uqrshl_h_h_h(TyH);
- if (0) test_uqrshl_b_b_b(TyB);
+ if (1) test_sqshl_d_d_d(TyD);
+ if (1) test_sqshl_s_s_s(TyS);
+ if (1) test_sqshl_h_h_h(TyH);
+ if (1) test_sqshl_b_b_b(TyB);
+ if (1) test_uqshl_d_d_d(TyD);
+ if (1) test_uqshl_s_s_s(TyS);
+ if (1) test_uqshl_h_h_h(TyH);
+ if (1) test_uqshl_b_b_b(TyB);
+ if (1) test_sqrshl_d_d_d(TyD);
+ if (1) test_sqrshl_s_s_s(TyS);
+ if (1) test_sqrshl_h_h_h(TyH);
+ if (1) test_sqrshl_b_b_b(TyB);
+ if (1) test_uqrshl_d_d_d(TyD);
+ if (1) test_uqrshl_s_s_s(TyS);
+ if (1) test_uqrshl_h_h_h(TyH);
+ if (1) test_uqrshl_b_b_b(TyB);
// sqshl (reg) 2d,4s,2s,8h,4h,16b,8b
// uqshl (reg) 2d,4s,2s,8h,4h,16b,8b
// sqrshl (reg) 2d,4s,2s,8h,4h,16b,8b
// uqrshl (reg) 2d,4s,2s,8h,4h,16b,8b
- if (0) test_sqshl_2d_2d_2d(TyD);
- if (0) test_sqshl_4s_4s_4s(TyS);
- if (0) test_sqshl_2s_2s_2s(TyS);
- if (0) test_sqshl_8h_8h_8h(TyH);
- if (0) test_sqshl_4h_4h_4h(TyH);
- if (0) test_sqshl_16b_16b_16b(TyB);
- if (0) test_sqshl_8b_8b_8b(TyB);
- if (0) test_uqshl_2d_2d_2d(TyD);
- if (0) test_uqshl_4s_4s_4s(TyS);
- if (0) test_uqshl_2s_2s_2s(TyS);
- if (0) test_uqshl_8h_8h_8h(TyH);
- if (0) test_uqshl_4h_4h_4h(TyH);
- if (0) test_uqshl_16b_16b_16b(TyB);
- if (0) test_uqshl_8b_8b_8b(TyB);
- if (0) test_sqrshl_2d_2d_2d(TyD);
- if (0) test_sqrshl_4s_4s_4s(TyS);
- if (0) test_sqrshl_2s_2s_2s(TyS);
- if (0) test_sqrshl_8h_8h_8h(TyH);
- if (0) test_sqrshl_4h_4h_4h(TyH);
- if (0) test_sqrshl_16b_16b_16b(TyB);
- if (0) test_sqrshl_8b_8b_8b(TyB);
- if (0) test_uqrshl_2d_2d_2d(TyD);
- if (0) test_uqrshl_4s_4s_4s(TyS);
- if (0) test_uqrshl_2s_2s_2s(TyS);
- if (0) test_uqrshl_8h_8h_8h(TyH);
- if (0) test_uqrshl_4h_4h_4h(TyH);
- if (0) test_uqrshl_16b_16b_16b(TyB);
- if (0) test_uqrshl_8b_8b_8b(TyB);
+ if (1) test_sqshl_2d_2d_2d(TyD);
+ if (1) test_sqshl_4s_4s_4s(TyS);
+ if (1) test_sqshl_2s_2s_2s(TyS);
+ if (1) test_sqshl_8h_8h_8h(TyH);
+ if (1) test_sqshl_4h_4h_4h(TyH);
+ if (1) test_sqshl_16b_16b_16b(TyB);
+ if (1) test_sqshl_8b_8b_8b(TyB);
+ if (1) test_uqshl_2d_2d_2d(TyD);
+ if (1) test_uqshl_4s_4s_4s(TyS);
+ if (1) test_uqshl_2s_2s_2s(TyS);
+ if (1) test_uqshl_8h_8h_8h(TyH);
+ if (1) test_uqshl_4h_4h_4h(TyH);
+ if (1) test_uqshl_16b_16b_16b(TyB);
+ if (1) test_uqshl_8b_8b_8b(TyB);
+ if (1) test_sqrshl_2d_2d_2d(TyD);
+ if (1) test_sqrshl_4s_4s_4s(TyS);
+ if (1) test_sqrshl_2s_2s_2s(TyS);
+ if (1) test_sqrshl_8h_8h_8h(TyH);
+ if (1) test_sqrshl_4h_4h_4h(TyH);
+ if (1) test_sqrshl_16b_16b_16b(TyB);
+ if (1) test_sqrshl_8b_8b_8b(TyB);
+ if (1) test_uqrshl_2d_2d_2d(TyD);
+ if (1) test_uqrshl_4s_4s_4s(TyS);
+ if (1) test_uqrshl_2s_2s_2s(TyS);
+ if (1) test_uqrshl_8h_8h_8h(TyH);
+ if (1) test_uqrshl_4h_4h_4h(TyH);
+ if (1) test_uqrshl_16b_16b_16b(TyB);
+ if (1) test_uqrshl_8b_8b_8b(TyB);
// sqrshrn s_d, h_s, b_h #imm
// uqrshrn s_d, h_s, b_h #imm
|
Author: sewardj
Date: Mon Aug 4 08:09:47 2014
New Revision: 2913
Log:
arm64: add support for: sqshl, uqshl, sqrshl, uqrshl (reg) (vector and scalar)
Modified:
trunk/priv/guest_arm64_toIR.c
trunk/priv/host_arm64_defs.c
trunk/priv/host_arm64_defs.h
trunk/priv/host_arm64_isel.c
trunk/priv/ir_defs.c
trunk/pub/libvex_ir.h
Modified: trunk/priv/guest_arm64_toIR.c
==============================================================================
--- trunk/priv/guest_arm64_toIR.c (original)
+++ trunk/priv/guest_arm64_toIR.c Mon Aug 4 08:09:47 2014
@@ -809,6 +809,42 @@
return ops[size];
}
+static IROp mkVecQANDUQSH ( UInt size )
+{
+ const IROp ops[4]
+ = { Iop_QandUQsh8x16, Iop_QandUQsh16x8,
+ Iop_QandUQsh32x4, Iop_QandUQsh64x2 };
+ vassert(size < 4);
+ return ops[size];
+}
+
+static IROp mkVecQANDSQSH ( UInt size )
+{
+ const IROp ops[4]
+ = { Iop_QandSQsh8x16, Iop_QandSQsh16x8,
+ Iop_QandSQsh32x4, Iop_QandSQsh64x2 };
+ vassert(size < 4);
+ return ops[size];
+}
+
+static IROp mkVecQANDUQRSH ( UInt size )
+{
+ const IROp ops[4]
+ = { Iop_QandUQRsh8x16, Iop_QandUQRsh16x8,
+ Iop_QandUQRsh32x4, Iop_QandUQRsh64x2 };
+ vassert(size < 4);
+ return ops[size];
+}
+
+static IROp mkVecQANDSQRSH ( UInt size )
+{
+ const IROp ops[4]
+ = { Iop_QandSQRsh8x16, Iop_QandSQRsh16x8,
+ Iop_QandSQRsh32x4, Iop_QandSQRsh64x2 };
+ vassert(size < 4);
+ return ops[size];
+}
+
/* Generate IR to create 'arg rotated right by imm', for sane values
of 'ty' and 'imm'. */
static IRTemp mathROR ( IRType ty, IRTemp arg, UInt imm )
@@ -7503,8 +7539,7 @@
const HChar* nm = isADD ? (isU ? "uqadd" : "sqadd")
: (isU ? "uqsub" : "sqsub");
const HChar arr = "bhsd"[size];
- DIP("%s %s.%c, %s.%c, %s.%c\n", nm,
- nameQReg128(dd), arr, nameQReg128(nn), arr, nameQReg128(mm), arr);
+ DIP("%s %c%u, %c%u, %c%u\n", nm, arr, dd, arr, nn, arr, mm);
return True;
}
@@ -7542,6 +7577,41 @@
return True;
}
+ if (opcode == BITS5(0,1,0,0,1) || opcode == BITS5(0,1,0,1,1)) {
+ /* -------- 0,xx,01001 SQSHL std4_std4_std4 -------- */
+ /* -------- 0,xx,01011 SQRSHL std4_std4_std4 -------- */
+ /* -------- 1,xx,01001 UQSHL std4_std4_std4 -------- */
+ /* -------- 1,xx,01011 UQRSHL std4_std4_std4 -------- */
+ Bool isU = bitU == 1;
+ Bool isR = opcode == BITS5(0,1,0,1,1);
+ IROp op = isR ? (isU ? mkVecQANDUQRSH(size) : mkVecQANDSQRSH(size))
+ : (isU ? mkVecQANDUQSH(size) : mkVecQANDSQSH(size));
+ /* This is a bit tricky. Since we're only interested in the lowest
+ lane of the result, we zero out all the rest in the operands, so
+ as to ensure that other lanes don't pollute the returned Q value.
+ This works because it means, for the lanes we don't care about, we
+ are shifting zero by zero, which can never saturate. */
+ IRTemp res256 = newTemp(Ity_V256);
+ IRTemp resSH = newTempV128();
+ IRTemp resQ = newTempV128();
+ IRTemp zero = newTempV128();
+ assign(
+ res256,
+ binop(op,
+ mkexpr(math_ZERO_ALL_EXCEPT_LOWEST_LANE(size, getQReg128(nn))),
+ mkexpr(math_ZERO_ALL_EXCEPT_LOWEST_LANE(size, getQReg128(mm)))));
+ assign(resSH, unop(Iop_V256toV128_0, mkexpr(res256)));
+ assign(resQ, unop(Iop_V256toV128_1, mkexpr(res256)));
+ assign(zero, mkV128(0x0000));
+ putQReg128(dd, mkexpr(resSH));
+ updateQCFLAGwithDifference(resQ, zero);
+ const HChar* nm = isR ? (isU ? "uqrshl" : "sqrshl")
+ : (isU ? "uqshl" : "sqshl");
+ const HChar arr = "bhsd"[size];
+ DIP("%s %c%u, %c%u, %c%u\n", nm, arr, dd, arr, nn, arr, mm);
+ return True;
+ }
+
if (size == X11 && opcode == BITS5(1,0,0,0,0)) {
/* -------- 0,11,10000 ADD d_d_d -------- */
/* -------- 1,11,10000 SUB d_d_d -------- */
@@ -8542,6 +8612,43 @@
return True;
}
+ if (opcode == BITS5(0,1,0,0,1) || opcode == BITS5(0,1,0,1,1)) {
+ /* -------- 0,xx,01001 SQSHL std7_std7_std7 -------- */
+ /* -------- 0,xx,01011 SQRSHL std7_std7_std7 -------- */
+ /* -------- 1,xx,01001 UQSHL std7_std7_std7 -------- */
+ /* -------- 1,xx,01011 UQRSHL std7_std7_std7 -------- */
+ if (bitQ == 0 && size == X11) return False; // implied 1d case
+ Bool isU = bitU == 1;
+ Bool isR = opcode == BITS5(0,1,0,1,1);
+ IROp op = isR ? (isU ? mkVecQANDUQRSH(size) : mkVecQANDSQRSH(size))
+ : (isU ? mkVecQANDUQSH(size) : mkVecQANDSQSH(size));
+ /* This is a bit tricky. If we're only interested in the lowest 64 bits
+ of the result (viz, bitQ == 0), then we must adjust the operands to
+ ensure that the upper part of the result, that we don't care about,
+ doesn't pollute the returned Q value. To do this, zero out the upper
+ operand halves beforehand. This works because it means, for the
+ lanes we don't care about, we are shifting zero by zero, which can
+ never saturate. */
+ IRTemp res256 = newTemp(Ity_V256);
+ IRTemp resSH = newTempV128();
+ IRTemp resQ = newTempV128();
+ IRTemp zero = newTempV128();
+ assign(res256, binop(op,
+ math_MAYBE_ZERO_HI64_fromE(bitQ, getQReg128(nn)),
+ math_MAYBE_ZERO_HI64_fromE(bitQ, getQReg128(mm))));
+ assign(resSH, unop(Iop_V256toV128_0, mkexpr(res256)));
+ assign(resQ, unop(Iop_V256toV128_1, mkexpr(res256)));
+ assign(zero, mkV128(0x0000));
+ putQReg128(dd, mkexpr(resSH));
+ updateQCFLAGwithDifference(resQ, zero);
+ const HChar* nm = isR ? (isU ? "uqrshl" : "sqrshl")
+ : (isU ? "uqshl" : "sqshl");
+ const HChar* arr = nameArr_Q_SZ(bitQ, size);
+ DIP("%s %s.%s, %s.%s, %s.%s\n", nm,
+ nameQReg128(dd), arr, nameQReg128(nn), arr, nameQReg128(mm), arr);
+ return True;
+ }
+
if (opcode == BITS5(0,1,1,0,0) || opcode == BITS5(0,1,1,0,1)) {
/* -------- 0,xx,01100 SMAX std7_std7_std7 -------- */
/* -------- 1,xx,01100 UMAX std7_std7_std7 -------- */
Modified: trunk/priv/host_arm64_defs.c
==============================================================================
--- trunk/priv/host_arm64_defs.c (original)
+++ trunk/priv/host_arm64_defs.c Mon Aug 4 08:09:47 2014
@@ -854,103 +854,119 @@
static void showARM64VecBinOp(/*OUT*/const HChar** nm,
/*OUT*/const HChar** ar, ARM64VecBinOp op ) {
switch (op) {
- case ARM64vecb_ADD64x2: *nm = "add "; *ar = "2d"; return;
- case ARM64vecb_ADD32x4: *nm = "add "; *ar = "4s"; return;
- case ARM64vecb_ADD16x8: *nm = "add "; *ar = "8h"; return;
- case ARM64vecb_ADD8x16: *nm = "add "; *ar = "16b"; return;
- case ARM64vecb_SUB64x2: *nm = "sub "; *ar = "2d"; return;
- case ARM64vecb_SUB32x4: *nm = "sub "; *ar = "4s"; return;
- case ARM64vecb_SUB16x8: *nm = "sub "; *ar = "8h"; return;
- case ARM64vecb_SUB8x16: *nm = "sub "; *ar = "16b"; return;
- case ARM64vecb_MUL32x4: *nm = "mul "; *ar = "4s"; return;
- case ARM64vecb_MUL16x8: *nm = "mul "; *ar = "8h"; return;
- case ARM64vecb_MUL8x16: *nm = "mul "; *ar = "16b"; return;
- case ARM64vecb_FADD64x2: *nm = "fadd "; *ar = "2d"; return;
- case ARM64vecb_FSUB64x2: *nm = "fsub "; *ar = "2d"; return;
- case ARM64vecb_FMUL64x2: *nm = "fmul "; *ar = "2d"; return;
- case ARM64vecb_FDIV64x2: *nm = "fdiv "; *ar = "2d"; return;
- case ARM64vecb_FADD32x4: *nm = "fadd "; *ar = "4s"; return;
- case ARM64vecb_FSUB32x4: *nm = "fsub "; *ar = "4s"; return;
- case ARM64vecb_FMUL32x4: *nm = "fmul "; *ar = "4s"; return;
- case ARM64vecb_FDIV32x4: *nm = "fdiv "; *ar = "4s"; return;
- case ARM64vecb_UMAX32x4: *nm = "umax "; *ar = "4s"; return;
- case ARM64vecb_UMAX16x8: *nm = "umax "; *ar = "8h"; return;
- case ARM64vecb_UMAX8x16: *nm = "umax "; *ar = "16b"; return;
- case ARM64vecb_UMIN32x4: *nm = "umin "; *ar = "4s"; return;
- case ARM64vecb_UMIN16x8: *nm = "umin "; *ar = "8h"; return;
- case ARM64vecb_UMIN8x16: *nm = "umin "; *ar = "16b"; return;
- case ARM64vecb_SMAX32x4: *nm = "smax "; *ar = "4s"; return;
- case ARM64vecb_SMAX16x8: *nm = "smax "; *ar = "8h"; return;
- case ARM64vecb_SMAX8x16: *nm = "smax "; *ar = "16b"; return;
- case ARM64vecb_SMIN32x4: *nm = "smin "; *ar = "4s"; return;
- case ARM64vecb_SMIN16x8: *nm = "smin "; *ar = "8h"; return;
- case ARM64vecb_SMIN8x16: *nm = "smin "; *ar = "16b"; return;
- case ARM64vecb_AND: *nm = "and "; *ar = "16b"; return;
- case ARM64vecb_ORR: *nm = "orr "; *ar = "16b"; return;
- case ARM64vecb_XOR: *nm = "eor "; *ar = "16b"; return;
- case ARM64vecb_CMEQ64x2: *nm = "cmeq "; *ar = "2d"; return;
- case ARM64vecb_CMEQ32x4: *nm = "cmeq "; *ar = "4s"; return;
- case ARM64vecb_CMEQ16x8: *nm = "cmeq "; *ar = "8h"; return;
- case ARM64vecb_CMEQ8x16: *nm = "cmeq "; *ar = "16b"; return;
- case ARM64vecb_CMHI64x2: *nm = "cmhi "; *ar = "2d"; return;
- case ARM64vecb_CMHI32x4: *nm = "cmhi "; *ar = "4s"; return;
- case ARM64vecb_CMHI16x8: *nm = "cmhi "; *ar = "8h"; return;
- case ARM64vecb_CMHI8x16: *nm = "cmhi "; *ar = "16b"; return;
- case ARM64vecb_CMGT64x2: *nm = "cmgt "; *ar = "2d"; return;
- case ARM64vecb_CMGT32x4: *nm = "cmgt "; *ar = "4s"; return;
- case ARM64vecb_CMGT16x8: *nm = "cmgt "; *ar = "8h"; return;
- case ARM64vecb_CMGT8x16: *nm = "cmgt "; *ar = "16b"; return;
- case ARM64vecb_FCMEQ64x2: *nm = "fcmeq"; *ar = "2d"; return;
- case ARM64vecb_FCMEQ32x4: *nm = "fcmeq"; *ar = "4s"; return;
- case ARM64vecb_FCMGE64x2: *nm = "fcmge"; *ar = "2d"; return;
- case ARM64vecb_FCMGE32x4: *nm = "fcmge"; *ar = "4s"; return;
- case ARM64vecb_FCMGT64x2: *nm = "fcmgt"; *ar = "2d"; return;
- case ARM64vecb_FCMGT32x4: *nm = "fcmgt"; *ar = "4s"; return;
- case ARM64vecb_TBL1: *nm = "tbl "; *ar = "16b"; return;
- case ARM64vecb_UZP164x2: *nm = "uzp1 "; *ar = "2d"; return;
- case ARM64vecb_UZP132x4: *nm = "uzp1 "; *ar = "4s"; return;
- case ARM64vecb_UZP116x8: *nm = "uzp1 "; *ar = "8h"; return;
- case ARM64vecb_UZP18x16: *nm = "uzp1 "; *ar = "16b"; return;
- case ARM64vecb_UZP264x2: *nm = "uzp2 "; *ar = "2d"; return;
- case ARM64vecb_UZP232x4: *nm = "uzp2 "; *ar = "4s"; return;
- case ARM64vecb_UZP216x8: *nm = "uzp2 "; *ar = "8h"; return;
- case ARM64vecb_UZP28x16: *nm = "uzp2 "; *ar = "16b"; return;
- case ARM64vecb_ZIP132x4: *nm = "zip1 "; *ar = "4s"; return;
- case ARM64vecb_ZIP116x8: *nm = "zip1 "; *ar = "8h"; return;
- case ARM64vecb_ZIP18x16: *nm = "zip1 "; *ar = "16b"; return;
- case ARM64vecb_ZIP232x4: *nm = "zip2 "; *ar = "4s"; return;
- case ARM64vecb_ZIP216x8: *nm = "zip2 "; *ar = "8h"; return;
- case ARM64vecb_ZIP28x16: *nm = "zip2 "; *ar = "16b"; return;
- case ARM64vecb_PMUL8x16: *nm = "pmul "; *ar = "16b"; return;
- case ARM64vecb_PMULL8x8: *nm = "pmull"; *ar = "8hbb"; return;
- case ARM64vecb_UMULL2DSS: *nm = "umull"; *ar = "2dss"; return;
- case ARM64vecb_UMULL4SHH: *nm = "umull"; *ar = "4shh"; return;
- case ARM64vecb_UMULL8HBB: *nm = "umull"; *ar = "8hbb"; return;
- case ARM64vecb_SMULL2DSS: *nm = "smull"; *ar = "2dss"; return;
- case ARM64vecb_SMULL4SHH: *nm = "smull"; *ar = "4shh"; return;
- case ARM64vecb_SMULL8HBB: *nm = "smull"; *ar = "8hbb"; return;
- case ARM64vecb_SQADD64x2: *nm = "sqadd"; *ar = "2d"; return;
- case ARM64vecb_SQADD32x4: *nm = "sqadd"; *ar = "4s"; return;
- case ARM64vecb_SQADD16x8: *nm = "sqadd"; *ar = "8h"; return;
- case ARM64vecb_SQADD8x16: *nm = "sqadd"; *ar = "16b"; return;
- case ARM64vecb_UQADD64x2: *nm = "uqadd"; *ar = "2d"; return;
- case ARM64vecb_UQADD32x4: *nm = "uqadd"; *ar = "4s"; return;
- case ARM64vecb_UQADD16x8: *nm = "uqadd"; *ar = "8h"; return;
- case ARM64vecb_UQADD8x16: *nm = "uqadd"; *ar = "16b"; return;
- case ARM64vecb_SQSUB64x2: *nm = "sqsub"; *ar = "2d"; return;
- case ARM64vecb_SQSUB32x4: *nm = "sqsub"; *ar = "4s"; return;
- case ARM64vecb_SQSUB16x8: *nm = "sqsub"; *ar = "8h"; return;
- case ARM64vecb_SQSUB8x16: *nm = "sqsub"; *ar = "16b"; return;
- case ARM64vecb_UQSUB64x2: *nm = "uqsub"; *ar = "2d"; return;
- case ARM64vecb_UQSUB32x4: *nm = "uqsub"; *ar = "4s"; return;
- case ARM64vecb_UQSUB16x8: *nm = "uqsub"; *ar = "8h"; return;
- case ARM64vecb_UQSUB8x16: *nm = "uqsub"; *ar = "16b"; return;
- case ARM64vecb_SQDMULL2DSS: *nm = "sqdmull"; *ar = "2dss"; return;
- case ARM64vecb_SQDMULL4SHH: *nm = "sqdmull"; *ar = "4shh"; return;
- case ARM64vecb_SQDMULH32x4: *nm = "sqdmulh"; *ar = "4s"; return;
- case ARM64vecb_SQDMULH16x8: *nm = "sqdmulh"; *ar = "8h"; return;
- case ARM64vecb_SQRDMULH32x4: *nm = "sqrdmulh"; *ar = "4s"; return;
- case ARM64vecb_SQRDMULH16x8: *nm = "sqrdmulh"; *ar = "8h"; return;
+ case ARM64vecb_ADD64x2: *nm = "add "; *ar = "2d"; return;
+ case ARM64vecb_ADD32x4: *nm = "add "; *ar = "4s"; return;
+ case ARM64vecb_ADD16x8: *nm = "add "; *ar = "8h"; return;
+ case ARM64vecb_ADD8x16: *nm = "add "; *ar = "16b"; return;
+ case ARM64vecb_SUB64x2: *nm = "sub "; *ar = "2d"; return;
+ case ARM64vecb_SUB32x4: *nm = "sub "; *ar = "4s"; return;
+ case ARM64vecb_SUB16x8: *nm = "sub "; *ar = "8h"; return;
+ case ARM64vecb_SUB8x16: *nm = "sub "; *ar = "16b"; return;
+ case ARM64vecb_MUL32x4: *nm = "mul "; *ar = "4s"; return;
+ case ARM64vecb_MUL16x8: *nm = "mul "; *ar = "8h"; return;
+ case ARM64vecb_MUL8x16: *nm = "mul "; *ar = "16b"; return;
+ case ARM64vecb_FADD64x2: *nm = "fadd "; *ar = "2d"; return;
+ case ARM64vecb_FSUB64x2: *nm = "fsub "; *ar = "2d"; return;
+ case ARM64vecb_FMUL64x2: *nm = "fmul "; *ar = "2d"; return;
+ case ARM64vecb_FDIV64x2: *nm = "fdiv "; *ar = "2d"; return;
+ case ARM64vecb_FADD32x4: *nm = "fadd "; *ar = "4s"; return;
+ case ARM64vecb_FSUB32x4: *nm = "fsub "; *ar = "4s"; return;
+ case ARM64vecb_FMUL32x4: *nm = "fmul "; *ar = "4s"; return;
+ case ARM64vecb_FDIV32x4: *nm = "fdiv "; *ar = "4s"; return;
+ case ARM64vecb_UMAX32x4: *nm = "umax "; *ar = "4s"; return;
+ case ARM64vecb_UMAX16x8: *nm = "umax "; *ar = "8h"; return;
+ case ARM64vecb_UMAX8x16: *nm = "umax "; *ar = "16b"; return;
+ case ARM64vecb_UMIN32x4: *nm = "umin "; *ar = "4s"; return;
+ case ARM64vecb_UMIN16x8: *nm = "umin "; *ar = "8h"; return;
+ case ARM64vecb_UMIN8x16: *nm = "umin "; *ar = "16b"; return;
+ case ARM64vecb_SMAX32x4: *nm = "smax "; *ar = "4s"; return;
+ case ARM64vecb_SMAX16x8: *nm = "smax "; *ar = "8h"; return;
+ case ARM64vecb_SMAX8x16: *nm = "smax "; *ar = "16b"; return;
+ case ARM64vecb_SMIN32x4: *nm = "smin "; *ar = "4s"; return;
+ case ARM64vecb_SMIN16x8: *nm = "smin "; *ar = "8h"; return;
+ case ARM64vecb_SMIN8x16: *nm = "smin "; *ar = "16b"; return;
+ case ARM64vecb_AND: *nm = "and "; *ar = "16b"; return;
+ case ARM64vecb_ORR: *nm = "orr "; *ar = "16b"; return;
+ case ARM64vecb_XOR: *nm = "eor "; *ar = "16b"; return;
+ case ARM64vecb_CMEQ64x2: *nm = "cmeq "; *ar = "2d"; return;
+ case ARM64vecb_CMEQ32x4: *nm = "cmeq "; *ar = "4s"; return;
+ case ARM64vecb_CMEQ16x8: *nm = "cmeq "; *ar = "8h"; return;
+ case ARM64vecb_CMEQ8x16: *nm = "cmeq "; *ar = "16b"; return;
+ case ARM64vecb_CMHI64x2: *nm = "cmhi "; *ar = "2d"; return;
+ case ARM64vecb_CMHI32x4: *nm = "cmhi "; *ar = "4s"; return;
+ case ARM64vecb_CMHI16x8: *nm = "cmhi "; *ar = "8h"; return;
+ case ARM64vecb_CMHI8x16: *nm = "cmhi "; *ar = "16b"; return;
+ case ARM64vecb_CMGT64x2: *nm = "cmgt "; *ar = "2d"; return;
+ case ARM64vecb_CMGT32x4: *nm = "cmgt "; *ar = "4s"; return;
+ case ARM64vecb_CMGT16x8: *nm = "cmgt "; *ar = "8h"; return;
+ case ARM64vecb_CMGT8x16: *nm = "cmgt "; *ar = "16b"; return;
+ case ARM64vecb_FCMEQ64x2: *nm = "fcmeq "; *ar = "2d"; return;
+ case ARM64vecb_FCMEQ32x4: *nm = "fcmeq "; *ar = "4s"; return;
+ case ARM64vecb_FCMGE64x2: *nm = "fcmge "; *ar = "2d"; return;
+ case ARM64vecb_FCMGE32x4: *nm = "fcmge "; *ar = "4s"; return;
+ case ARM64vecb_FCMGT64x2: *nm = "fcmgt "; *ar = "2d"; return;
+ case ARM64vecb_FCMGT32x4: *nm = "fcmgt "; *ar = "4s"; return;
+ case ARM64vecb_TBL1: *nm = "tbl "; *ar = "16b"; return;
+ case ARM64vecb_UZP164x2: *nm = "uzp1 "; *ar = "2d"; return;
+ case ARM64vecb_UZP132x4: *nm = "uzp1 "; *ar = "4s"; return;
+ case ARM64vecb_UZP116x8: *nm = "uzp1 "; *ar = "8h"; return;
+ case ARM64vecb_UZP18x16: *nm = "uzp1 "; *ar = "16b"; return;
+ case ARM64vecb_UZP264x2: *nm = "uzp2 "; *ar = "2d"; return;
+ case ARM64vecb_UZP232x4: *nm = "uzp2 "; *ar = "4s"; return;
+ case ARM64vecb_UZP216x8: *nm = "uzp2 "; *ar = "8h"; return;
+ case ARM64vecb_UZP28x16: *nm = "uzp2 "; *ar = "16b"; return;
+ case ARM64vecb_ZIP132x4: *nm = "zip1 "; *ar = "4s"; return;
+ case ARM64vecb_ZIP116x8: *nm = "zip1 "; *ar = "8h"; return;
+ case ARM64vecb_ZIP18x16: *nm = "zip1 "; *ar = "16b"; return;
+ case ARM64vecb_ZIP232x4: *nm = "zip2 "; *ar = "4s"; return;
+ case ARM64vecb_ZIP216x8: *nm = "zip2 "; *ar = "8h"; return;
+ case ARM64vecb_ZIP28x16: *nm = "zip2 "; *ar = "16b"; return;
+ case ARM64vecb_PMUL8x16: *nm = "pmul "; *ar = "16b"; return;
+ case ARM64vecb_PMULL8x8: *nm = "pmull "; *ar = "8hbb"; return;
+ case ARM64vecb_UMULL2DSS: *nm = "umull "; *ar = "2dss"; return;
+ case ARM64vecb_UMULL4SHH: *nm = "umull "; *ar = "4shh"; return;
+ case ARM64vecb_UMULL8HBB: *nm = "umull "; *ar = "8hbb"; return;
+ case ARM64vecb_SMULL2DSS: *nm = "smull "; *ar = "2dss"; return;
+ case ARM64vecb_SMULL4SHH: *nm = "smull "; *ar = "4shh"; return;
+ case ARM64vecb_SMULL8HBB: *nm = "smull "; *ar = "8hbb"; return;
+ case ARM64vecb_SQADD64x2: *nm = "sqadd "; *ar = "2d"; return;
+ case ARM64vecb_SQADD32x4: *nm = "sqadd "; *ar = "4s"; return;
+ case ARM64vecb_SQADD16x8: *nm = "sqadd "; *ar = "8h"; return;
+ case ARM64vecb_SQADD8x16: *nm = "sqadd "; *ar = "16b"; return;
+ case ARM64vecb_UQADD64x2: *nm = "uqadd "; *ar = "2d"; return;
+ case ARM64vecb_UQADD32x4: *nm = "uqadd "; *ar = "4s"; return;
+ case ARM64vecb_UQADD16x8: *nm = "uqadd "; *ar = "8h"; return;
+ case ARM64vecb_UQADD8x16: *nm = "uqadd "; *ar = "16b"; return;
+ case ARM64vecb_SQSUB64x2: *nm = "sqsub "; *ar = "2d"; return;
+ case ARM64vecb_SQSUB32x4: *nm = "sqsub "; *ar = "4s"; return;
+ case ARM64vecb_SQSUB16x8: *nm = "sqsub "; *ar = "8h"; return;
+ case ARM64vecb_SQSUB8x16: *nm = "sqsub "; *ar = "16b"; return;
+ case ARM64vecb_UQSUB64x2: *nm = "uqsub "; *ar = "2d"; return;
+ case ARM64vecb_UQSUB32x4: *nm = "uqsub "; *ar = "4s"; return;
+ case ARM64vecb_UQSUB16x8: *nm = "uqsub "; *ar = "8h"; return;
+ case ARM64vecb_UQSUB8x16: *nm = "uqsub "; *ar = "16b"; return;
+ case ARM64vecb_SQDMULL2DSS: *nm = "sqdmull"; *ar = "2dss"; return;
+ case ARM64vecb_SQDMULL4SHH: *nm = "sqdmull"; *ar = "4shh"; return;
+ case ARM64vecb_SQDMULH32x4: *nm = "sqdmulh"; *ar = "4s"; return;
+ case ARM64vecb_SQDMULH16x8: *nm = "sqdmulh"; *ar = "8h"; return;
+ case ARM64vecb_SQRDMULH32x4: *nm = "sqrdmulh"; *ar = "4s"; return;
+ case ARM64vecb_SQRDMULH16x8: *nm = "sqrdmulh"; *ar = "8h"; return;
+ case ARM64vecb_SQSHL64x2: *nm = "sqshl "; *ar = "2d"; return;
+ case ARM64vecb_SQSHL32x4: *nm = "sqshl "; *ar = "4s"; return;
+ case ARM64vecb_SQSHL16x8: *nm = "sqshl "; *ar = "8h"; return;
+ case ARM64vecb_SQSHL8x16: *nm = "sqshl "; *ar = "16b"; return;
+ case ARM64vecb_UQSHL64x2: *nm = "uqshl "; *ar = "2d"; return;
+ case ARM64vecb_UQSHL32x4: *nm = "uqshl "; *ar = "4s"; return;
+ case ARM64vecb_UQSHL16x8: *nm = "uqshl "; *ar = "8h"; return;
+ case ARM64vecb_UQSHL8x16: *nm = "uqshl "; *ar = "16b"; return;
+ case ARM64vecb_SQRSHL64x2: *nm = "sqrshl"; *ar = "2d"; return;
+ case ARM64vecb_SQRSHL32x4: *nm = "sqrshl"; *ar = "4s"; return;
+ case ARM64vecb_SQRSHL16x8: *nm = "sqrshl"; *ar = "8h"; return;
+ case ARM64vecb_SQRSHL8x16: *nm = "sqrshl"; *ar = "16b"; return;
+ case ARM64vecb_UQRSHL64x2: *nm = "uqrshl"; *ar = "2d"; return;
+ case ARM64vecb_UQRSHL32x4: *nm = "uqrshl"; *ar = "4s"; return;
+ case ARM64vecb_UQRSHL16x8: *nm = "uqrshl"; *ar = "8h"; return;
+ case ARM64vecb_UQRSHL8x16: *nm = "uqrshl"; *ar = "16b"; return;
default: vpanic("showARM64VecBinOp");
}
}
@@ -1675,6 +1691,13 @@
i->ARM64in.FPCR.iReg = iReg;
return i;
}
+ARM64Instr* ARM64Instr_FPSR ( Bool toFPSR, HReg iReg ) {
+ ARM64Instr* i = LibVEX_Alloc(sizeof(ARM64Instr));
+ i->tag = ARM64in_FPSR;
+ i->ARM64in.FPSR.toFPSR = toFPSR;
+ i->ARM64in.FPSR.iReg = iReg;
+ return i;
+}
ARM64Instr* ARM64Instr_VBinV ( ARM64VecBinOp op,
HReg dst, HReg argL, HReg argR ) {
ARM64Instr* i = LibVEX_Alloc(sizeof(ARM64Instr));
@@ -1868,6 +1891,13 @@
i->ARM64in.VDfromX.rX = rX;
return i;
}
+ARM64Instr* ARM64Instr_VQfromX ( HReg rQ, HReg rXlo ) {
+ ARM64Instr* i = LibVEX_Alloc(sizeof(ARM64Instr));
+ i->tag = ARM64in_VQfromX;
+ i->ARM64in.VQfromX.rQ = rQ;
+ i->ARM64in.VQfromX.rXlo = rXlo;
+ return i;
+}
ARM64Instr* ARM64Instr_VQfromXX ( HReg rQ, HReg rXhi, HReg rXlo ) {
ARM64Instr* i = LibVEX_Alloc(sizeof(ARM64Instr));
i->tag = ARM64in_VQfromXX;
@@ -2340,11 +2370,21 @@
vex_printf(", fpcr");
}
return;
+ case ARM64in_FPSR:
+ if (i->ARM64in.FPSR.toFPSR) {
+ vex_printf("msr fpsr, ");
+ ppHRegARM64(i->ARM64in.FPSR.iReg);
+ } else {
+ vex_printf("mrs ");
+ ppHRegARM64(i->ARM64in.FPSR.iReg);
+ vex_printf(", fpsr");
+ }
+ return;
case ARM64in_VBinV: {
const HChar* nm = "??";
const HChar* ar = "??";
showARM64VecBinOp(&nm, &ar, i->ARM64in.VBinV.op);
- vex_printf("%s ", nm);
+ vex_printf("%s ", nm);
ppHRegARM64(i->ARM64in.VBinV.dst);
vex_printf(".%s, ", ar);
ppHRegARM64(i->ARM64in.VBinV.argL);
@@ -2557,6 +2597,12 @@
vex_printf(", ");
ppHRegARM64(i->ARM64in.VDfromX.rX);
return;
+ case ARM64in_VQfromX:
+ vex_printf("fmov ");
+ ppHRegARM64(i->ARM64in.VQfromX.rQ);
+ vex_printf(".d[0], ");
+ ppHRegARM64(i->ARM64in.VQfromX.rXlo);
+ return;
case ARM64in_VQfromXX:
vex_printf("qFromXX ");
ppHRegARM64(i->ARM64in.VQfromXX.rQ);
@@ -2862,6 +2908,12 @@
else
addHRegUse(u, HRmWrite, i->ARM64in.FPCR.iReg);
return;
+ case ARM64in_FPSR:
+ if (i->ARM64in.FPSR.toFPSR)
+ addHRegUse(u, HRmRead, i->ARM64in.FPSR.iReg);
+ else
+ addHRegUse(u, HRmWrite, i->ARM64in.FPSR.iReg);
+ return;
case ARM64in_VBinV:
addHRegUse(u, HRmWrite, i->ARM64in.VBinV.dst);
addHRegUse(u, HRmRead, i->ARM64in.VBinV.argL);
@@ -2963,6 +3015,10 @@
addHRegUse(u, HRmWrite, i->ARM64in.VDfromX.rD);
addHRegUse(u, HRmRead, i->ARM64in.VDfromX.rX);
return;
+ case ARM64in_VQfromX:
+ addHRegUse(u, HRmWrite, i->ARM64in.VQfromX.rQ);
+ addHRegUse(u, HRmRead, i->ARM64in.VQfromX.rXlo);
+ return;
case ARM64in_VQfromXX:
addHRegUse(u, HRmWrite, i->ARM64in.VQfromXX.rQ);
addHRegUse(u, HRmRead, i->ARM64in.VQfromXX.rXhi);
@@ -3160,6 +3216,9 @@
case ARM64in_FPCR:
i->ARM64in.FPCR.iReg = lookupHRegRemap(m, i->ARM64in.FPCR.iReg);
return;
+ case ARM64in_FPSR:
+ i->ARM64in.FPSR.iReg = lookupHRegRemap(m, i->ARM64in.FPSR.iReg);
+ return;
case ARM64in_VBinV:
i->ARM64in.VBinV.dst = lookupHRegRemap(m, i->ARM64in.VBinV.dst);
i->ARM64in.VBinV.argL = lookupHRegRemap(m, i->ARM64in.VBinV.argL);
@@ -3247,6 +3306,12 @@
i->ARM64in.VDfromX.rX
= lookupHRegRemap(m, i->ARM64in.VDfromX.rX);
return;
+ case ARM64in_VQfromX:
+ i->ARM64in.VQfromX.rQ
+ = lookupHRegRemap(m, i->ARM64in.VQfromX.rQ);
+ i->ARM64in.VQfromX.rXlo
+ = lookupHRegRemap(m, i->ARM64in.VQfromX.rXlo);
+ return;
case ARM64in_VQfromXX:
i->ARM64in.VQfromXX.rQ
= lookupHRegRemap(m, i->ARM64in.VQfromXX.rQ);
@@ -3497,8 +3562,10 @@
#define X010000 BITS8(0,0, 0,1,0,0,0,0)
#define X010001 BITS8(0,0, 0,1,0,0,0,1)
#define X010010 BITS8(0,0, 0,1,0,0,1,0)
+#define X010011 BITS8(0,0, 0,1,0,0,1,1)
#define X010101 BITS8(0,0, 0,1,0,1,0,1)
#define X010110 BITS8(0,0, 0,1,0,1,1,0)
+#define X010111 BITS8(0,0, 0,1,0,1,1,1)
#define X011001 BITS8(0,0, 0,1,1,0,0,1)
#define X011010 BITS8(0,0, 0,1,1,0,1,0)
#define X011011 BITS8(0,0, 0,1,1,0,1,1)
@@ -5076,6 +5143,18 @@
}
goto bad; // FPCR -> iReg case currently ATC
}
+ case ARM64in_FPSR: {
+ Bool toFPSR = i->ARM64in.FPSR.toFPSR;
+ UInt iReg = iregNo(i->ARM64in.FPSR.iReg);
+ if (toFPSR) {
+ /* 0xD51B44 001 Rt MSR fpsr, rT */
+ *p++ = 0xD51B4420 | (iReg & 0x1F);
+ } else {
+ /* 0xD53B44 001 Rt MRS rT, fpsr */
+ *p++ = 0xD53B4420 | (iReg & 0x1F);
+ }
+ goto done;
+ }
case ARM64in_VBinV: {
/* 31 23 20 15 9 4
010 01110 11 1 m 100001 n d ADD Vd.2d, Vn.2d, Vm.2d
@@ -5205,6 +5284,11 @@
010 01110 01 1 m 101101 n d SQDMULH Vd.8h, Vn.8h, Vm.8h
011 01110 10 1 m 101101 n d SQRDMULH Vd.4s, Vn.4s, Vm.4s
011 01110 10 1 m 101101 n d SQRDMULH Vd.8h, Vn.8h, Vm.8h
+
+ 010 01110 sz 1 m 010011 n d SQSHL@sz Vd, Vn, Vm
+ 010 01110 sz 1 m 010111 n d SQRSHL@sz Vd, Vn, Vm
+ 011 01110 sz 1 m 010011 n d UQSHL@sz Vd, Vn, Vm
+ 011 01110 sz 1 m 010111 n d URQSHL@sz Vd, Vn, Vm
*/
UInt vD = qregNo(i->ARM64in.VBinV.dst);
UInt vN = qregNo(i->ARM64in.VBinV.argL);
@@ -5528,6 +5612,58 @@
*p++ = X_3_8_5_6_5_5(X011, X01110011, vM, X101101, vN, vD);
break;
+ case ARM64vecb_SQSHL64x2:
+ *p++ = X_3_8_5_6_5_5(X010, X01110111, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_SQSHL32x4:
+ *p++ = X_3_8_5_6_5_5(X010, X01110101, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_SQSHL16x8:
+ *p++ = X_3_8_5_6_5_5(X010, X01110011, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_SQSHL8x16:
+ *p++ = X_3_8_5_6_5_5(X010, X01110001, vM, X010011, vN, vD);
+ break;
+
+ case ARM64vecb_SQRSHL64x2:
+ *p++ = X_3_8_5_6_5_5(X010, X01110111, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_SQRSHL32x4:
+ *p++ = X_3_8_5_6_5_5(X010, X01110101, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_SQRSHL16x8:
+ *p++ = X_3_8_5_6_5_5(X010, X01110011, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_SQRSHL8x16:
+ *p++ = X_3_8_5_6_5_5(X010, X01110001, vM, X010111, vN, vD);
+ break;
+
+ case ARM64vecb_UQSHL64x2:
+ *p++ = X_3_8_5_6_5_5(X011, X01110111, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_UQSHL32x4:
+ *p++ = X_3_8_5_6_5_5(X011, X01110101, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_UQSHL16x8:
+ *p++ = X_3_8_5_6_5_5(X011, X01110011, vM, X010011, vN, vD);
+ break;
+ case ARM64vecb_UQSHL8x16:
+ *p++ = X_3_8_5_6_5_5(X011, X01110001, vM, X010011, vN, vD);
+ break;
+
+ case ARM64vecb_UQRSHL64x2:
+ *p++ = X_3_8_5_6_5_5(X011, X01110111, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_UQRSHL32x4:
+ *p++ = X_3_8_5_6_5_5(X011, X01110101, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_UQRSHL16x8:
+ *p++ = X_3_8_5_6_5_5(X011, X01110011, vM, X010111, vN, vD);
+ break;
+ case ARM64vecb_UQRSHL8x16:
+ *p++ = X_3_8_5_6_5_5(X011, X01110001, vM, X010111, vN, vD);
+ break;
+
default:
goto bad;
}
@@ -6700,6 +6836,18 @@
goto done;
}
+ case ARM64in_VQfromX: {
+ /* FMOV D, X
+ 1001 1110 0110 0111 0000 00 nn dd FMOV Vd.D[0], Xn
+ I think this zeroes out the top half of the destination, which
+ is what we need. TODO: can we do VDfromX and VQfromXX better? */
+ UInt dd = qregNo(i->ARM64in.VQfromX.rQ);
+ UInt xx = iregNo(i->ARM64in.VQfromX.rXlo);
+ vassert(xx < 31);
+ *p++ = 0x9E670000 | X_2_6_2_12_5_5(0,0,0,0,xx,dd);
+ goto done;
+ }
+
case ARM64in_VQfromXX: {
/* What we really generate is a two insn sequence:
INS Vd.D[0], Xlo; INS Vd.D[1], Xhi
Modified: trunk/priv/host_arm64_defs.h
==============================================================================
--- trunk/priv/host_arm64_defs.h (original)
+++ trunk/priv/host_arm64_defs.h Mon Aug 4 08:09:47 2014
@@ -364,6 +364,14 @@
ARM64vecb_SQDMULH16x8,
ARM64vecb_SQRDMULH32x4,
ARM64vecb_SQRDMULH16x8,
+ ARM64vecb_SQSHL64x2, ARM64vecb_SQSHL32x4,
+ ARM64vecb_SQSHL16x8, ARM64vecb_SQSHL8x16,
+ ARM64vecb_UQSHL64x2, ARM64vecb_UQSHL32x4,
+ ARM64vecb_UQSHL16x8, ARM64vecb_UQSHL8x16,
+ ARM64vecb_SQRSHL64x2, ARM64vecb_SQRSHL32x4,
+ ARM64vecb_SQRSHL16x8, ARM64vecb_SQRSHL8x16,
+ ARM64vecb_UQRSHL64x2, ARM64vecb_UQRSHL32x4,
+ ARM64vecb_UQRSHL16x8, ARM64vecb_UQRSHL8x16,
ARM64vecb_INVALID
}
ARM64VecBinOp;
@@ -438,6 +446,7 @@
ARM64in_VCmpD,
ARM64in_VCmpS,
ARM64in_FPCR,
+ ARM64in_FPSR,
/* ARM64in_V*V: vector ops on vector registers */
ARM64in_VBinV,
ARM64in_VUnaryV,
@@ -446,6 +455,7 @@
ARM64in_VExtV,
ARM64in_VImmQ,
ARM64in_VDfromX, /* Move an Xreg to a Dreg */
+ ARM64in_VQfromX, /* Move an Xreg to a Qreg lo64, and zero hi64 */
ARM64in_VQfromXX, /* Move 2 Xregs to a Qreg */
ARM64in_VXfromQ, /* Move half a Qreg to an Xreg */
ARM64in_VXfromDorS, /* Move Dreg or Sreg(ZX) to an Xreg */
@@ -691,6 +701,11 @@
Bool toFPCR;
HReg iReg;
} FPCR;
+ /* Move a 32-bit value to/from the FPSR */
+ struct {
+ Bool toFPSR;
+ HReg iReg;
+ } FPSR;
/* binary vector operation on vector registers */
struct {
ARM64VecBinOp op;
@@ -736,6 +751,10 @@
} VDfromX;
struct {
HReg rQ;
+ HReg rXlo;
+ } VQfromX;
+ struct {
+ HReg rQ;
HReg rXhi;
HReg rXlo;
} VQfromXX;
@@ -814,6 +833,7 @@
extern ARM64Instr* ARM64Instr_VCmpD ( HReg argL, HReg argR );
extern ARM64Instr* ARM64Instr_VCmpS ( HReg argL, HReg argR );
extern ARM64Instr* ARM64Instr_FPCR ( Bool toFPCR, HReg iReg );
+extern ARM64Instr* ARM64Instr_FPSR ( Bool toFPSR, HReg iReg );
extern ARM64Instr* ARM64Instr_VBinV ( ARM64VecBinOp op, HReg, HReg, HReg );
extern ARM64Instr* ARM64Instr_VUnaryV ( ARM64VecUnaryOp op, HReg, HReg );
extern ARM64Instr* ARM64Instr_VNarrowV ( UInt dszBlg2, HReg dst, HReg src );
@@ -823,6 +843,7 @@
HReg srcLo, HReg srcHi, UInt amtB );
extern ARM64Instr* ARM64Instr_VImmQ ( HReg, UShort );
extern ARM64Instr* ARM64Instr_VDfromX ( HReg rD, HReg rX );
+extern ARM64Instr* ARM64Instr_VQfromX ( HReg rQ, HReg rXlo );
extern ARM64Instr* ARM64Instr_VQfromXX( HReg rQ, HReg rXhi, HReg rXlo );
extern ARM64Instr* ARM64Instr_VXfromQ ( HReg rX, HReg rQ, UInt laneNo );
extern ARM64Instr* ARM64Instr_VXfromDorS ( HReg rX, HReg rDorS, Bool fromD );
Modified: trunk/priv/host_arm64_isel.c
==============================================================================
--- trunk/priv/host_arm64_isel.c (original)
+++ trunk/priv/host_arm64_isel.c Mon Aug 4 08:09:47 2014
@@ -136,6 +136,16 @@
return env->vregmap[tmp];
}
+static void lookupIRTempPair ( HReg* vrHI, HReg* vrLO,
+ ISelEnv* env, IRTemp tmp )
+{
+ vassert(tmp >= 0);
+ vassert(tmp < env->n_vregmap);
+ vassert(! hregIsInvalid(env->vregmapHI[tmp]));
+ *vrLO = env->vregmap[tmp];
+ *vrHI = env->vregmapHI[tmp];
+}
+
static void addInstr ( ISelEnv* env, ARM64Instr* instr )
{
addHInstr(env->code, instr);
@@ -230,24 +240,20 @@
static void iselInt128Expr ( /*OUT*/HReg* rHi, HReg* rLo,
ISelEnv* env, IRExpr* e );
-
-//ZZ static void iselInt64Expr_wrk ( HReg* rHi, HReg* rLo,
-//ZZ ISelEnv* env, IRExpr* e );
-//ZZ static void iselInt64Expr ( HReg* rHi, HReg* rLo,
-//ZZ ISelEnv* env, IRExpr* e );
-
static HReg iselDblExpr_wrk ( ISelEnv* env, IRExpr* e );
static HReg iselDblExpr ( ISelEnv* env, IRExpr* e );
static HReg iselFltExpr_wrk ( ISelEnv* env, IRExpr* e );
static HReg iselFltExpr ( ISelEnv* env, IRExpr* e );
-//ZZ static HReg iselNeon64Expr_wrk ( ISelEnv* env, IRExpr* e );
-//ZZ static HReg iselNeon64Expr ( ISelEnv* env, IRExpr* e );
-
static HReg iselV128Expr_wrk ( ISelEnv* env, IRExpr* e );
static HReg iselV128Expr ( ISelEnv* env, IRExpr* e );
+static void iselV256Expr_wrk ( /*OUT*/HReg* rHi, HReg* rLo,
+ ISelEnv* env, IRExpr* e );
+static void iselV256Expr ( /*OUT*/HReg* rHi, HReg* rLo,
+ ISelEnv* env, IRExpr* e );
+
static ARM64RIL* mb_mkARM64RIL_I ( ULong imm64 );
@@ -4332,7 +4338,7 @@
/*---------------------------------------------------------*/
-/*--- ISEL: Vector (NEON) expressions (128 bit) ---*/
+/*--- ISEL: Vector expressions (128 bit) ---*/
/*---------------------------------------------------------*/
static HReg iselV128Expr ( ISelEnv* env, IRExpr* e )
@@ -4389,7 +4395,7 @@
if (e->tag == Iex_Unop) {
- /* Iop_ZeroHIXXofV128 cases */
+ /* Iop_ZeroHIXXofV128 cases */
UShort imm16 = 0;
switch (e->Iex.Unop.op) {
case Iop_ZeroHI64ofV128: imm16 = 0x00FF; break;
@@ -4477,6 +4483,12 @@
addInstr(env, ARM64Instr_VUnaryV(ARM64vecu_NOT, res, res));
return res;
}
+ case Iop_V256toV128_0:
+ case Iop_V256toV128_1: {
+ HReg vHi, vLo;
+ iselV256Expr(&vHi, &vLo, env, e->Iex.Unop.arg);
+ return (e->Iex.Unop.op == Iop_V256toV128_1) ? vHi : vLo;
+ }
//ZZ case Iop_NotV128: {
//ZZ DECLARE_PATTERN(p_veqz_8x16);
@@ -6425,6 +6437,111 @@
/*---------------------------------------------------------*/
+/*--- ISEL: Vector expressions (256 bit) ---*/
+/*---------------------------------------------------------*/
+
+static void iselV256Expr ( /*OUT*/HReg* rHi, HReg* rLo,
+ ISelEnv* env, IRExpr* e )
+{
+ iselV256Expr_wrk( rHi, rLo, env, e );
+ vassert(hregClass(*rHi) == HRcVec128);
+ vassert(hregClass(*rLo) == HRcVec128);
+ vassert(hregIsVirtual(*rHi));
+ vassert(hregIsVirtual(*rLo));
+}
+
+/* DO NOT CALL THIS DIRECTLY */
+static void iselV256Expr_wrk ( /*OUT*/HReg* rHi, /*OUT*/HReg* rLo,
+ ISelEnv* env, IRExpr* e )
+{
+ vassert(e);
+ IRType ty = typeOfIRExpr(env->type_env,e);
+ vassert(ty == Ity_V256);
+
+ /* read 256-bit IRTemp */
+ if (e->tag == Iex_RdTmp) {
+ lookupIRTempPair( rHi, rLo, env, e->Iex.RdTmp.tmp);
+ return;
+ }
+
+ if (e->tag == Iex_Binop) {
+ switch (e->Iex.Binop.op) {
+
+ case Iop_QandSQsh64x2:
+ case Iop_QandSQsh32x4:
+ case Iop_QandSQsh16x8:
+ case Iop_QandSQsh8x16:
+ case Iop_QandUQsh64x2:
+ case Iop_QandUQsh32x4:
+ case Iop_QandUQsh16x8:
+ case Iop_QandUQsh8x16:
+ case Iop_QandSQRsh64x2:
+ case Iop_QandSQRsh32x4:
+ case Iop_QandSQRsh16x8:
+ case Iop_QandSQRsh8x16:
+ case Iop_QandUQRsh64x2:
+ case Iop_QandUQRsh32x4:
+ case Iop_QandUQRsh16x8:
+ case Iop_QandUQRsh8x16:
+ {
+ HReg argL = iselV128Expr(env, e->Iex.Binop.arg1);
+ HReg argR = iselV128Expr(env, e->Iex.Binop.arg2);
+ HReg fpsr = newVRegI(env);
+ HReg resHi = newVRegV(env);
+ HReg resLo = newVRegV(env);
+ ARM64VecBinOp op = ARM64vecb_INVALID;
+ switch (e->Iex.Binop.op) {
+ case Iop_QandSQsh64x2: op = ARM64vecb_SQSHL64x2; break;
+ case Iop_QandSQsh32x4: op = ARM64vecb_SQSHL32x4; break;
+ case Iop_QandSQsh16x8: op = ARM64vecb_SQSHL16x8; break;
+ case Iop_QandSQsh8x16: op = ARM64vecb_SQSHL8x16; break;
+ case Iop_QandUQsh64x2: op = ARM64vecb_UQSHL64x2; break;
+ case Iop_QandUQsh32x4: op = ARM64vecb_UQSHL32x4; break;
+ case Iop_QandUQsh16x8: op = ARM64vecb_UQSHL16x8; break;
+ case Iop_QandUQsh8x16: op = ARM64vecb_UQSHL8x16; break;
+ case Iop_QandSQRsh64x2: op = ARM64vecb_SQRSHL64x2; break;
+ case Iop_QandSQRsh32x4: op = ARM64vecb_SQRSHL32x4; break;
+ case Iop_QandSQRsh16x8: op = ARM64vecb_SQRSHL16x8; break;
+ case Iop_QandSQRsh8x16: op = ARM64vecb_SQRSHL8x16; break;
+ case Iop_QandUQRsh64x2: op = ARM64vecb_UQRSHL64x2; break;
+ case Iop_QandUQRsh32x4: op = ARM64vecb_UQRSHL32x4; break;
+ case Iop_QandUQRsh16x8: op = ARM64vecb_UQRSHL16x8; break;
+ case Iop_QandUQRsh8x16: op = ARM64vecb_UQRSHL8x16; break;
+ default: vassert(0);
+ }
+ /* Clear FPSR.Q, do the operation, and return both its result
+ and the new value of FPSR.Q. We can simply zero the whole
+ thing out since FPSR is essentially a scratch status register
+ on the host. */
+ addInstr(env, ARM64Instr_Imm64(fpsr, 0));
+ addInstr(env, ARM64Instr_FPSR(True/*toFPSR*/, fpsr));
+ addInstr(env, ARM64Instr_VBinV(op, resLo, argL, argR));
+ addInstr(env, ARM64Instr_FPSR(False/*!toFPSR*/, fpsr));
+ addInstr(env, ARM64Instr_Shift(fpsr, fpsr, ARM64RI6_I6(27),
+ ARM64sh_SHR));
+ ARM64RIL* ril_one = mb_mkARM64RIL_I(1);
+ vassert(ril_one);
+ addInstr(env, ARM64Instr_Logic(fpsr, fpsr, ril_one, ARM64lo_AND));
+ /* Now we have: the main (shift) result in |resLo|, and the
+ Q bit at the bottom of |fpsr|. */
+ addInstr(env, ARM64Instr_VQfromX(resHi, fpsr));
+ *rHi = resHi;
+ *rLo = resLo;
+ return;
+ }
+
+ /* ... */
+ default:
+ break;
+ } /* switch on the binop */
+ } /* if (e->tag == Iex_Binop) */
+
+ ppIRExpr(e);
+ vpanic("iselV256Expr_wrk");
+}
+
+
+/*---------------------------------------------------------*/
/*--- ISEL: Statements ---*/
/*---------------------------------------------------------*/
@@ -6763,6 +6880,14 @@
addInstr(env, ARM64Instr_VMov(16, dst, src));
return;
}
+ if (ty == Ity_V256) {
+ HReg srcHi, srcLo, dstHi, dstLo;
+ iselV256Expr(&srcHi,&srcLo, env, stmt->Ist.WrTmp.data);
+ lookupIRTempPair( &dstHi, &dstLo, env, tmp);
+ addInstr(env, ARM64Instr_VMov(16, dstHi, srcHi));
+ addInstr(env, ARM64Instr_VMov(16, dstLo, srcLo));
+ return;
+ }
break;
}
@@ -7155,6 +7280,10 @@
case Ity_V128:
hreg = mkHReg(j++, HRcVec128, True);
break;
+ case Ity_V256:
+ hreg = mkHReg(j++, HRcVec128, True);
+ hregHI = mkHReg(j++, HRcVec128, True);
+ break;
default:
ppIRType(bb->tyenv->types[i]);
vpanic("iselBB(arm64): IRTemp type");
Modified: trunk/priv/ir_defs.c
==============================================================================
--- trunk/priv/ir_defs.c (original)
+++ trunk/priv/ir_defs.c Mon Aug 4 08:09:47 2014
@@ -903,6 +903,23 @@
case Iop_Rol32x4: vex_printf("Rol32x4"); return;
case Iop_Rol64x2: vex_printf("Rol64x2"); return;
+ case Iop_QandUQsh8x16: vex_printf("QandUQsh8x16"); return;
+ case Iop_QandUQsh16x8: vex_printf("QandUQsh16x8"); return;
+ case Iop_QandUQsh32x4: vex_printf("QandUQsh32x4"); return;
+ case Iop_QandUQsh64x2: vex_printf("QandUQsh64x2"); return;
+ case Iop_QandSQsh8x16: vex_printf("QandSQsh8x16"); return;
+ case Iop_QandSQsh16x8: vex_printf("QandSQsh16x8"); return;
+ case Iop_QandSQsh32x4: vex_printf("QandSQsh32x4"); return;
+ case Iop_QandSQsh64x2: vex_printf("QandSQsh64x2"); return;
+ case Iop_QandUQRsh8x16: vex_printf("QandUQRsh8x16"); return;
+ case Iop_QandUQRsh16x8: vex_printf("QandUQRsh16x8"); return;
+ case Iop_QandUQRsh32x4: vex_printf("QandUQRsh32x4"); return;
+ case Iop_QandUQRsh64x2: vex_printf("QandUQRsh64x2"); return;
+ case Iop_QandSQRsh8x16: vex_printf("QandSQRsh8x16"); return;
+ case Iop_QandSQRsh16x8: vex_printf("QandSQRsh16x8"); return;
+ case Iop_QandSQRsh32x4: vex_printf("QandSQRsh32x4"); return;
+ case Iop_QandSQRsh64x2: vex_printf("QandSQRsh64x2"); return;
+
case Iop_NarrowBin16to8x16: vex_printf("NarrowBin16to8x16"); return;
case Iop_NarrowBin32to16x8: vex_printf("NarrowBin32to16x8"); return;
case Iop_QNarrowBin16Uto8Ux16: vex_printf("QNarrowBin16Uto8Ux16"); return;
@@ -1037,16 +1054,16 @@
case Iop_DivD128: vex_printf("DivD128"); return;
case Iop_ShlD128: vex_printf("ShlD128"); return;
case Iop_ShrD128: vex_printf("ShrD128"); return;
- case Iop_RoundD64toInt: vex_printf("Iop_RoundD64toInt"); return;
- case Iop_RoundD128toInt: vex_printf("Iop_RoundD128toInt"); return;
- case Iop_QuantizeD64: vex_printf("Iop_QuantizeD64"); return;
- case Iop_QuantizeD128: vex_printf("Iop_QuantizeD128"); return;
- case Iop_ExtractExpD64: vex_printf("Iop_ExtractExpD64"); return;
- case Iop_ExtractExpD128: vex_printf("Iop_ExtractExpD128"); return;
- case Iop_ExtractSigD64: vex_printf("Iop_ExtractSigD64"); return;
- case Iop_ExtractSigD128: vex_printf("Iop_ExtractSigD128"); return;
- case Iop_InsertExpD64: vex_printf("Iop_InsertExpD64"); return;
- case Iop_InsertExpD128: vex_printf("Iop_InsertExpD128"); return;
+ case Iop_RoundD64toInt: vex_printf("RoundD64toInt"); return;
+ case Iop_RoundD128toInt: vex_printf("RoundD128toInt"); return;
+ case Iop_QuantizeD64: vex_printf("QuantizeD64"); return;
+ case Iop_QuantizeD128: vex_printf("QuantizeD128"); return;
+ case Iop_ExtractExpD64: vex_printf("ExtractExpD64"); return;
+ case Iop_ExtractExpD128: vex_printf("ExtractExpD128"); return;
+ case Iop_ExtractSigD64: vex_printf("ExtractSigD64"); return;
+ case Iop_ExtractSigD128: vex_printf("ExtractSigD128"); return;
+ case Iop_InsertExpD64: vex_printf("InsertExpD64"); return;
+ case Iop_InsertExpD128: vex_printf("InsertExpD128"); return;
case Iop_CmpD64: vex_printf("CmpD64"); return;
case Iop_CmpD128: vex_printf("CmpD128"); return;
case Iop_CmpExpD64: vex_printf("CmpExpD64"); return;
@@ -1054,9 +1071,9 @@
case Iop_D64HLtoD128: vex_printf("D64HLtoD128"); return;
case Iop_D128HItoD64: vex_printf("D128HItoD64"); return;
case Iop_D128LOtoD64: vex_printf("D128LOtoD64"); return;
- case Iop_SignificanceRoundD64: vex_printf("Iop_SignificanceRoundD64");
+ case Iop_SignificanceRoundD64: vex_printf("SignificanceRoundD64");
return;
- case Iop_SignificanceRoundD128: vex_printf("Iop_SignificanceRoundD128");
+ case Iop_SignificanceRoundD128: vex_printf("SignificanceRoundD128");
return;
case Iop_ReinterpI64asD64: vex_printf("ReinterpI64asD64"); return;
case Iop_ReinterpD64asI64: vex_printf("ReinterpD64asI64"); return;
@@ -3260,6 +3277,14 @@
case Iop_V256toV128_1: case Iop_V256toV128_0:
UNARY(Ity_V256, Ity_V128);
+ case Iop_QandUQsh8x16: case Iop_QandUQsh16x8:
+ case Iop_QandUQsh32x4: case Iop_QandUQsh64x2:
+ case Iop_QandSQsh8x16: case Iop_QandSQsh16x8:
+ case Iop_QandSQsh32x4: case Iop_QandSQsh64x2:
+ case Iop_QandUQRsh8x16: case Iop_QandUQRsh16x8:
+ case Iop_QandUQRsh32x4: case Iop_QandUQRsh64x2:
+ case Iop_QandSQRsh8x16: case Iop_QandSQRsh16x8:
+ case Iop_QandSQRsh32x4: case Iop_QandSQRsh64x2:
case Iop_V128HLtoV256:
BINARY(Ity_V128,Ity_V128, Ity_V256);
Modified: trunk/pub/libvex_ir.h
==============================================================================
--- trunk/pub/libvex_ir.h (original)
+++ trunk/pub/libvex_ir.h Mon Aug 4 08:09:47 2014
@@ -1538,6 +1538,34 @@
Iop_QShlN8x16, Iop_QShlN16x8, Iop_QShlN32x4, Iop_QShlN64x2,
Iop_QSalN8x16, Iop_QSalN16x8, Iop_QSalN32x4, Iop_QSalN64x2,
+ /* VECTOR x VECTOR BIDIRECTIONAL SATURATING (& MAYBE ROUNDING) SHIFT */
+ /* The least significant 8 bits of each lane of the second
+ operand are used as the shift amount, and interpreted signedly.
+ Positive values mean a shift left, negative a shift right. The
+ result is signedly or unsignedly saturated. There are also
+ rounding variants, which add 2^(shift_amount-1) to the value before
+ shifting, but only in the shift-right case. Vacated positions
+ are filled with zeroes. IOW, it's either SHR or SHL, but not SAR.
+
+ These operations return 129 bits: one bit ("Q") indicating whether
+ saturation occurred, and the shift result. The result type is V256,
+ of which the lower V128 is the shift result, and Q occupies the
+ least significant bit of the upper V128. All other bits of the
+ upper V128 are zero. */
+ // Unsigned saturation, no rounding
+ Iop_QandUQsh8x16, Iop_QandUQsh16x8,
+ Iop_QandUQsh32x4, Iop_QandUQsh64x2,
+ // Signed saturation, no rounding
+ Iop_QandSQsh8x16, Iop_QandSQsh16x8,
+ Iop_QandSQsh32x4, Iop_QandSQsh64x2,
+
+ // Unsigned saturation, rounding
+ Iop_QandUQRsh8x16, Iop_QandUQRsh16x8,
+ Iop_QandUQRsh32x4, Iop_QandUQRsh64x2,
+ // Signed saturation, rounding
+ Iop_QandSQRsh8x16, Iop_QandSQRsh16x8,
+ Iop_QandSQRsh32x4, Iop_QandSQRsh64x2,
+
/* NARROWING (binary)
-- narrow 2xV128 into 1xV128, hi half from left arg */
/* See comments above w.r.t. U vs S issues in saturated narrowing. */
|
|
From: <sv...@va...> - 2014-08-04 08:09:33
|
Author: sewardj
Date: Mon Aug 4 08:09:23 2014
New Revision: 2912
Log:
Add a folding rule: XorV128(t,0) ==> t.
Modified:
trunk/priv/ir_opt.c
Modified: trunk/priv/ir_opt.c
==============================================================================
--- trunk/priv/ir_opt.c (original)
+++ trunk/priv/ir_opt.c Mon Aug 4 08:09:23 2014
@@ -2259,6 +2259,18 @@
e2 = mkZeroOfPrimopResultType(e->Iex.Binop.op);
break;
}
+ /* XorV128(t,0) ==> t */
+ if (e->Iex.Binop.op == Iop_XorV128) {
+ if (isZeroV128(e->Iex.Binop.arg2)) {
+ e2 = e->Iex.Binop.arg1;
+ break;
+ }
+ //Disabled because there's no known test case right now.
+ //if (isZeroV128(e->Iex.Binop.arg1)) {
+ // e2 = e->Iex.Binop.arg2;
+ // break;
+ //}
+ }
break;
case Iop_CmpNE32:
|
|
From: Rich C. <rc...@wi...> - 2014-08-04 05:02:15
|
valgrind revision: 14230
VEX revision: 2911
C compiler: gcc (SUSE Linux) 4.8.1 20130909 [gcc-4_8-branch revision 202388]
GDB: GNU gdb (GDB; openSUSE Factory) 7.6.50.20130731-cvs
Assembler: GNU assembler (GNU Binutils; openSUSE Factory) 2.23.2
C library: GNU C Library (GNU libc) stable release version 2.18 (git )
uname -mrs: Linux 3.11.4-3-desktop x86_64
Vendor version: Welcome to openSUSE 13.1 "Bottle" Beta 1 - Kernel %r (%t).
Nightly build on rodan ( Linux 3.11.4-3-desktop x86_64 )
Started at 2014-08-03 19:22:01 CDT
Ended at 2014-08-04 00:02:04 CDT
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 607 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures ==
memcheck/tests/err_disable3 (stderr)
memcheck/tests/err_disable4 (stderr)
memcheck/tests/threadname (stderr)
memcheck/tests/threadname_xml (stderr)
exp-sgcheck/tests/hackedbz2 (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.8s (16.3x, -----) me:15.0s (31.3x, -----) ca:61.3s (127.8x, -----) he: 8.9s (18.5x, -----) ca:25.6s (53.3x, -----) dr: 8.8s (18.2x, -----) ma: 9.1s (19.0x, -----)
bigcode1 valgrind-old:0.48s no: 7.8s (16.4x, -0.3%) me:15.0s (31.2x, 0.1%) ca:61.0s (127.1x, 0.6%) he: 9.0s (18.7x, -0.7%) ca:25.5s (53.1x, 0.4%) dr: 8.8s (18.3x, -0.1%) ma: 9.1s (19.0x, 0.2%)
-- bigcode2 --
bigcode2 valgrind-new:0.49s no:18.7s (38.1x, -----) me:38.5s (78.5x, -----) ca:104.8s (213.8x, -----) he:22.3s (45.5x, -----) ca:41.0s (83.7x, -----) dr:21.4s (43.6x, -----) ma:21.6s (44.0x, -----)
bigcode2 valgrind-old:0.49s no:18.7s (38.2x, -0.3%) me:38.4s (78.3x, 0.3%) ca:104.8s (214.0x, -0.1%) he:22.4s (45.8x, -0.7%) ca:40.7s (83.1x, 0.8%) dr:21.4s (43.6x, 0.1%) ma:21.4s (43.8x, 0.6%)
-- bz2 --
bz2 valgrind-new:2.32s no:10.2s ( 4.4x, -----) me:27.2s (11.7x, -----) ca:59.1s (25.5x, -----) he:39.4s (17.0x, -----) ca:75.4s (32.5x, -----) dr:56.0s (24.1x, -----) ma: 9.8s ( 4.2x, -----)
bz2 valgrind-old:2.32s no:10.2s ( 4.4x, 0.1%) me:27.3s (11.8x, -0.1%) ca:58.8s (25.3x, 0.6%) he:39.6s (17.1x, -0.6%) ca:75.9s (32.7x, -0.6%) dr:55.8s (24.1x, 0.2%) ma: 9.8s ( 4.2x, -0.1%)
-- fbench --
fbench valgrind-new:1.44s no: 5.4s ( 3.8x, -----) me:17.5s (12.2x, -----) ca:26.9s (18.7x, -----) he:13.0s ( 9.1x, -----) ca:21.6s (15.0x, -----) dr:12.9s ( 8.9x, -----) ma: 5.6s ( 3.9x, -----)
fbench valgrind-old:1.44s no: 5.4s ( 3.8x, 0.0%) me:17.8s (12.3x, -1.3%) ca:27.1s (18.8x, -0.4%) he:13.2s ( 9.1x, -1.0%) ca:21.6s (15.0x, -0.0%) dr:13.1s ( 9.1x, -1.8%) ma: 5.6s ( 3.9x, 0.4%)
-- ffbench --
ffbench valgrind-new:1.00s no: 3.7s ( 3.7x, -----) me:12.1s (12.1x, -----) ca: 8.2s ( 8.2x, -----) he:21.2s (21.2x, -----) ca:27.6s (27.6x, -----) dr:17.1s (17.1x, -----) ma: 3.7s ( 3.7x, -----)
ffbench valgrind-old:1.00s no: 3.7s ( 3.7x, 0.3%) me:12.1s (12.1x, 0.0%) ca: 8.1s ( 8.1x, 1.3%) he:21.3s (21.3x, -0.6%) ca:27.4s (27.4x, 0.4%) dr:17.1s (17.1x, -0.2%) ma: 3.7s ( 3.7x, -0.5%)
-- heap --
heap valgrind-new:0.40s no: 3.3s ( 8.3x, -----) me:22.0s (55.1x, -----) ca:31.3s (78.3x, -----) he:30.6s (76.5x, -----) ca:22.9s (57.3x, -----) dr:19.9s (49.8x, -----) ma:22.7s (56.8x, -----)
heap valgrind-old:0.40s no: 3.3s ( 8.3x, 0.0%) me:22.1s (55.4x, -0.5%) ca:31.4s (78.4x, -0.1%) he:31.0s (77.4x, -1.1%) ca:22.8s (56.9x, 0.7%) dr:20.0s (50.0x, -0.5%) ma:23.0s (57.5x, -1.3%)
-- heap_pdb4 --
heap_pdb4 valgrind-new:0.55s no: 3.6s ( 6.6x, -----) me:42.1s (76.5x, -----) ca:33.8s (61.5x, -----) he:36.1s (65.6x, -----) ca:24.8s (45.1x, -----) dr:22.6s (41.2x, -----) ma:24.0s (43.6x, -----)
heap_pdb4 valgrind-old:0.55s no: 3.6s ( 6.6x, -0.3%) me:41.9s (76.2x, 0.4%) ca:34.0s (61.9x, -0.7%) he:36.0s (65.4x, 0.2%) ca:24.9s (45.3x, -0.3%) dr:22.6s (41.0x, 0.4%) ma:24.4s (44.3x, -1.7%)
-- many-loss-records --
many-loss-records valgrind-new:0.05s no: 1.3s (25.4x, -----) me: 5.8s (115.8x, -----) ca: 5.1s (101.4x, -----) he: 5.3s (105.4x, -----) ca: 4.1s (81.2x, -----) dr: 4.7s (93.6x, -----) ma: 4.7s (94.4x, -----)
many-loss-records valgrind-old:0.05s no: 1.3s (25.4x, 0.0%) me: 5.8s (116.2x, -0.3%) ca: 5.1s (102.4x, -1.0%) he: 5.3s (106.4x, -0.9%) ca: 4.1s (81.2x, 0.0%) dr: 4.7s (93.6x, 0.0%) ma: 4.8s (95.4x, -1.1%)
-- many-xpts --
many-xpts valgrind-new:0.15s no: 1.5s (10.3x, -----) me: 7.1s (47.2x, -----) ca:13.0s (86.5x, -----) he:10.1s (67.0x, -----) ca: 5.8s (38.8x, -----) dr: 6.2s (41.5x, -----) ma: 7.5s (49.8x, -----)
many-xpts valgrind-old:0.15s no: 1.5s (10.3x, 0.0%) me: 7.1s (47.1x, 0.1%) ca:13.0s (86.4x, 0.2%) he:10.1s (67.0x, 0.0%) ca: 5.8s (38.9x, -0.3%) dr: 6.2s (41.5x, -0.2%) ma: 7.4s (49.6x, 0.4%)
-- sarp --
sarp valgrind-new:0.10s no: 1.5s (14.8x, -----) me: 8.7s (87.3x, -----) ca: 8.2s (82.5x, -----) he:31.3s (313.0x, -----) ca: 5.6s (55.6x, -----) dr: 4.1s (40.8x, -----) ma: 1.5s (15.4x, -----)
sarp valgrind-old:0.10s no: 1.5s (14.8x, 0.0%) me: 9.4s (94.3x, -8.0%) ca: 8.5s (84.6x, -2.5%) he:30.3s (303.2x, 3.1%) ca: 5.6s (55.6x, 0.0%) dr: 4.1s (41.0x, -0.5%) ma: 1.5s (15.4x, 0.0%)
-- tinycc --
tinycc valgrind-new:0.75s no: 7.6s (10.2x, -----) me:37.6s (50.1x, -----) ca:47.5s (63.4x, -----) he:45.6s (60.7x, -----) ca:45.0s (59.9x, -----) dr:38.4s (51.3x, -----) ma:12.1s (16.1x, -----)
tinycc valgrind-old:0.75s no: 7.6s (10.1x, 0.1%) me:37.4s (49.9x, 0.5%) ca:48.1s (64.1x, -1.2%) he:45.5s (60.7x, 0.2%) ca:44.9s (59.9x, 0.0%) dr:38.4s (51.2x, 0.2%) ma:12.1s (16.2x, -0.7%)
-- Finished tests in perf ----------------------------------------------
== 11 programs, 154 timings =================
real 162m5.742s
user 160m8.735s
sys 1m49.382s
=================================================
./valgrind-new/exp-sgcheck/tests/hackedbz2.stderr.diff-glibc28-amd64
=================================================
--- hackedbz2.stderr.exp-glibc28-amd64 2014-08-03 20:21:22.102647292 -0500
+++ hackedbz2.stderr.out 2014-08-03 21:18:49.083361620 -0500
@@ -1,7 +1,6 @@
Invalid read of size 1
- at 0x........: vex_strlen (hackedbz2.c:1006)
- by 0x........: add_to_myprintf_buf (hackedbz2.c:1284)
+ at 0x........: add_to_myprintf_buf (hackedbz2.c:1006)
by 0x........: vex_printf (hackedbz2.c:1155)
by 0x........: BZ2_compressBlock (hackedbz2.c:4039)
by 0x........: handle_compress (hackedbz2.c:4761)
=================================================
./valgrind-new/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2014-08-03 20:21:24.058667819 -0500
+++ err_disable3.stderr.out 2014-08-03 20:39:49.807296783 -0500
@@ -10,8 +10,6 @@
Thread 2:
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
- by 0x........: child_fn (err_disable3.c:31)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-new/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2014-08-03 20:21:22.773654334 -0500
+++ err_disable4.stderr.out 2014-08-03 20:39:53.885340410 -0500
@@ -1501,8 +1501,6 @@
Thread x:
Invalid read of size 1
at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
=================================================
./valgrind-new/memcheck/tests/threadname.stderr.diff
=================================================
--- threadname.stderr.exp 2014-08-03 20:21:23.358660473 -0500
+++ threadname.stderr.out 2014-08-03 20:46:00.074258270 -0500
@@ -9,36 +9,12 @@
Thread 2:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_0 (threadname.c:53)
- ...
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:53)
...
-Thread 3 try1:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_1 (threadname.c:38)
- ...
- 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:38)
- ...
-
-Thread 4 012345678901234:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_2 (threadname.c:26)
- ...
- 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:26)
- ...
-
Thread 1:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
=================================================
./valgrind-new/memcheck/tests/threadname_xml.stderr.diff
=================================================
--- threadname_xml.stderr.exp 2014-08-03 20:21:23.813665248 -0500
+++ threadname_xml.stderr.out 2014-08-03 20:46:02.129280259 -0500
@@ -94,14 +94,6 @@
<file>threadname.c</file>
<line>...</line>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_0</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
</stack>
<auxwhat>Address 0x........ is 0 bytes after a block of size 2 alloc'd</auxwhat>
<stack>
@@ -135,112 +127,6 @@
<error>
<unique>0x........</unique>
<tid>...</tid>
- <threadname>try1</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 3 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <threadname>012345678901234</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_2</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 4 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<truncated beyond 100 lines>
=================================================
./valgrind-old/exp-sgcheck/tests/hackedbz2.stderr.diff-glibc28-amd64
=================================================
--- hackedbz2.stderr.exp-glibc28-amd64 2014-08-03 19:22:14.379072173 -0500
+++ hackedbz2.stderr.out 2014-08-03 20:19:53.949722381 -0500
@@ -1,7 +1,6 @@
Invalid read of size 1
- at 0x........: vex_strlen (hackedbz2.c:1006)
- by 0x........: add_to_myprintf_buf (hackedbz2.c:1284)
+ at 0x........: add_to_myprintf_buf (hackedbz2.c:1006)
by 0x........: vex_printf (hackedbz2.c:1155)
by 0x........: BZ2_compressBlock (hackedbz2.c:4039)
by 0x........: handle_compress (hackedbz2.c:4761)
=================================================
./valgrind-old/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2014-08-03 19:22:35.967292509 -0500
+++ err_disable3.stderr.out 2014-08-03 19:40:58.775586990 -0500
@@ -10,8 +10,6 @@
Thread 2:
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
- by 0x........: child_fn (err_disable3.c:31)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-old/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2014-08-03 19:22:34.546278004 -0500
+++ err_disable4.stderr.out 2014-08-03 19:41:02.914629064 -0500
@@ -1501,8 +1501,6 @@
Thread x:
Invalid read of size 1
at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- ...
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
=================================================
./valgrind-old/memcheck/tests/threadname.stderr.diff
=================================================
--- threadname.stderr.exp 2014-08-03 19:22:36.095293816 -0500
+++ threadname.stderr.out 2014-08-03 19:47:08.831357677 -0500
@@ -9,36 +9,12 @@
Thread 2:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_0 (threadname.c:53)
- ...
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:53)
...
-Thread 3 try1:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_1 (threadname.c:38)
- ...
- 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:38)
- ...
-
-Thread 4 012345678901234:
-Invalid write of size 1
- at 0x........: bad_things (threadname.c:16)
- by 0x........: child_fn_2 (threadname.c:26)
- ...
- 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:26)
- ...
-
Thread 1:
Invalid write of size 1
at 0x........: bad_things (threadname.c:16)
=================================================
./valgrind-old/memcheck/tests/threadname_xml.stderr.diff
=================================================
--- threadname_xml.stderr.exp 2014-08-03 19:22:34.580278351 -0500
+++ threadname_xml.stderr.out 2014-08-03 19:47:10.871378514 -0500
@@ -94,14 +94,6 @@
<file>threadname.c</file>
<line>...</line>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_0</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
</stack>
<auxwhat>Address 0x........ is 0 bytes after a block of size 2 alloc'd</auxwhat>
<stack>
@@ -135,112 +127,6 @@
<error>
<unique>0x........</unique>
<tid>...</tid>
- <threadname>try1</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 3 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_1</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <threadname>012345678901234</threadname>
- <kind>InvalidWrite</kind>
- <what>Invalid write of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>bad_things</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>child_fn_2</fn>
- <dir>...</dir>
- <file>threadname.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 0 bytes after a block of size 4 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<truncated beyond 100 lines>
|
|
From: Christian B. <bor...@de...> - 2014-08-04 04:10:13
|
valgrind revision: 14230 VEX revision: 2911 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.31-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP3 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP3 gcc 4.3.4 on z196 (s390x) ) Started at 2014-08-04 03:45:01 CEST Ended at 2014-08-04 06:09:58 CEST 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 == 657 tests, 3 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/origin5-bz2 (stderr) helgrind/tests/pth_cond_destroy_busy (stderr) helgrind/tests/tc20_verifywrap (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.23s no: 4.8s (21.0x, -----) me: 6.3s (27.5x, -----) ca:26.5s (115.3x, -----) he: 5.5s (23.7x, -----) ca: 9.1s (39.7x, -----) dr: 4.8s (20.9x, -----) ma: 3.9s (17.0x, -----) bigcode1 valgrind-old:0.23s no: 4.8s (21.0x, 0.0%) me: 6.2s (27.0x, 1.6%) ca:26.5s (115.3x, 0.0%) he: 5.5s (23.9x, -0.9%) ca: 9.1s (39.7x, -0.1%) dr: 4.8s (20.9x, -0.2%) ma: 3.9s (17.0x, 0.0%) -- bigcode2 -- bigcode2 valgrind-new:0.24s no: 7.8s (32.3x, -----) me:13.1s (54.4x, -----) ca:39.5s (164.6x, -----) he:10.7s (44.5x, -----) ca:14.2s (59.3x, -----) dr: 8.9s (37.3x, -----) ma: 7.4s (30.8x, -----) bigcode2 valgrind-old:0.24s no: 7.8s (32.3x, 0.0%) me:13.2s (54.9x, -0.9%) ca:39.2s (163.5x, 0.6%) he:10.7s (44.6x, -0.3%) ca:14.2s (59.3x, 0.0%) dr: 9.0s (37.6x, -0.8%) ma: 7.3s (30.5x, 0.8%) -- bz2 -- bz2 valgrind-new:0.70s no: 6.6s ( 9.5x, -----) me:12.7s (18.1x, -----) ca:30.7s (43.9x, -----) he:19.9s (28.4x, -----) ca:34.4s (49.1x, -----) dr:28.8s (41.1x, -----) ma: 4.2s ( 6.0x, -----) bz2 valgrind-old:0.70s no: 6.6s ( 9.5x, 0.0%) me:12.7s (18.1x, 0.0%) ca:30.6s (43.8x, 0.2%) he:19.8s (28.3x, 0.1%) ca:34.4s (49.1x, 0.1%) dr:28.9s (41.3x, -0.4%) ma: 4.8s ( 6.9x,-14.3%) -- fbench -- fbench valgrind-new:0.41s no: 1.6s ( 4.0x, -----) me: 4.3s (10.5x, -----) ca: 9.4s (22.9x, -----) he: 6.3s (15.3x, -----) ca: 7.2s (17.7x, -----) dr: 5.5s (13.5x, -----) ma: 1.6s ( 4.0x, -----) fbench valgrind-old:0.41s no: 1.6s ( 4.0x, 0.0%) me: 4.3s (10.4x, 0.7%) ca: 9.3s (22.8x, 0.5%) he: 6.3s (15.3x, -0.2%) ca: 7.2s (17.7x, 0.0%) dr: 5.5s (13.4x, 0.2%) ma: 1.6s ( 4.0x, 0.6%) -- ffbench -- ffbench valgrind-new:0.20s no: 1.2s ( 5.8x, -----) me: 3.0s (14.8x, -----) ca: 3.0s (15.1x, -----) he:44.3s (221.6x, -----) ca: 9.6s (48.1x, -----) dr: 6.9s (34.7x, -----) ma: 1.0s ( 4.8x, -----) ffbench valgrind-old:0.20s no: 1.2s ( 5.9x, -0.9%) me: 3.0s (14.8x, 0.3%) ca: 3.0s (15.1x, 0.0%) he:44.3s (221.6x, 0.0%) ca: 9.7s (48.2x, -0.2%) dr: 7.0s (34.8x, -0.3%) ma: 1.0s ( 4.9x, -2.1%) -- heap -- heap valgrind-new:0.23s no: 2.4s (10.3x, -----) me: 9.1s (39.6x, -----) ca:13.2s (57.5x, -----) he:12.9s (55.9x, -----) ca:11.4s (49.7x, -----) dr: 7.8s (33.8x, -----) ma: 7.9s (34.5x, -----) heap valgrind-old:0.23s no: 2.3s (10.1x, 1.3%) me: 9.0s (39.3x, 0.7%) ca:13.2s (57.4x, 0.1%) he:12.9s (55.9x, 0.0%) ca:11.4s (49.5x, 0.4%) dr: 7.8s (33.9x, -0.3%) ma: 7.8s (34.0x, 1.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.22s no: 2.6s (11.7x, -----) me:13.3s (60.5x, -----) ca:14.3s (65.0x, -----) he:14.1s (63.9x, -----) ca:12.4s (56.4x, -----) dr: 8.6s (39.3x, -----) ma: 8.1s (37.0x, -----) heap_pdb4 valgrind-old:0.22s no: 2.6s (11.7x, -0.4%) me:13.3s (60.5x, 0.0%) ca:14.3s (64.9x, 0.2%) he:14.1s (64.1x, -0.3%) ca:12.4s (56.4x, 0.0%) dr: 8.7s (39.5x, -0.6%) ma: 8.1s (36.6x, 1.1%) -- many-loss-records -- many-loss-records valgrind-new:0.02s no: 0.5s (26.5x, -----) me: 2.1s (107.0x, -----) ca: 1.9s (97.0x, -----) he: 2.1s (106.5x, -----) ca: 1.9s (96.0x, -----) dr: 1.7s (86.5x, -----) ma: 1.7s (83.5x, -----) many-loss-records valgrind-old:0.02s no: 0.5s (26.5x, 0.0%) me: 2.1s (107.0x, 0.0%) ca: 1.9s (97.0x, 0.0%) he: 2.1s (106.5x, 0.0%) ca: 1.9s (96.0x, 0.0%) dr: 1.7s (86.5x, 0.0%) ma: 1.7s (83.5x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.07s no: 0.7s ( 9.7x, -----) me: 3.2s (45.7x, -----) ca:363.9s (5198.9x, -----) he: 6.5s (93.6x, -----) ca: 2.8s (40.1x, -----) dr: 2.5s (35.7x, -----) ma: 2.6s (37.0x, -----) many-xpts valgrind-old:0.07s no: 0.7s ( 9.7x, 0.0%) me: 3.2s (45.7x, 0.0%) ca:376.1s (5372.6x, -3.3%) he: 6.6s (93.7x, -0.2%) ca: 2.8s (40.1x, 0.0%) dr: 2.5s (35.9x, -0.4%) ma: 2.6s (37.1x, -0.4%) -- sarp -- sarp valgrind-new:0.03s no: 0.6s (20.7x, -----) me: 3.5s (115.7x, -----) ca: 3.2s (107.3x, -----) he:17.3s (576.7x, -----) ca: 2.0s (68.0x, -----) dr: 1.3s (44.7x, -----) ma: 0.5s (16.3x, -----) sarp valgrind-old:0.03s no: 0.6s (20.7x, 0.0%) me: 3.5s (115.3x, 0.3%) ca: 3.2s (107.3x, 0.0%) he:17.2s (572.0x, 0.8%) ca: 2.0s (68.0x, 0.0%) dr: 1.3s (44.7x, 0.0%) ma: 0.5s (16.3x, 0.0%) -- tinycc -- tinycc valgrind-new:0.22s no: 3.1s (14.3x, -----) me:14.5s (66.1x, -----) ca:30.0s (136.5x, -----) he:28.0s (127.3x, -----) ca:21.3s (96.9x, -----) dr:20.4s (92.5x, -----) ma: 3.9s (17.7x, -----) tinycc valgrind-old:0.22s no: 3.4s (15.4x, -7.3%) me:14.6s (66.5x, -0.6%) ca:30.0s (136.5x, -0.1%) he:28.0s (127.3x, 0.0%) ca:21.2s (96.5x, 0.4%) dr:20.4s (92.7x, -0.2%) ma: 3.9s (17.6x, 0.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 111m43.114s user 110m20.683s sys 1m6.154s |
|
From: Tom H. <to...@co...> - 2014-08-04 03:29:32
|
valgrind revision: 14230 VEX revision: 2911 C compiler: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) GDB: Assembler: GNU assembler version 2.18.50.0.6-2 20080403 C library: GNU C Library stable release version 2.8 uname -mrs: Linux 3.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 9 (Sulphur) Nightly build on bristol ( x86_64, Fedora 9 ) Started at 2014-08-04 03:21:56 BST Ended at 2014-08-04 04:29:15 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 660 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/amd64/insn-pcmpistri (stderr) memcheck/tests/err_disable4 (stderr) none/tests/amd64/sse4-64 (stdout) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 660 tests, 3 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/amd64/insn-pcmpistri (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/proc-auxv (stderr) none/tests/amd64/sse4-64 (stdout) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2014-08-04 03:38:04.928413644 +0100 --- new.short 2014-08-04 03:53:07.749131444 +0100 *************** *** 8,13 **** ! == 660 tests, 3 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/amd64/insn-pcmpistri (stderr) memcheck/tests/err_disable4 (stderr) - memcheck/tests/linux/proc-auxv (stderr) none/tests/amd64/sse4-64 (stdout) --- 8,12 ---- ! == 660 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/amd64/insn-pcmpistri (stderr) memcheck/tests/err_disable4 (stderr) none/tests/amd64/sse4-64 (stdout) --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.5x, -----) me: 3.3s (30.4x, -----) ca:14.0s (127.1x, -----) he: 2.0s (18.0x, -----) ca: 4.4s (39.7x, -----) dr: 1.9s (17.7x, -----) ma: 2.0s (18.1x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.5x, -0.6%) me: 3.3s (30.2x, 0.6%) ca:14.1s (127.7x, -0.5%) he: 2.0s (18.0x, 0.0%) ca: 4.4s (39.8x, -0.2%) dr: 1.9s (17.5x, 1.0%) ma: 2.0s (18.2x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.2s (38.2x, -----) me: 8.9s (80.7x, -----) ca:26.1s (237.5x, -----) he: 5.2s (46.8x, -----) ca: 8.0s (72.7x, -----) dr: 4.9s (44.2x, -----) ma: 4.8s (43.9x, -----) bigcode2 valgrind-old:0.11s no: 4.2s (38.6x, -1.2%) me: 8.8s (79.8x, 1.1%) ca:25.9s (235.3x, 0.9%) he: 5.2s (47.0x, -0.4%) ca: 8.0s (72.9x, -0.2%) dr: 4.8s (43.8x, 0.8%) ma: 4.8s (44.1x, -0.4%) -- bz2 -- bz2 valgrind-new:0.59s no: 1.7s ( 2.9x, -----) me: 5.7s ( 9.7x, -----) ca:17.5s (29.6x, -----) he: 8.4s (14.2x, -----) ca:12.0s (20.3x, -----) dr:13.0s (22.0x, -----) ma: 1.8s ( 3.0x, -----) bz2 valgrind-old:0.59s no: 1.7s ( 2.9x, 0.0%) me: 5.7s ( 9.7x, -0.5%) ca:17.6s (29.7x, -0.5%) he: 8.6s (14.5x, -2.1%) ca:12.0s (20.4x, -0.2%) dr:12.9s (21.9x, 0.5%) ma: 1.7s ( 2.9x, 0.6%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.5s (16.1x, -----) ca: 5.8s (26.3x, -----) he: 2.9s (13.3x, -----) ca: 3.5s (16.0x, -----) dr: 2.9s (13.1x, -----) ma: 1.1s ( 5.0x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 0.0%) me: 3.5s (16.1x, 0.3%) ca: 5.8s (26.5x, -0.5%) he: 2.9s (13.4x, -0.3%) ca: 3.5s (15.9x, 0.6%) dr: 2.9s (13.0x, 0.3%) ma: 1.1s ( 5.0x, 0.0%) -- ffbench -- ffbench valgrind-new:0.21s no: 1.2s ( 5.7x, -----) me: 3.1s (14.8x, -----) ca: 2.2s (10.3x, -----) he: 5.2s (24.8x, -----) ca: 5.1s (24.5x, -----) dr: 3.6s (17.0x, -----) ma: 1.1s ( 5.3x, -----) ffbench valgrind-old:0.21s no: 1.2s ( 5.5x, 2.5%) me: 3.1s (14.8x, -0.3%) ca: 2.1s (10.2x, 0.5%) he: 5.5s (26.4x, -6.7%) ca: 5.0s (23.8x, 2.7%) dr: 3.6s (17.1x, -0.3%) ma: 1.1s ( 5.4x, -0.9%) -- heap -- heap valgrind-new:0.07s no: 0.6s ( 8.6x, -----) me: 5.3s (75.6x, -----) ca: 6.0s (85.3x, -----) he: 7.1s (100.9x, -----) ca: 3.5s (49.4x, -----) dr: 4.5s (63.6x, -----) ma: 4.8s (67.9x, -----) heap valgrind-old:0.07s no: 0.6s ( 8.7x, -1.7%) me: 5.3s (75.1x, 0.6%) ca: 5.9s (83.9x, 1.7%) he: 6.9s (98.4x, 2.4%) ca: 3.5s (49.4x, 0.0%) dr: 4.3s (62.0x, 2.5%) ma: 4.6s (66.3x, 2.3%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.6s ( 6.4x, -----) me: 8.6s (85.5x, -----) ca: 6.5s (64.5x, -----) he: 7.9s (78.6x, -----) ca: 3.7s (36.7x, -----) dr: 4.8s (48.1x, -----) ma: 4.8s (47.6x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.6x, -3.1%) me: 8.5s (85.1x, 0.5%) ca: 6.5s (64.7x, -0.3%) he: 7.8s (78.4x, 0.3%) ca: 3.6s (36.5x, 0.5%) dr: 4.8s (47.8x, 0.6%) ma: 4.8s (47.8x, -0.4%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (23.0x, -----) me: 1.2s (122.0x, -----) ca: 1.0s (97.0x, -----) he: 1.1s (107.0x, -----) ca: 0.6s (62.0x, -----) dr: 0.9s (89.0x, -----) ma: 0.9s (93.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (23.0x, 0.0%) me: 1.2s (123.0x, -0.8%) ca: 0.9s (92.0x, 5.2%) he: 1.1s (108.0x, -0.9%) ca: 0.6s (62.0x, 0.0%) dr: 0.9s (89.0x, 0.0%) ma: 0.9s (93.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.04s no: 0.3s ( 7.8x, -----) me: 1.7s (43.2x, -----) ca: 2.9s (72.2x, -----) he: 2.3s (57.0x, -----) ca: 1.1s (27.2x, -----) dr: 1.3s (32.2x, -----) ma: 1.4s (34.2x, -----) many-xpts valgrind-old:0.04s no: 0.3s ( 7.5x, 3.2%) me: 1.7s (43.0x, 0.6%) ca: 2.9s (72.5x, -0.3%) he: 2.1s (53.2x, 6.6%) ca: 1.1s (27.5x, -0.9%) dr: 1.3s (32.2x, 0.0%) ma: 1.4s (34.2x, 0.0%) -- sarp -- sarp valgrind-new:0.02s no: 0.2s (12.0x, -----) me: 2.4s (118.5x, -----) ca: 1.8s (88.0x, -----) he: 7.5s (373.0x, -----) ca: 0.9s (44.5x, -----) dr: 0.8s (39.5x, -----) ma: 0.3s (13.5x, -----) sarp valgrind-old:0.02s no: 0.2s (12.5x, -4.2%) me: 2.2s (108.5x, 8.4%) ca: 1.8s (88.5x, -0.6%) he: 7.4s (368.0x, 1.3%) ca: 0.9s (44.0x, 1.1%) dr: 0.8s (39.0x, 1.3%) ma: 0.2s (12.5x, 7.4%) -- tinycc -- tinycc valgrind-new:0.17s no: 1.3s ( 7.8x, -----) me: 8.9s (52.5x, -----) ca:13.1s (76.8x, -----) he:10.4s (61.3x, -----) ca: 8.4s (49.7x, -----) dr: 8.8s (51.5x, -----) ma: 2.5s (14.5x, -----) tinycc valgrind-old:0.17s no: 1.4s ( 8.2x, -5.3%) me: 9.3s (54.9x, -4.6%) ca:11.3s (66.5x, 13.3%) he:10.8s (63.8x, -4.0%) ca: 8.9s (52.3x, -5.2%) dr: 8.7s (51.4x, 0.2%) ma: 2.4s (14.4x, 0.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 36m7.463s user 35m16.988s sys 0m21.345s |
|
From: Tom H. <to...@co...> - 2014-08-04 03:25:43
|
valgrind revision: 14230 VEX revision: 2911 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.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2014-08-04 03:14:12 BST Ended at 2014-08-04 04:25:27 BST 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 == 692 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.9x, -----) me: 3.2s (29.4x, -----) ca:14.3s (129.6x, -----) he: 1.9s (17.3x, -----) ca: 3.9s (35.5x, -----) dr: 1.9s (16.9x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.9x, 0.0%) me: 3.2s (29.3x, 0.3%) ca:13.9s (126.4x, 2.5%) he: 1.9s (17.3x, 0.0%) ca: 3.9s (35.5x, 0.0%) dr: 1.9s (17.0x, -0.5%) ma: 1.9s (17.7x, 0.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.7x, -----) me: 8.2s (74.8x, -----) ca:25.1s (228.6x, -----) he: 4.8s (43.9x, -----) ca: 7.2s (65.8x, -----) dr: 4.5s (41.1x, -----) ma: 4.6s (41.6x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.5x, 0.8%) me: 8.2s (74.7x, 0.1%) ca:25.7s (233.9x, -2.3%) he: 4.8s (43.5x, 0.8%) ca: 7.3s (66.5x, -1.1%) dr: 4.6s (41.5x, -0.9%) ma: 4.6s (41.7x, -0.2%) -- bz2 -- bz2 valgrind-new:0.52s no: 2.1s ( 4.1x, -----) me: 6.1s (11.8x, -----) ca:13.8s (26.5x, -----) he: 8.7s (16.8x, -----) ca:11.5s (22.2x, -----) dr:11.2s (21.4x, -----) ma: 2.1s ( 4.0x, -----) bz2 valgrind-old:0.52s no: 2.1s ( 4.1x, 0.5%) me: 6.1s (11.7x, 1.0%) ca:13.3s (25.6x, 3.3%) he: 8.7s (16.7x, 0.5%) ca:11.6s (22.3x, -0.8%) dr:10.9s (21.0x, 2.2%) ma: 2.1s ( 4.0x, -0.5%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.6s (16.4x, -----) ca: 5.6s (25.4x, -----) he: 2.8s (12.6x, -----) ca: 3.1s (14.3x, -----) dr: 2.5s (11.1x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.5x, 1.0%) me: 3.6s (16.5x, -0.6%) ca: 5.4s (24.5x, 3.6%) he: 2.8s (12.6x, 0.0%) ca: 3.1s (14.3x, -0.3%) dr: 2.6s (11.9x, -6.5%) ma: 1.0s ( 4.7x, 1.0%) -- ffbench -- ffbench valgrind-new:0.21s no: 0.9s ( 4.4x, -----) me: 2.7s (13.0x, -----) ca: 1.9s ( 9.0x, -----) he: 5.6s (26.6x, -----) ca: 4.2s (20.0x, -----) dr: 3.2s (15.4x, -----) ma: 0.9s ( 4.2x, -----) ffbench valgrind-old:0.21s no: 0.9s ( 4.4x, 0.0%) me: 2.7s (13.0x, 0.0%) ca: 1.9s ( 8.8x, 1.6%) he: 5.1s (24.4x, 8.4%) ca: 4.2s (19.9x, 1.0%) dr: 3.2s (15.1x, 1.9%) ma: 0.9s ( 4.1x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.6x, -----) me: 5.2s (64.9x, -----) ca: 6.2s (77.5x, -----) he: 7.0s (86.9x, -----) ca: 3.3s (41.4x, -----) dr: 4.3s (53.8x, -----) ma: 4.9s (60.8x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.6x, 0.0%) me: 5.2s (64.9x, 0.0%) ca: 6.1s (76.4x, 1.5%) he: 7.0s (86.9x, 0.0%) ca: 3.3s (41.6x, -0.6%) dr: 4.4s (54.9x, -2.1%) ma: 4.8s (59.8x, 1.6%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.0x, -----) me: 8.7s (79.0x, -----) ca: 6.8s (61.9x, -----) he: 7.9s (72.1x, -----) ca: 3.6s (32.5x, -----) dr: 4.8s (44.1x, -----) ma: 5.1s (46.3x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.2x, -3.0%) me: 8.6s (77.8x, 1.5%) ca: 6.5s (59.1x, 4.6%) he: 8.0s (72.5x, -0.6%) ca: 3.5s (32.1x, 1.1%) dr: 4.8s (43.2x, 2.1%) ma: 5.0s (45.0x, 2.8%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (24.0x, -----) me: 1.2s (124.0x, -----) ca: 1.0s (100.0x, -----) he: 1.0s (103.0x, -----) ca: 0.7s (66.0x, -----) dr: 0.9s (92.0x, -----) ma: 1.0s (96.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (24.0x, 0.0%) me: 1.2s (124.0x, 0.0%) ca: 1.0s (98.0x, 2.0%) he: 1.1s (105.0x, -1.9%) ca: 0.7s (65.0x, 1.5%) dr: 0.9s (91.0x, 1.1%) ma: 0.9s (95.0x, 1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s ( 9.7x, -----) me: 1.8s (59.0x, -----) ca: 2.6s (86.7x, -----) he: 2.1s (69.3x, -----) ca: 0.9s (30.7x, -----) dr: 1.3s (44.0x, -----) ma: 1.4s (46.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s ( 9.7x, 0.0%) me: 1.8s (59.0x, 0.0%) ca: 2.6s (86.3x, 0.4%) he: 2.1s (69.0x, 0.5%) ca: 0.9s (30.7x, 0.0%) dr: 1.3s (44.0x, 0.0%) ma: 1.4s (46.7x, -0.7%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (13.0x, -----) me: 2.3s (114.0x, -----) ca: 1.7s (85.5x, -----) he: 6.2s (310.5x, -----) ca: 0.9s (44.5x, -----) dr: 0.8s (40.5x, -----) ma: 0.3s (14.0x, -----) sarp valgrind-old:0.02s no: 0.3s (13.0x, 0.0%) me: 2.2s (111.0x, 2.6%) ca: 1.7s (85.0x, 0.6%) he: 6.4s (321.0x, -3.4%) ca: 0.9s (44.5x, 0.0%) dr: 0.8s (40.5x, 0.0%) ma: 0.3s (14.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.6x, -----) me: 8.7s (54.6x, -----) ca:10.9s (68.4x, -----) he: 9.4s (58.9x, -----) ca: 7.8s (48.8x, -----) dr: 7.5s (47.2x, -----) ma: 2.5s (15.4x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.4x, 1.5%) me: 8.6s (53.5x, 2.1%) ca:10.5s (65.6x, 4.0%) he:11.2s (69.8x,-18.6%) ca: 8.4s (52.2x, -7.0%) dr: 7.8s (48.8x, -3.4%) ma: 2.4s (14.9x, 2.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 34m19.714s user 33m30.889s sys 0m20.820s |
|
From: Tom H. <to...@co...> - 2014-08-04 03:15:24
|
valgrind revision: 14230 VEX revision: 2911 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.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2014-08-04 03:01:50 BST Ended at 2014-08-04 04:15:10 BST 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 == 692 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.9x, -----) me: 3.2s (29.0x, -----) ca:14.4s (130.8x, -----) he: 2.1s (18.7x, -----) ca: 4.0s (35.9x, -----) dr: 1.9s (17.2x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.7s (15.1x, -1.2%) me: 3.2s (29.0x, 0.0%) ca:13.9s (126.8x, 3.1%) he: 1.9s (17.5x, 6.3%) ca: 3.9s (35.6x, 0.8%) dr: 1.9s (17.2x, 0.0%) ma: 1.9s (17.5x, 1.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.7x, -----) me: 8.3s (75.6x, -----) ca:26.9s (244.1x, -----) he: 4.8s (44.1x, -----) ca: 7.4s (67.2x, -----) dr: 4.6s (41.5x, -----) ma: 4.5s (41.1x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.6x, 0.3%) me: 8.3s (75.1x, 0.7%) ca:26.4s (240.5x, 1.5%) he: 4.8s (44.1x, 0.0%) ca: 7.3s (66.1x, 1.6%) dr: 4.6s (41.7x, -0.7%) ma: 4.5s (41.4x, -0.7%) -- bz2 -- bz2 valgrind-new:0.52s no: 2.1s ( 4.1x, -----) me: 6.1s (11.8x, -----) ca:13.7s (26.3x, -----) he: 9.1s (17.5x, -----) ca:11.6s (22.3x, -----) dr:11.4s (21.9x, -----) ma: 2.1s ( 4.0x, -----) bz2 valgrind-old:0.52s no: 2.1s ( 4.1x, -0.9%) me: 6.1s (11.7x, 0.5%) ca:13.3s (25.7x, 2.4%) he: 9.0s (17.2x, 1.5%) ca:11.6s (22.4x, -0.4%) dr:11.1s (21.4x, 2.3%) ma: 2.1s ( 4.0x, 0.0%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.6s (16.5x, -----) ca: 5.5s (25.0x, -----) he: 2.8s (12.5x, -----) ca: 3.2s (14.4x, -----) dr: 2.5s (11.4x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, 2.9%) me: 3.6s (16.3x, 0.8%) ca: 5.4s (24.7x, 1.3%) he: 2.8s (12.5x, -0.0%) ca: 3.2s (14.5x, -0.6%) dr: 2.6s (12.0x, -5.2%) ma: 1.1s ( 4.9x, -0.9%) -- ffbench -- ffbench valgrind-new:0.22s no: 0.9s ( 4.3x, -----) me: 2.8s (12.6x, -----) ca: 1.9s ( 8.6x, -----) he: 7.0s (31.7x, -----) ca: 4.2s (19.1x, -----) dr: 3.4s (15.6x, -----) ma: 0.9s ( 4.0x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.3x, 0.0%) me: 2.8s (12.6x, 0.0%) ca: 1.9s ( 8.5x, 1.6%) he: 6.6s (30.0x, 5.2%) ca: 4.3s (19.6x, -2.4%) dr: 3.2s (14.7x, 5.8%) ma: 0.9s ( 4.0x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 7.9x, -----) me: 5.2s (64.6x, -----) ca: 6.8s (85.5x, -----) he: 7.0s (88.1x, -----) ca: 3.4s (42.0x, -----) dr: 4.3s (53.5x, -----) ma: 4.8s (60.0x, -----) heap valgrind-old:0.08s no: 0.7s ( 8.1x, -3.2%) me: 5.2s (64.9x, -0.4%) ca: 6.6s (82.4x, 3.7%) he: 7.1s (88.2x, -0.1%) ca: 3.3s (41.8x, 0.6%) dr: 4.3s (53.6x, -0.2%) ma: 4.8s (59.8x, 0.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.4x, -----) me: 8.7s (78.6x, -----) ca: 7.3s (66.5x, -----) he: 7.8s (71.0x, -----) ca: 3.8s (34.2x, -----) dr: 5.0s (45.7x, -----) ma: 5.1s (46.1x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.4x, 0.0%) me: 8.6s (78.4x, 0.3%) ca: 7.2s (65.4x, 1.6%) he: 7.9s (71.7x, -1.0%) ca: 3.7s (33.8x, 1.1%) dr: 5.1s (46.4x, -1.4%) ma: 5.0s (45.7x, 0.8%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.2s (125.0x, -----) ca: 1.1s (107.0x, -----) he: 1.1s (107.0x, -----) ca: 0.7s (68.0x, -----) dr: 0.9s (93.0x, -----) ma: 1.0s (99.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, -4.0%) me: 1.3s (127.0x, -1.6%) ca: 1.1s (106.0x, 0.9%) he: 1.1s (109.0x, -1.9%) ca: 0.7s (68.0x, 0.0%) dr: 0.9s (94.0x, -1.1%) ma: 1.0s (98.0x, 1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.3x, -----) me: 1.8s (59.7x, -----) ca: 2.8s (92.0x, -----) he: 2.2s (72.0x, -----) ca: 1.0s (33.7x, -----) dr: 1.4s (45.0x, -----) ma: 1.4s (48.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.3x, 0.0%) me: 1.8s (60.0x, -0.6%) ca: 2.7s (91.3x, 0.7%) he: 2.2s (72.3x, -0.5%) ca: 1.0s (33.3x, 1.0%) dr: 1.4s (46.0x, -2.2%) ma: 1.5s (48.7x, -0.7%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (13.5x, -----) me: 2.4s (117.5x, -----) ca: 1.7s (86.0x, -----) he: 6.4s (322.0x, -----) ca: 1.0s (51.5x, -----) dr: 0.8s (42.0x, -----) ma: 0.3s (14.5x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, -3.7%) me: 2.3s (113.5x, 3.4%) ca: 1.7s (86.0x, 0.0%) he: 6.4s (321.0x, 0.3%) ca: 1.0s (52.0x, -1.0%) dr: 0.8s (42.0x, 0.0%) ma: 0.3s (14.5x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.9x, -----) me: 8.7s (54.6x, -----) ca:10.9s (67.9x, -----) he: 9.6s (59.8x, -----) ca: 8.1s (50.5x, -----) dr: 7.9s (49.2x, -----) ma: 2.5s (15.8x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 9.0x, -1.4%) me: 8.8s (54.8x, -0.3%) ca:10.8s (67.4x, 0.7%) he: 9.6s (59.8x, -0.1%) ca: 8.0s (49.8x, 1.4%) dr: 7.8s (48.6x, 1.4%) ma: 2.5s (15.6x, 0.8%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m20.549s user 34m24.850s sys 0m22.649s |
|
From: Tom H. <to...@co...> - 2014-08-04 03:06:00
|
valgrind revision: 14230 VEX revision: 2911 C compiler: gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) GDB: GNU gdb (GDB) Fedora (7.4.50.20120120-54.fc17) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2014-08-04 02:51:10 BST Ended at 2014-08-04 04:05:43 BST 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 == 692 tests, 5 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcmain_pic (stderr) memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.9x, -----) me: 3.4s (31.0x, -----) ca:13.9s (126.1x, -----) he: 1.9s (17.3x, -----) ca: 3.7s (33.7x, -----) dr: 1.9s (17.0x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.6x, 1.8%) me: 3.4s (30.6x, 1.2%) ca:15.3s (139.5x,-10.6%) he: 1.9s (17.4x, -0.5%) ca: 3.8s (34.1x, -1.1%) dr: 1.9s (17.0x, 0.0%) ma: 1.9s (17.6x, 0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 4.0s (36.2x, -----) me: 8.3s (75.7x, -----) ca:26.9s (244.8x, -----) he: 4.8s (43.5x, -----) ca: 7.1s (64.2x, -----) dr: 4.5s (40.6x, -----) ma: 4.6s (41.5x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.6x, 1.5%) me: 8.5s (77.0x, -1.7%) ca:25.8s (234.6x, 4.2%) he: 4.8s (43.9x, -0.8%) ca: 7.1s (64.2x, 0.0%) dr: 4.6s (41.5x, -2.0%) ma: 4.5s (41.2x, 0.7%) -- bz2 -- bz2 valgrind-new:0.52s no: 2.1s ( 4.1x, -----) me: 6.7s (12.8x, -----) ca:12.9s (24.7x, -----) he: 8.9s (17.1x, -----) ca:11.2s (21.4x, -----) dr:11.6s (22.3x, -----) ma: 2.1s ( 4.1x, -----) bz2 valgrind-old:0.52s no: 2.1s ( 4.1x, 0.5%) me: 6.4s (12.3x, 4.2%) ca:12.9s (24.8x, -0.2%) he: 8.9s (17.1x, -0.2%) ca:11.1s (21.3x, 0.6%) dr:11.7s (22.4x, -0.8%) ma: 2.1s ( 4.1x, 0.5%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.6x, -----) me: 3.4s (15.6x, -----) ca: 5.5s (25.0x, -----) he: 2.7s (12.5x, -----) ca: 3.0s (13.5x, -----) dr: 2.4s (10.9x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, -2.0%) me: 3.4s (15.6x, -0.3%) ca: 5.5s (25.0x, 0.4%) he: 2.7s (12.2x, 1.8%) ca: 3.0s (13.5x, -0.3%) dr: 2.4s (10.9x, -0.4%) ma: 1.1s ( 4.9x, 0.0%) -- ffbench -- ffbench valgrind-new:0.22s no: 0.9s ( 4.3x, -----) me: 2.9s (13.0x, -----) ca: 1.9s ( 8.4x, -----) he: 6.9s (31.4x, -----) ca: 4.0s (18.2x, -----) dr: 3.4s (15.2x, -----) ma: 0.9s ( 4.1x, -----) ffbench valgrind-old:0.22s no: 0.9s ( 4.3x, -1.1%) me: 2.8s (12.7x, 2.1%) ca: 1.8s ( 8.4x, 0.5%) he: 6.1s (27.5x, 12.3%) ca: 4.0s (18.0x, 1.2%) dr: 3.3s (14.8x, 2.7%) ma: 0.9s ( 4.0x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.6s ( 8.0x, -----) me: 5.3s (66.4x, -----) ca: 6.0s (75.0x, -----) he: 6.7s (84.2x, -----) ca: 3.1s (39.2x, -----) dr: 4.4s (54.8x, -----) ma: 5.0s (62.0x, -----) heap valgrind-old:0.08s no: 0.7s ( 8.1x, -1.6%) me: 5.3s (65.9x, 0.8%) ca: 6.0s (75.0x, 0.0%) he: 6.8s (85.5x, -1.5%) ca: 3.2s (39.5x, -0.6%) dr: 4.2s (52.5x, 4.1%) ma: 5.1s (63.5x, -2.4%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.11s no: 0.7s ( 6.3x, -----) me: 9.3s (84.7x, -----) ca: 6.7s (60.7x, -----) he: 7.8s (70.6x, -----) ca: 3.5s (32.2x, -----) dr: 5.0s (45.0x, -----) ma: 5.1s (46.4x, -----) heap_pdb4 valgrind-old:0.11s no: 0.7s ( 6.4x, -1.4%) me: 9.4s (85.1x, -0.4%) ca: 6.6s (60.3x, 0.7%) he: 7.8s (71.1x, -0.6%) ca: 3.5s (31.8x, 1.1%) dr: 4.9s (44.5x, 1.2%) ma: 5.2s (47.5x, -2.4%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.2s (25.0x, -----) me: 1.3s (127.0x, -----) ca: 1.0s (102.0x, -----) he: 1.1s (112.0x, -----) ca: 0.6s (63.0x, -----) dr: 1.0s (98.0x, -----) ma: 1.1s (106.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 0.0%) me: 1.4s (135.0x, -6.3%) ca: 1.0s (101.0x, 1.0%) he: 1.1s (112.0x, 0.0%) ca: 0.7s (65.0x, -3.2%) dr: 1.0s (100.0x, -2.0%) ma: 1.1s (105.0x, 0.9%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.8s (58.7x, -----) ca: 2.6s (87.3x, -----) he: 2.2s (73.3x, -----) ca: 0.9s (30.3x, -----) dr: 1.4s (48.0x, -----) ma: 1.5s (51.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 0.0%) me: 1.8s (58.7x, 0.0%) ca: 2.6s (88.0x, -0.8%) he: 2.2s (73.7x, -0.5%) ca: 0.9s (30.3x, 0.0%) dr: 1.4s (47.3x, 1.4%) ma: 1.6s (51.7x, -1.3%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.4s (121.0x, -----) ca: 1.7s (85.0x, -----) he: 7.3s (366.0x, -----) ca: 0.9s (43.0x, -----) dr: 0.9s (44.5x, -----) ma: 0.3s (15.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.0x, 0.0%) me: 2.1s (103.5x, 14.5%) ca: 1.7s (85.0x, 0.0%) he: 7.2s (361.0x, 1.4%) ca: 0.9s (43.5x, -1.2%) dr: 0.9s (44.5x, 0.0%) ma: 0.3s (15.0x, 0.0%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.6x, -----) me: 8.3s (51.7x, -----) ca:10.6s (66.5x, -----) he:10.0s (62.3x, -----) ca: 7.5s (46.8x, -----) dr: 7.5s (46.9x, -----) ma: 2.5s (15.4x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.4x, 1.5%) me: 8.4s (52.4x, -1.2%) ca:10.6s (66.4x, 0.1%) he:10.0s (62.3x, 0.0%) ca: 7.5s (46.9x, -0.3%) dr: 7.5s (47.1x, -0.3%) ma: 2.5s (15.4x, 0.0%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m0.374s user 33m59.193s sys 0m22.540s |
|
From: Tom H. <to...@co...> - 2014-08-04 02:55:02
|
valgrind revision: 14230 VEX revision: 2911 C compiler: gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8) GDB: GNU gdb (GDB) Fedora 7.5.1-42.fc18 Assembler: GNU assembler version 2.23.51.0.1-10.fc18 20120806 C library: GNU C Library stable release version 2.16 uname -mrs: Linux 3.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 18 (Spherical Cow) Nightly build on bristol ( x86_64, Fedora 18 (Spherical Cow) ) Started at 2014-08-04 02:41:28 BST Ended at 2014-08-04 03:54:46 BST 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 == 692 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (15.0x, -----) me: 3.2s (29.1x, -----) ca:13.3s (121.1x, -----) he: 1.9s (17.4x, -----) ca: 3.7s (33.9x, -----) dr: 1.9s (16.8x, -----) ma: 1.9s (17.7x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.9x, 0.6%) me: 3.2s (29.5x, -1.6%) ca:13.1s (118.7x, 2.0%) he: 1.9s (17.5x, -1.0%) ca: 3.7s (34.0x, -0.3%) dr: 1.9s (17.0x, -1.1%) ma: 1.9s (17.5x, 1.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.9s (35.4x, -----) me: 8.2s (75.0x, -----) ca:28.5s (259.3x, -----) he: 5.3s (48.0x, -----) ca: 7.8s (71.0x, -----) dr: 4.7s (42.4x, -----) ma: 4.6s (41.5x, -----) bigcode2 valgrind-old:0.11s no: 4.3s (39.5x,-11.6%) me: 9.7s (87.9x,-17.2%) ca:27.8s (252.3x, 2.7%) he: 4.8s (43.5x, 9.5%) ca: 7.2s (65.0x, 8.5%) dr: 5.0s (45.2x, -6.7%) ma: 5.0s (45.4x, -9.2%) -- bz2 -- bz2 valgrind-new:0.52s no: 2.1s ( 4.1x, -----) me: 6.5s (12.4x, -----) ca:13.4s (25.7x, -----) he: 9.4s (18.1x, -----) ca:12.5s (24.0x, -----) dr:12.2s (23.4x, -----) ma: 2.1s ( 4.1x, -----) bz2 valgrind-old:0.52s no: 2.2s ( 4.2x, -2.8%) me: 6.3s (12.1x, 2.5%) ca:12.8s (24.7x, 3.8%) he: 8.9s (17.2x, 5.2%) ca:11.3s (21.8x, 9.1%) dr:11.7s (22.4x, 4.3%) ma: 2.1s ( 4.1x, -1.4%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.7x, -----) me: 3.5s (15.7x, -----) ca: 5.6s (25.3x, -----) he: 2.8s (12.5x, -----) ca: 3.1s (14.2x, -----) dr: 2.4s (11.0x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 0.0%) me: 3.5s (15.8x, -0.3%) ca: 5.5s (25.1x, 0.7%) he: 2.7s (12.3x, 2.2%) ca: 3.1s (14.0x, 1.6%) dr: 2.5s (11.1x, -0.8%) ma: 1.1s ( 4.9x, -2.9%) -- ffbench -- ffbench valgrind-new:0.24s no: 1.0s ( 4.0x, -----) me: 2.8s (11.8x, -----) ca: 1.9s ( 7.8x, -----) he: 7.5s (31.4x, -----) ca: 4.2s (17.4x, -----) dr: 3.3s (13.8x, -----) ma: 0.9s ( 3.8x, -----) ffbench valgrind-old:0.24s no: 1.0s ( 4.0x, 0.0%) me: 2.9s (11.9x, -1.1%) ca: 1.9s ( 7.8x, -1.1%) he: 7.4s (30.8x, 1.7%) ca: 4.1s (17.2x, 1.2%) dr: 3.4s (14.1x, -2.4%) ma: 0.9s ( 3.8x, 0.0%) -- heap -- heap valgrind-new:0.08s no: 0.7s ( 8.1x, -----) me: 5.3s (66.1x, -----) ca: 6.1s (76.8x, -----) he: 6.8s (85.4x, -----) ca: 3.2s (40.4x, -----) dr: 4.7s (58.4x, -----) ma: 5.4s (67.2x, -----) heap valgrind-old:0.08s no: 0.7s ( 8.4x, -3.1%) me: 5.4s (67.2x, -1.7%) ca: 6.2s (77.6x, -1.1%) he: 7.0s (87.2x, -2.2%) ca: 3.2s (40.2x, 0.3%) dr: 4.5s (56.5x, 3.2%) ma: 5.0s (62.0x, 7.8%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 7.0x, -----) me: 9.0s (90.3x, -----) ca: 6.7s (67.0x, -----) he: 7.9s (79.4x, -----) ca: 3.6s (35.9x, -----) dr: 5.3s (53.3x, -----) ma: 5.2s (52.2x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 6.9x, 1.4%) me: 9.1s (90.5x, -0.2%) ca: 6.7s (67.4x, -0.6%) he: 7.9s (79.4x, 0.0%) ca: 3.6s (36.3x, -1.1%) dr: 5.1s (50.9x, 4.5%) ma: 5.1s (51.2x, 1.9%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.3s (131.0x, -----) ca: 1.0s (100.0x, -----) he: 1.1s (110.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.0s (100.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (26.0x, 0.0%) me: 1.3s (133.0x, -1.5%) ca: 1.0s (101.0x, -1.0%) he: 1.1s (112.0x, -1.8%) ca: 0.7s (67.0x, -1.5%) dr: 1.1s (106.0x, -6.0%) ma: 1.1s (106.0x, -1.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (11.0x, -----) me: 1.8s (59.3x, -----) ca: 2.6s (87.3x, -----) he: 2.2s (73.7x, -----) ca: 0.9s (30.3x, -----) dr: 1.5s (49.0x, -----) ma: 1.6s (53.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (10.7x, 3.0%) me: 1.8s (59.0x, 0.6%) ca: 2.6s (87.0x, 0.4%) he: 2.2s (73.0x, 0.9%) ca: 0.9s (30.0x, 1.1%) dr: 1.5s (48.7x, 0.7%) ma: 1.6s (52.7x, 1.2%) -- sarp -- sarp valgrind-new:0.01s no: 0.3s (28.0x, -----) me: 2.0s (205.0x, -----) ca: 1.7s (170.0x, -----) he: 7.3s (729.0x, -----) ca: 0.9s (90.0x, -----) dr: 0.9s (89.0x, -----) ma: 0.3s (31.0x, -----) sarp valgrind-old:0.01s no: 0.3s (29.0x, -3.6%) me: 2.3s (230.0x,-12.2%) ca: 1.7s (172.0x, -1.2%) he: 7.2s (723.0x, 0.8%) ca: 0.9s (88.0x, 2.2%) dr: 0.9s (89.0x, 0.0%) ma: 0.3s (30.0x, 3.2%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.7x, -----) me: 8.6s (53.9x, -----) ca:10.7s (67.0x, -----) he: 9.7s (60.8x, -----) ca: 7.6s (47.3x, -----) dr: 7.5s (46.6x, -----) ma: 2.5s (15.6x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.4x, 2.9%) me: 8.6s (54.0x, -0.1%) ca:10.7s (66.9x, 0.2%) he: 9.6s (60.1x, 1.1%) ca: 7.9s (49.2x, -4.1%) dr: 7.7s (47.8x, -2.7%) ma: 2.5s (15.5x, 0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 36m14.170s user 35m3.967s sys 0m24.033s |
|
From: Tom H. <to...@co...> - 2014-08-04 02:44:54
|
valgrind revision: 14230 VEX revision: 2911 C compiler: gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1) 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.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 19 (Schrödingerâs Cat) Nightly build on bristol ( x86_64, Fedora 19 (Schrödingerâs Cat) ) Started at 2014-08-04 02:31:38 BST Ended at 2014-08-04 03:44:25 BST 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 == 692 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/hackedbz2 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.5x, -----) me: 3.2s (28.8x, -----) ca:13.3s (121.0x, -----) he: 1.9s (17.0x, -----) ca: 3.8s (34.5x, -----) dr: 1.8s (16.6x, -----) ma: 1.9s (17.6x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.6x, -0.6%) me: 3.2s (29.0x, -0.6%) ca:13.3s (120.5x, 0.4%) he: 1.9s (17.1x, -0.5%) ca: 3.8s (34.5x, 0.0%) dr: 1.9s (16.9x, -1.6%) ma: 1.9s (17.5x, 1.0%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.8s (34.5x, -----) me: 8.1s (73.5x, -----) ca:25.1s (228.5x, -----) he: 4.7s (42.5x, -----) ca: 7.0s (63.8x, -----) dr: 4.3s (39.5x, -----) ma: 4.4s (40.0x, -----) bigcode2 valgrind-old:0.11s no: 3.8s (34.9x, -1.3%) me: 8.2s (74.4x, -1.1%) ca:26.7s (242.4x, -6.0%) he: 4.7s (42.5x, 0.2%) ca: 7.0s (63.7x, 0.1%) dr: 4.5s (40.5x, -2.5%) ma: 4.4s (39.9x, 0.2%) -- bz2 -- bz2 valgrind-new:0.49s no: 2.0s ( 4.2x, -----) me: 6.3s (12.9x, -----) ca:13.1s (26.7x, -----) he: 9.3s (19.0x, -----) ca:10.9s (22.3x, -----) dr:11.3s (23.1x, -----) ma: 2.1s ( 4.2x, -----) bz2 valgrind-old:0.49s no: 2.0s ( 4.1x, 1.5%) me: 6.1s (12.5x, 3.3%) ca:13.1s (26.7x, 0.0%) he: 9.3s (19.0x, 0.1%) ca:11.3s (23.1x, -3.4%) dr:11.9s (24.4x, -5.7%) ma: 2.1s ( 4.3x, -3.4%) -- fbench -- fbench valgrind-new:0.22s no: 1.1s ( 5.0x, -----) me: 3.3s (15.1x, -----) ca: 6.4s (29.1x, -----) he: 2.6s (11.7x, -----) ca: 3.5s (16.0x, -----) dr: 2.4s (10.8x, -----) ma: 1.1s ( 4.9x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.7x, 7.2%) me: 3.4s (15.2x, -0.6%) ca: 5.8s (26.4x, 9.4%) he: 2.5s (11.4x, 2.7%) ca: 3.2s (14.7x, 7.7%) dr: 2.4s (11.1x, -3.0%) ma: 1.1s ( 4.9x, 0.0%) -- ffbench -- ffbench valgrind-new:0.25s no: 1.0s ( 3.9x, -----) me: 2.9s (11.7x, -----) ca: 2.0s ( 7.9x, -----) he: 6.8s (27.0x, -----) ca: 4.6s (18.4x, -----) dr: 3.3s (13.2x, -----) ma: 0.9s ( 3.7x, -----) ffbench valgrind-old:0.25s no: 1.0s ( 3.9x, 0.0%) me: 2.8s (11.2x, 4.1%) ca: 2.0s ( 7.8x, 0.5%) he: 6.7s (26.7x, 1.0%) ca: 5.0s (20.1x, -9.4%) dr: 3.6s (14.2x, -7.9%) ma: 0.9s ( 3.7x, -1.1%) -- heap -- heap valgrind-new:0.10s no: 0.6s ( 6.4x, -----) me: 5.0s (49.9x, -----) ca: 6.2s (62.0x, -----) he: 6.8s (67.7x, -----) ca: 3.3s (33.4x, -----) dr: 4.4s (43.9x, -----) ma: 4.8s (48.2x, -----) heap valgrind-old:0.10s no: 0.7s ( 6.5x, -1.6%) me: 5.0s (50.3x, -0.8%) ca: 6.7s (66.8x, -7.7%) he: 7.6s (75.6x,-11.7%) ca: 3.2s (32.1x, 3.9%) dr: 4.5s (45.4x, -3.4%) ma: 5.0s (50.5x, -4.8%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 7.0x, -----) me: 8.8s (88.3x, -----) ca: 6.9s (69.0x, -----) he: 7.8s (78.0x, -----) ca: 3.6s (35.6x, -----) dr: 4.9s (48.9x, -----) ma: 5.2s (52.0x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 7.1x, -1.4%) me: 8.7s (87.2x, 1.2%) ca: 6.8s (68.5x, 0.7%) he: 7.7s (77.1x, 1.2%) ca: 3.6s (35.6x, 0.0%) dr: 4.8s (47.5x, 2.9%) ma: 5.1s (51.1x, 1.7%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.3s (134.0x, -----) ca: 1.0s (101.0x, -----) he: 1.1s (110.0x, -----) ca: 0.7s (66.0x, -----) dr: 1.0s (99.0x, -----) ma: 1.1s (105.0x, -----) many-loss-records valgrind-old:0.01s no: 0.3s (27.0x, -3.8%) me: 1.3s (126.0x, 6.0%) ca: 1.0s (100.0x, 1.0%) he: 1.1s (110.0x, 0.0%) ca: 0.7s (67.0x, -1.5%) dr: 1.0s (97.0x, 2.0%) ma: 1.1s (105.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.5s (49.0x, -----) ca: 2.5s (84.7x, -----) he: 2.0s (68.3x, -----) ca: 0.9s (31.7x, -----) dr: 1.4s (46.7x, -----) ma: 1.6s (52.3x, -----) many-xpts valgrind-old:0.03s no: 0.3s (11.0x, -3.1%) me: 1.4s (48.3x, 1.4%) ca: 2.6s (86.3x, -2.0%) he: 2.0s (68.0x, 0.5%) ca: 0.9s (31.7x, 0.0%) dr: 1.4s (46.0x, 1.4%) ma: 1.6s (52.0x, 0.6%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.5x, -----) me: 2.1s (106.0x, -----) ca: 1.7s (86.5x, -----) he: 6.0s (300.0x, -----) ca: 0.9s (46.0x, -----) dr: 0.9s (46.0x, -----) ma: 0.3s (15.5x, -----) sarp valgrind-old:0.02s no: 0.3s (14.5x, 0.0%) me: 2.2s (108.5x, -2.4%) ca: 1.7s (86.5x, 0.0%) he: 6.2s (307.5x, -2.5%) ca: 0.9s (46.0x, 0.0%) dr: 0.9s (46.0x, 0.0%) ma: 0.3s (15.0x, 3.2%) -- tinycc -- tinycc valgrind-new:0.16s no: 1.4s ( 8.7x, -----) me: 7.8s (48.4x, -----) ca:10.9s (67.9x, -----) he: 9.6s (59.9x, -----) ca: 7.9s (49.2x, -----) dr: 8.2s (51.6x, -----) ma: 2.5s (15.3x, -----) tinycc valgrind-old:0.16s no: 1.4s ( 8.8x, -0.7%) me: 7.8s (48.5x, -0.1%) ca:10.8s (67.6x, 0.5%) he: 9.9s (61.9x, -3.2%) ca: 7.9s (49.1x, 0.1%) dr: 7.9s (49.5x, 4.0%) ma: 2.4s (15.2x, 0.4%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m44.984s user 34m28.453s sys 0m24.936s |
|
From: Tom H. <to...@co...> - 2014-08-04 02:34:31
|
valgrind revision: 14230 VEX revision: 2911 C compiler: gcc (GCC) 4.8.3 20140624 (Red Hat 4.8.3-1) GDB: GNU gdb (GDB) Fedora 7.7.1-17.fc20 Assembler: GNU assembler version 2.23.2 C library: GNU C Library (GNU libc) stable release version 2.18 uname -mrs: Linux 3.15.3-200.fc20.x86_64 x86_64 Vendor version: Fedora release 20 (Heisenbug) Nightly build on bristol ( x86_64, Fedora 20 ) Started at 2014-08-04 02:21:25 BST Ended at 2014-08-04 03:33:58 BST 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 == 692 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) exp-sgcheck/tests/hackedbz2 (stderr) --tools=none,memcheck,callgrind,helgrind,cachegrind,drd,massif --reps=3 --vg=../valgrind-new --vg=../valgrind-old -- Running tests in perf ---------------------------------------------- -- bigcode1 -- bigcode1 valgrind-new:0.11s no: 1.6s (14.7x, -----) me: 3.1s (28.3x, -----) ca:13.3s (120.5x, -----) he: 1.9s (17.0x, -----) ca: 3.7s (34.0x, -----) dr: 1.8s (16.5x, -----) ma: 1.9s (17.3x, -----) bigcode1 valgrind-old:0.11s no: 1.6s (14.8x, -0.6%) me: 3.1s (28.4x, -0.3%) ca:13.2s (119.7x, 0.7%) he: 1.9s (16.8x, 1.1%) ca: 3.8s (34.3x, -0.8%) dr: 1.8s (16.5x, 0.5%) ma: 1.9s (17.4x, -0.5%) -- bigcode2 -- bigcode2 valgrind-new:0.11s no: 3.8s (34.7x, -----) me: 8.1s (73.5x, -----) ca:26.2s (237.9x, -----) he: 4.7s (42.5x, -----) ca: 7.0s (64.0x, -----) dr: 4.4s (40.4x, -----) ma: 4.4s (40.3x, -----) bigcode2 valgrind-old:0.11s no: 3.9s (35.1x, -1.0%) me: 8.1s (73.5x, -0.1%) ca:26.1s (237.5x, 0.2%) he: 4.7s (42.3x, 0.4%) ca: 7.0s (64.0x, 0.0%) dr: 4.4s (40.0x, 0.9%) ma: 4.3s (39.5x, 1.8%) -- bz2 -- bz2 valgrind-new:0.51s no: 2.1s ( 4.0x, -----) me: 6.1s (12.0x, -----) ca:13.1s (25.7x, -----) he: 8.9s (17.4x, -----) ca:10.8s (21.2x, -----) dr:11.0s (21.6x, -----) ma: 2.1s ( 4.1x, -----) bz2 valgrind-old:0.51s no: 2.1s ( 4.0x, 0.0%) me: 6.1s (12.0x, -0.5%) ca:13.0s (25.5x, 0.7%) he: 8.8s (17.3x, 0.9%) ca:10.7s (21.0x, 0.7%) dr:11.0s (21.5x, 0.5%) ma: 2.1s ( 4.1x, 0.5%) -- fbench -- fbench valgrind-new:0.22s no: 1.0s ( 4.5x, -----) me: 3.5s (16.1x, -----) ca: 5.5s (25.0x, -----) he: 2.6s (11.7x, -----) ca: 3.0s (13.8x, -----) dr: 2.4s (10.8x, -----) ma: 1.1s ( 4.8x, -----) fbench valgrind-old:0.22s no: 1.0s ( 4.6x, -1.0%) me: 3.5s (15.8x, 2.0%) ca: 5.5s (24.8x, 0.5%) he: 2.6s (11.7x, 0.0%) ca: 3.0s (13.6x, 1.3%) dr: 2.4s (10.9x, -0.8%) ma: 1.1s ( 4.8x, -1.0%) -- ffbench -- ffbench valgrind-new:0.23s no: 1.0s ( 4.2x, -----) me: 2.9s (12.5x, -----) ca: 1.9s ( 8.3x, -----) he: 6.8s (29.8x, -----) ca: 4.9s (21.3x, -----) dr: 3.4s (14.7x, -----) ma: 0.9s ( 4.0x, -----) ffbench valgrind-old:0.23s no: 1.0s ( 4.2x, 0.0%) me: 2.8s (12.3x, 1.0%) ca: 1.9s ( 8.3x, -1.1%) he: 6.7s (29.2x, 2.0%) ca: 4.4s (19.3x, 9.4%) dr: 3.1s (13.7x, 6.5%) ma: 0.9s ( 3.9x, 1.1%) -- heap -- heap valgrind-new:0.08s no: 0.7s ( 8.1x, -----) me: 5.0s (63.0x, -----) ca: 6.1s (76.2x, -----) he: 7.1s (88.4x, -----) ca: 3.2s (40.4x, -----) dr: 4.2s (52.5x, -----) ma: 4.8s (59.9x, -----) heap valgrind-old:0.08s no: 0.6s ( 7.9x, 3.1%) me: 5.0s (62.1x, 1.4%) ca: 6.1s (76.1x, 0.2%) he: 6.8s (85.2x, 3.5%) ca: 3.3s (40.8x, -0.9%) dr: 4.2s (52.9x, -0.7%) ma: 4.7s (59.1x, 1.3%) -- heap_pdb4 -- heap_pdb4 valgrind-new:0.10s no: 0.7s ( 6.9x, -----) me: 8.6s (85.8x, -----) ca: 6.8s (67.8x, -----) he: 7.6s (75.9x, -----) ca: 3.6s (36.5x, -----) dr: 5.1s (50.8x, -----) ma: 5.2s (52.4x, -----) heap_pdb4 valgrind-old:0.10s no: 0.7s ( 7.2x, -4.3%) me: 9.7s (97.1x,-13.2%) ca: 7.6s (75.9x,-11.9%) he: 8.9s (89.2x,-17.5%) ca: 4.0s (39.8x, -9.0%) dr: 4.8s (48.4x, 4.7%) ma: 5.1s (51.0x, 2.7%) -- many-loss-records -- many-loss-records valgrind-new:0.01s no: 0.3s (26.0x, -----) me: 1.3s (133.0x, -----) ca: 1.0s (104.0x, -----) he: 1.1s (111.0x, -----) ca: 0.7s (65.0x, -----) dr: 1.0s (98.0x, -----) ma: 1.1s (107.0x, -----) many-loss-records valgrind-old:0.01s no: 0.2s (25.0x, 3.8%) me: 1.3s (130.0x, 2.3%) ca: 1.0s (100.0x, 3.8%) he: 1.1s (111.0x, 0.0%) ca: 0.7s (66.0x, -1.5%) dr: 1.0s (102.0x, -4.1%) ma: 1.1s (107.0x, 0.0%) -- many-xpts -- many-xpts valgrind-new:0.03s no: 0.3s (10.7x, -----) me: 1.7s (55.7x, -----) ca: 2.6s (85.7x, -----) he: 2.1s (70.0x, -----) ca: 0.9s (31.3x, -----) dr: 1.4s (46.3x, -----) ma: 1.6s (53.0x, -----) many-xpts valgrind-old:0.03s no: 0.3s (11.7x, -9.4%) me: 1.5s (49.3x, 11.4%) ca: 2.6s (85.3x, 0.4%) he: 2.1s (69.3x, 1.0%) ca: 0.9s (31.3x, 0.0%) dr: 1.4s (45.7x, 1.4%) ma: 1.6s (52.0x, 1.9%) -- sarp -- sarp valgrind-new:0.02s no: 0.3s (14.0x, -----) me: 2.2s (110.0x, -----) ca: 1.7s (86.5x, -----) he: 6.0s (299.5x, -----) ca: 0.9s (46.0x, -----) dr: 0.9s (47.0x, -----) ma: 0.3s (16.0x, -----) sarp valgrind-old:0.02s no: 0.3s (14.5x, -3.6%) me: 2.2s (111.5x, -1.4%) ca: 1.8s (90.5x, -4.6%) he: 6.4s (321.5x, -7.3%) ca: 0.9s (45.5x, 1.1%) dr: 0.9s (46.5x, 1.1%) ma: 0.3s (15.0x, 6.2%) -- tinycc -- tinycc valgrind-new:0.15s no: 1.4s ( 9.2x, -----) me: 8.6s (57.3x, -----) ca:11.2s (74.3x, -----) he:10.7s (71.4x, -----) ca: 8.2s (54.3x, -----) dr: 8.7s (57.9x, -----) ma: 2.6s (17.3x, -----) tinycc valgrind-old:0.15s no: 1.4s ( 9.0x, 2.2%) me: 8.6s (57.4x, -0.2%) ca:10.6s (70.8x, 4.8%) he: 9.5s (63.6x, 10.9%) ca: 8.1s (53.9x, 0.9%) dr: 8.1s (53.9x, 6.8%) ma: 2.5s (16.6x, 3.9%) -- Finished tests in perf ---------------------------------------------- == 11 programs, 154 timings ================= real 35m34.026s user 34m1.931s sys 0m24.869s |