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
(5) |
2
|
3
|
|
4
(2) |
5
|
6
|
7
(2) |
8
(2) |
9
(6) |
10
(1) |
|
11
(2) |
12
|
13
(3) |
14
|
15
(3) |
16
(1) |
17
|
|
18
(6) |
19
|
20
|
21
(2) |
22
|
23
|
24
|
|
25
|
26
|
27
|
28
(1) |
29
(2) |
30
|
31
|
|
From: Julian S. <se...@so...> - 2018-03-09 17:57:47
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=ec34f1a35b27d38ba9a2dfab7b717d5b4f56a69d commit ec34f1a35b27d38ba9a2dfab7b717d5b4f56a69d Author: Julian Seward <js...@ac...> Date: Fri Mar 9 18:55:57 2018 +0100 Add spec rules so as to complete the set {BE/NBE, B/NB, Z/NZ and P/NP} after COPY. These are primarily used in floating point comparisons. Diff: --- VEX/priv/guest_amd64_helpers.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/VEX/priv/guest_amd64_helpers.c b/VEX/priv/guest_amd64_helpers.c index e3bac96..a53419a 100644 --- a/VEX/priv/guest_amd64_helpers.c +++ b/VEX/priv/guest_amd64_helpers.c @@ -1768,8 +1768,8 @@ IRExpr* guest_amd64_spechelper ( const HChar* function_name, /* This can happen, as a result of amd64 FP compares: "comisd ... ; jbe" for example. */ - if (isU64(cc_op, AMD64G_CC_OP_COPY) && - (isU64(cond, AMD64CondBE) || isU64(cond, AMD64CondNBE))) { + if (isU64(cc_op, AMD64G_CC_OP_COPY) + && (isU64(cond, AMD64CondBE) || isU64(cond, AMD64CondNBE))) { /* COPY, then BE --> extract C and Z from dep1, and test (C or Z == 1). */ /* COPY, then NBE --> extract C and Z from dep1, and test (C @@ -1794,19 +1794,22 @@ IRExpr* guest_amd64_spechelper ( const HChar* function_name, ); } - if (isU64(cc_op, AMD64G_CC_OP_COPY) && isU64(cond, AMD64CondB)) { - /* COPY, then B --> extract C dep1, and test (C == 1). */ + if (isU64(cc_op, AMD64G_CC_OP_COPY) + && (isU64(cond, AMD64CondB) || isU64(cond, AMD64CondNB))) { + /* COPY, then B --> extract C from dep1, and test (C == 1). */ + /* COPY, then NB --> extract C from dep1, and test (C == 0). */ + ULong nnn = isU64(cond, AMD64CondB) ? 1 : 0; return unop( Iop_1Uto64, binop( - Iop_CmpNE64, + Iop_CmpEQ64, binop( Iop_And64, binop(Iop_Shr64, cc_dep1, mkU8(AMD64G_CC_SHIFT_C)), mkU64(1) ), - mkU64(0) + mkU64(nnn) ) ); } @@ -1815,7 +1818,7 @@ IRExpr* guest_amd64_spechelper ( const HChar* function_name, && (isU64(cond, AMD64CondZ) || isU64(cond, AMD64CondNZ))) { /* COPY, then Z --> extract Z from dep1, and test (Z == 1). */ /* COPY, then NZ --> extract Z from dep1, and test (Z == 0). */ - UInt nnn = isU64(cond, AMD64CondZ) ? 1 : 0; + ULong nnn = isU64(cond, AMD64CondZ) ? 1 : 0; return unop( Iop_1Uto64, @@ -1831,19 +1834,22 @@ IRExpr* guest_amd64_spechelper ( const HChar* function_name, ); } - if (isU64(cc_op, AMD64G_CC_OP_COPY) && isU64(cond, AMD64CondP)) { + if (isU64(cc_op, AMD64G_CC_OP_COPY) + && (isU64(cond, AMD64CondP) || isU64(cond, AMD64CondNP))) { /* COPY, then P --> extract P from dep1, and test (P == 1). */ + /* COPY, then NP --> extract P from dep1, and test (P == 0). */ + ULong nnn = isU64(cond, AMD64CondP) ? 1 : 0; return unop( Iop_1Uto64, binop( - Iop_CmpNE64, + Iop_CmpEQ64, binop( Iop_And64, binop(Iop_Shr64, cc_dep1, mkU8(AMD64G_CC_SHIFT_P)), mkU64(1) ), - mkU64(0) + mkU64(nnn) ) ); } |
|
From: Julian S. <se...@so...> - 2018-03-09 17:53:25
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=c182a3c8758a218cee45fc55e20e29de597f08a4 commit c182a3c8758a218cee45fc55e20e29de597f08a4 Author: Julian Seward <js...@ac...> Date: Fri Mar 9 18:51:39 2018 +0100 MEMMOVE_OR_MEMCPY: unroll word-copying loops in the hope of a small speedup. Diff: --- shared/vg_replace_strmem.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/shared/vg_replace_strmem.c b/shared/vg_replace_strmem.c index 215ab7f..d6927f0 100644 --- a/shared/vg_replace_strmem.c +++ b/shared/vg_replace_strmem.c @@ -964,6 +964,11 @@ static inline void my_exit ( int x ) while ((s & WM) != 0 && n >= 1) \ { *(UChar*)d = *(UChar*)s; s += 1; d += 1; n -= 1; } \ /* Copy UWords. */ \ + while (n >= WS * 4) \ + { *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; \ + *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; \ + *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; \ + *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; } \ while (n >= WS) \ { *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; } \ if (n == 0) \ @@ -991,6 +996,11 @@ static inline void my_exit ( int x ) while ((s & WM) != 0 && n >= 1) \ { s -= 1; d -= 1; *(UChar*)d = *(UChar*)s; n -= 1; } \ /* Copy UWords. */ \ + while (n >= WS * 4) \ + { s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; \ + s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; \ + s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; \ + s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; } \ while (n >= WS) \ { s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; } \ if (n == 0) \ |
|
From: Paul F. <pj...@wa...> - 2018-03-08 20:07:21
|
Hi Recently there was the question of removing exp-sgcheck. I was using dhat recently, and was wondering if it should be ‘promoted’ to plain dhat? I was also thinking about the output for types like the C++ std::vector (or a C malloc’d array). In the case where the data is allocated in many small chunks there is a dump of the aggregate access counts (this works well with something like an std::map). However, for a std::vector the allocation is usually either done all at once when the object is created (using reserve() or an appropriate constructor) or else the memory gets reallocated with exponentially growing size if elements are added using push_back(). Would it be feasible to indicate the element size for the allocated memory so that the aggregate counts could be generated per vector/array element? A+ Paul |
|
From: Paul F. <pj...@wa...> - 2018-03-08 07:51:59
|
> On 7 Mar 2018, at 22:28, Phil Longstaff <plo...@sa...> wrote: > > Before you do that, I created a bit of a merge mess in the freebsd branch and need to clean it up. > Hi Phil OK, let me know when you’ve done. A+ Paul |
|
From: Phil L. <plo...@sa...> - 2018-03-07 21:28:10
|
Before you do that, I created a bit of a merge mess in the freebsd branch and need to clean it up. From: Phil Longstaff [mailto:plo...@sa...] Sent: Wednesday, March 7, 2018 3:42 PM To: Paul Floyd; val...@li... Subject: Re: [Valgrind-developers] Valgrind on FreeBSD Hi Paul, In answer to a previous question of yours, I did use --enable-only64bit. Can you clone my repository, make the changes, then send me a pull request? Phil From: Paul Floyd [mailto:pj...@wa...] Sent: Sunday, March 4, 2018 5:07 AM To: val...@li...<mailto:val...@li...> Subject: Re: [Valgrind-developers] Valgrind on FreeBSD On 22 Feb 2018, at 23:33, Phil Longstaff <plo...@sa...<mailto:plo...@sa...>> wrote: I have now built valgrind for freebsd up to 3.13.0. I have a git repository (https://bitbucket.org/plongstaff/valgrind-freebsd-git) which has a 'master' branch which is a clone of the official git repository, and a 'freebsd' branch which has the freebsd changes. These originally came from the work that Stanislav Sedov had, with some additions that we made at Sandvine for some syscalls. These branches allow me to 'git pull' any valgrind source changes, then rebase the freebsd branch to keep it up to date. 'make regtest' builds, but does not pass. I have fixed a few of the problems but not all of them. Phil -----Original Message----- From: pa...@fr...<mailto:pa...@fr...> [mailto:pa...@fr...] Sent: Thursday, February 22, 2018 3:32 PM To: val...@li...<mailto:val...@li...> Subject: Re: [Valgrind-developers] Valgrind on FreeBSD Hi Phil Some more feedback for other platforms. You’ve defined VKI_MAP_STACK in vki-freebsd.h (only) and added it to coregrind/m_aspacemgr/aspacemgr-linux.c without any conditional compilation. In coregrind/m_debuginfo/readelf.c around line 454 there looks like a code merge issue. The ‘#if !defined(VGO_freebsd) block looks spurious. coregrind/m_syswrap/syswrap-freebsd.c needs to be conditionally compiled. I added #if defined(VGO_freebsd) coregrind/m_syswrap/priv_types_n_macros.h has same changes for macOS around line 303 That’s all I needed to change on Linux. macOS and Solaris required quite a few more changes. Next, there are several linux conditional compilation blocks added to coregrind/m_syswrap/priv_syswrap-generic.h. I reverted all of them, and proceeded to make the minimum changes in sys wrap-generic.c where there are also many linux conditional compilation blocks. After that I was able to complete the build on all 3 platforms. A+ Paul |
|
From: Phil L. <plo...@sa...> - 2018-03-07 20:42:23
|
Hi Paul, In answer to a previous question of yours, I did use --enable-only64bit. Can you clone my repository, make the changes, then send me a pull request? Phil From: Paul Floyd [mailto:pj...@wa...] Sent: Sunday, March 4, 2018 5:07 AM To: val...@li... Subject: Re: [Valgrind-developers] Valgrind on FreeBSD On 22 Feb 2018, at 23:33, Phil Longstaff <plo...@sa...<mailto:plo...@sa...>> wrote: I have now built valgrind for freebsd up to 3.13.0. I have a git repository (https://bitbucket.org/plongstaff/valgrind-freebsd-git) which has a 'master' branch which is a clone of the official git repository, and a 'freebsd' branch which has the freebsd changes. These originally came from the work that Stanislav Sedov had, with some additions that we made at Sandvine for some syscalls. These branches allow me to 'git pull' any valgrind source changes, then rebase the freebsd branch to keep it up to date. 'make regtest' builds, but does not pass. I have fixed a few of the problems but not all of them. Phil -----Original Message----- From: pa...@fr...<mailto:pa...@fr...> [mailto:pa...@fr...] Sent: Thursday, February 22, 2018 3:32 PM To: val...@li...<mailto:val...@li...> Subject: Re: [Valgrind-developers] Valgrind on FreeBSD Hi Phil Some more feedback for other platforms. You’ve defined VKI_MAP_STACK in vki-freebsd.h (only) and added it to coregrind/m_aspacemgr/aspacemgr-linux.c without any conditional compilation. In coregrind/m_debuginfo/readelf.c around line 454 there looks like a code merge issue. The ‘#if !defined(VGO_freebsd) block looks spurious. coregrind/m_syswrap/syswrap-freebsd.c needs to be conditionally compiled. I added #if defined(VGO_freebsd) coregrind/m_syswrap/priv_types_n_macros.h has same changes for macOS around line 303 That’s all I needed to change on Linux. macOS and Solaris required quite a few more changes. Next, there are several linux conditional compilation blocks added to coregrind/m_syswrap/priv_syswrap-generic.h. I reverted all of them, and proceeded to make the minimum changes in sys wrap-generic.c where there are also many linux conditional compilation blocks. After that I was able to complete the build on all 3 platforms. A+ Paul |
|
From: Paul F. <pj...@wa...> - 2018-03-04 10:07:30
|
> On 22 Feb 2018, at 23:33, Phil Longstaff <plo...@sa...> wrote: > > I have now built valgrind for freebsd up to 3.13.0. I have a git repository (https://bitbucket.org/plongstaff/valgrind-freebsd-git) which has a 'master' branch which is a clone of the official git repository, and a 'freebsd' branch which has the freebsd changes. These originally came from the work that Stanislav Sedov had, with some additions that we made at Sandvine for some syscalls. These branches allow me to 'git pull' any valgrind source changes, then rebase the freebsd branch to keep it up to date. > > 'make regtest' builds, but does not pass. I have fixed a few of the problems but not all of them. > > Phil > -----Original Message----- > From: pa...@fr... [mailto:pa...@fr...] > Sent: Thursday, February 22, 2018 3:32 PM > To: val...@li... > Subject: Re: [Valgrind-developers] Valgrind on FreeBSD > Hi Phil Some more feedback for other platforms. You’ve defined VKI_MAP_STACK in vki-freebsd.h (only) and added it to coregrind/m_aspacemgr/aspacemgr-linux.c without any conditional compilation. In coregrind/m_debuginfo/readelf.c around line 454 there looks like a code merge issue. The ‘#if !defined(VGO_freebsd) block looks spurious. coregrind/m_syswrap/syswrap-freebsd.c needs to be conditionally compiled. I added #if defined(VGO_freebsd) coregrind/m_syswrap/priv_types_n_macros.h has same changes for macOS around line 303 That’s all I needed to change on Linux. macOS and Solaris required quite a few more changes. Next, there are several linux conditional compilation blocks added to coregrind/m_syswrap/priv_syswrap-generic.h. I reverted all of them, and proceeded to make the minimum changes in sys wrap-generic.c where there are also many linux conditional compilation blocks. After that I was able to complete the build on all 3 platforms. A+ Paul |
|
From: Paul F. <pj...@wa...> - 2018-03-04 05:52:36
|
> On 1 Mar 2018, at 22:31, Phil Longstaff <plo...@sa...> wrote: > > Hi Paul, > > Thanks. > > I only use 64-bit freebsd and have not tried to test 32-bit. I will add your changes. > > Phil > Hi Phil I’m also using FreeBSD amd64. Normally when you build Valgrind on 64bit platforms it will build both 32bit and 64bit binaries. My memory is a bit hazy on this; it may also depend on whether you have 32bit userland installed, and I can’t remember if this comes by default or not. As a rule, if something fails to build I just find which package to add and install it. Are you using ‘—enable-only64bit’ with configure? A+ Paul |
|
From: Carl L. <ca...@so...> - 2018-03-01 22:45:12
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=839b244af27d6b7d27001c10ed308c485fecd3a8 commit 839b244af27d6b7d27001c10ed308c485fecd3a8 Author: Carl Love <ca...@us...> Date: Thu Mar 1 13:50:56 2018 -0600 PPC64, Fix tests for mtvsrwa and mtfprd. Fix the register constraints for the vtvsrwa and mtfprd instructions in test_isa_2_07_part2.c. Update the expected output in none/tests/jm_vec_isa_2_07.stdout.exp. Diff: --- none/tests/ppc64/jm_vec_isa_2_07.stdout.exp | 16 ++++++++-------- none/tests/ppc64/test_isa_2_07_part1.c | 4 ++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/none/tests/ppc64/jm_vec_isa_2_07.stdout.exp b/none/tests/ppc64/jm_vec_isa_2_07.stdout.exp index 76fd4d5..21626dc 100644 --- a/none/tests/ppc64/jm_vec_isa_2_07.stdout.exp +++ b/none/tests/ppc64/jm_vec_isa_2_07.stdout.exp @@ -58,15 +58,15 @@ mtvsrwa: 00000000 => 0000000000000000 mtvsrwa: 00000000 => 0000000000000000 mtvsrwa: ffffffff => ffffffffffffffff -mtfprd: 0102030405060708 => 0000000000000000 -mtfprd: 090a0b0c0e0d0e0f => 0000000000000000 -mtfprd: f1f2f3f4f5f6f7f8 => 0000000000000000 -mtfprd: f9fafbfcfefdfeff => 0000000000000000 -mtfprd: 00007fffffffffff => 0000000000000000 -mtfprd: ffff000000000000 => 0000000000000000 -mtfprd: 0000800000000000 => 0000000000000000 +mtfprd: 0102030405060708 => 0102030405060708 +mtfprd: 090a0b0c0e0d0e0f => 090a0b0c0e0d0e0f +mtfprd: f1f2f3f4f5f6f7f8 => f1f2f3f4f5f6f7f8 +mtfprd: f9fafbfcfefdfeff => f9fafbfcfefdfeff +mtfprd: 00007fffffffffff => 00007fffffffffff +mtfprd: ffff000000000000 => ffff000000000000 +mtfprd: 0000800000000000 => 0000800000000000 mtfprd: 0000000000000000 => 0000000000000000 -mtfprd: ffffffffffffffff => 0000000000000000 +mtfprd: ffffffffffffffff => ffffffffffffffff mtvrwa: 05060708 => 0000000005060708 mtvrwa: 0e0d0e0f => 000000000e0d0e0f diff --git a/none/tests/ppc64/test_isa_2_07_part1.c b/none/tests/ppc64/test_isa_2_07_part1.c index 6009bb3..5e4858f 100644 --- a/none/tests/ppc64/test_isa_2_07_part1.c +++ b/none/tests/ppc64/test_isa_2_07_part1.c @@ -405,7 +405,7 @@ static void test_mtvsrwz (void) static void test_mtvsrwa (void) { - __asm__ __volatile__ ("mtvsrwa %x0,%1" : "=d" (vec_out) : "r" (r14)); + __asm__ __volatile__ ("mtvsrwa %x0,%1" : "=ws" (vec_out) : "r" (r14)); }; static void test_mtfprwa (void) @@ -425,7 +425,7 @@ static void test_mtvrd (void) static void test_mtfprd (void) { - __asm__ __volatile__ ("mtfprd %0,%1" : "=v" (vec_out) : "r" (r14)); + __asm__ __volatile__ ("mtfprd %0,%1" : "=d" (vec_out) : "r" (r14)); }; static test_t tests_move_ops_spe[] = { |
|
From: Phil L. <plo...@sa...> - 2018-03-01 22:16:59
|
Hi Paul, Thanks. I only use 64-bit freebsd and have not tried to test 32-bit. I will add your changes. Phil -----Original Message----- From: Paul Floyd [mailto:pj...@wa...] Sent: Wednesday, February 28, 2018 6:45 PM To: valgrind Developers Subject: Re: [Valgrind-developers] Valgrind on FreeBSD > On 22 Feb 2018, at 23:33, Phil Longstaff <plo...@sa...> wrote: > > I have now built valgrind for freebsd up to 3.13.0. I have a git repository (https://bitbucket.org/plongstaff/valgrind-freebsd-git) which has a 'master' branch which is a clone of the official git repository, and a 'freebsd' branch which has the freebsd changes. These originally came from the work that Stanislav Sedov had, with some additions that we made at Sandvine for some syscalls. These branches allow me to 'git pull' any valgrind source changes, then rebase the freebsd branch to keep it up to date. > > 'make regtest' builds, but does not pass. I have fixed a few of the problems but not all of them. > > Phil Hi Phil Nice job. I just gave it a go with FreeBSD 11.1-RELEASE-p6 and gcc (FreeBSD Ports Collection) 6.4.0. I ran autogen.sh, configure and gmake, resulting in a 32bit build. I had to make 3 changes to get the build to complete (see below). 'make regtest' gave me million.S:35:4: error: #error "Unknown OS" during the build phase. If you like I can also do some testing on Solaris/Linux/macOS. A+ Paul git diff diff --git a/coregrind/m_sigframe/sigframe-x86-freebsd.c b/coregrind/m_sigframe/sigframe-x86-freebsd.c index 39da65ddf..0b5731e48 100644 --- a/coregrind/m_sigframe/sigframe-x86-freebsd.c +++ b/coregrind/m_sigframe/sigframe-x86-freebsd.c @@ -291,6 +291,7 @@ static Addr build_sigframe(ThreadState *tst, /* EXPORTED */ void VG_(sigframe_create)( ThreadId tid, + Bool on_altstack, Addr esp_top_of_frame, const vki_siginfo_t *siginfo, const struct vki_ucontext *siguc, diff --git a/coregrind/m_signals.c b/coregrind/m_signals.c index 306ea705d..195c069ba 100755 --- a/coregrind/m_signals.c +++ b/coregrind/m_signals.c @@ -1067,7 +1067,7 @@ static void handle_SCSS_change ( Bool force_update ) ksa.sa_flags = skss.skss_per_sig[sig].skss_flags; # if !defined(VGP_ppc32_linux) && \ !defined(VGP_x86_darwin) && !defined(VGP_amd64_darwin) && \ - !defined(VGP_mips32_linux) && !defined(VGO_solaris) && !defined(VGP_amd64_freebsd) + !defined(VGP_mips32_linux) && !defined(VGO_solaris) && + !defined(VGO_freebsd) ksa.sa_restorer = my_sigreturn; # endif /* Re above ifdef (also the assertion below), PaulM says: diff --git a/coregrind/pub_core_libcproc.h b/coregrind/pub_core_libcproc.h index 9d27f95c1..7ddec8832 100755 --- a/coregrind/pub_core_libcproc.h +++ b/coregrind/pub_core_libcproc.h @@ -89,7 +89,7 @@ extern void VG_(do_atfork_child) ( ThreadId tid ); #if defined(VGO_freebsd) // sysctl, modfind -extern Int VG_(sysctl)(Int *oid, UInt oidlen, void *oldp, vki_size_t *oldlenp, void *newp, vki_size_t newlen); +extern Int VG_(sysctl)(Int *oid, UInt oidlen, void *oldp, SizeT +*oldlenp, void *newp, SizeT newlen); extern Int VG_(sysctlbyname)(const Char *name, void *oldp, vki_size_t *oldlenp, void *newp, vki_size_t newlen); extern Int VG_(getosreldate)(void); extern Bool VG_(is32on64)(void); ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Valgrind-developers mailing list Val...@li... https://lists.sourceforge.net/lists/listinfo/valgrind-developers |
|
From: Carl L. <ce...@us...> - 2018-03-01 22:07:50
|
Peter:
Thanks for the input on the incorrect register constraints for the new
tests. I have committed a fix for them.
commit 839b244af27d6b7d27001c10ed308c485fecd3a8
Author: Carl Love <ca...@us...>
Date: Thu Mar 1 13:50:56 2018 -0600
PPC64, Fix tests for mtvsrwa and mtfprd.
Fix the register constraints for the vtvsrwa and mtfprd instructions
in test_isa_2_07_part2.c. Update the expected output in
none/tests/jm_vec_isa_2_07.stdout.exp.
Carl Love
-----------------------------------------------
On Wed, 2018-02-28 at 16:34 -0600, Peter Bergner wrote:
> On 2/27/18 6:40 PM, Carl Love wrote:
> > +static void test_mtvsrwa (void)
> > +{
> > + __asm__ __volatile__ ("mtvsrwa %x0,%1" : "=d" (vec_out) : "r"
> > (r14));
> > +};
>
> The mtvsrwa instruction writes a VSX register and you correctly use
> %x0
> to write its reg number, but you should also use the "=ws" constraint
> instead of "=d". You won't get an error, but you're forcing the
> inline
> asm to only use FP regs (a subset of VSX regs).
>
>
>
>
> > +static void test_mtfprd (void)
> > +{
> > + __asm__ __volatile__ ("mtfprd %0,%1" : "=v" (vec_out) : "r"
> > (r14));
> > +};
>
> The mtfprd writes a FP register, so you need to use the "=d"
> constraint
> instead of "=v". The assembler won't give an error since the reg
> numbers
> are the same (0-31), but unless you got really lucky, this should
> have
> led to a runtime error (ie, value not what you expected).
>
>
> Peter
>
|
|
From: Tom H. <to...@co...> - 2018-03-01 07:15:23
|
On 01/03/18 05:41, Peter Zelezny wrote: > I found adding this stub for setns() 308 syscall very useful. Please > consider for inclusion in git. Please open a bug and attach the patch - even better look for a bug asking for this which I think exists and attach it. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Peter Z. <pet...@de...> - 2018-03-01 05:41:17
|
Hi, I found adding this stub for setns() 308 syscall very useful. Please consider for inclusion in git. |