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
(8) |
2
(2) |
3
(1) |
4
(2) |
|
5
(1) |
6
(4) |
7
(6) |
8
(5) |
9
(3) |
10
(5) |
11
(1) |
|
12
(6) |
13
(4) |
14
(1) |
15
(4) |
16
(1) |
17
|
18
|
|
19
|
20
|
21
(2) |
22
(28) |
23
(17) |
24
(6) |
25
(4) |
|
26
(2) |
27
(2) |
28
|
29
(5) |
30
(8) |
31
(14) |
|
|
From: <sv...@va...> - 2015-07-25 14:31:10
|
Author: bart
Date: Sat Jul 25 15:31:02 2015
New Revision: 15452
Log:
configure.ac: Improve portability of the code introduced in r15423
Modified:
trunk/configure.ac
Modified: trunk/configure.ac
==============================================================================
--- trunk/configure.ac (original)
+++ trunk/configure.ac Sat Jul 25 15:31:02 2015
@@ -1350,7 +1350,7 @@
AC_DEFUN([AC_HWCAP_CONTAINS_FLAG],[
AUXV_CHECK_FOR=$1
AC_MSG_CHECKING([if AT_HWCAP contains the $AUXV_CHECK_FOR indicator])
- if `LD_SHOW_AUXV=1 /bin/true | grep ^AT_HWCAP | grep -q -w ${AUXV_CHECK_FOR}`
+ if LD_SHOW_AUXV=1 `which true` | grep ^AT_HWCAP | grep -q -w ${AUXV_CHECK_FOR}
then
AC_MSG_RESULT([yes])
AC_SUBST([$2],[yes])
|
|
From: <sv...@va...> - 2015-07-25 07:58:02
|
Author: rhyskidd
Date: Sat Jul 25 08:57:55 2015
New Revision: 15451
Log:
ioctl handling needs to do POST handling on generic ioctls and needs to handle BPF ioctls
bz#312989
Patch by Guy Harris <gu...@al...>
On OS X 10.10
Before:
== 593 tests, 214 stderr failures, 10 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
After:
== 593 tests, 214 stderr failures, 10 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
Modified:
trunk/NEWS
trunk/coregrind/m_syswrap/syswrap-darwin.c
trunk/include/vki/vki-darwin.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sat Jul 25 08:57:55 2015
@@ -121,6 +121,8 @@
302630 Memcheck on multithreaded program fails with Assertion
'sizeof(UWord) == sizeof(UInt)' failed in m_syscall.c
== 326797
+312989 ioctl handling needs to do POST handling on generic ioctls and
+ needs to handle BPF ioctls
319274 Fix unhandled syscall: unix:410 (sigsuspend_nocancel) on OS X
324181 mmap does not handle MAP_32BIT (handle it now, rather than fail it)
327745 Fix valgrind 3.9.0 build fails on Mac OS X 10.6.8
Modified: trunk/coregrind/m_syswrap/syswrap-darwin.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-darwin.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-darwin.c Sat Jul 25 08:57:55 2015
@@ -1106,6 +1106,8 @@
case VKI_TIOCPTYGRANT:
case VKI_TIOCPTYUNLK:
case VKI_DTRACEHIOC_REMOVE:
+ case VKI_BIOCFLUSH:
+ case VKI_BIOCPROMISC:
PRINT("ioctl ( %ld, 0x%lx )",ARG1,ARG2);
PRE_REG_READ2(long, "ioctl",
unsigned int, fd, unsigned int, request);
@@ -1291,6 +1293,71 @@
case VKI_FIONCLEX:
break;
+ // net/bpf.h
+ case VKI_BIOCSETF: /* set BPF filter */
+ /*
+ * struct bpf_program has a 32-bit count of instructions,
+ * followed by a pointer to an array of those instructions.
+ * In 64-bit mode, there's padding between those two elements.
+ *
+ * So that we don't bogusly complain about the padding bytes,
+ * we just report that we read bf_len and and bf_insns.
+ *
+ * We then make sure that what bf_insns points to is valid.
+ */
+ PRE_MEM_READ( "ioctl(BIOCSETF)",
+ (Addr)&((struct vki_bpf_program *)ARG3)->vki_bf_len,
+ sizeof(((struct vki_bpf_program *)ARG3)->vki_bf_len) );
+ PRE_MEM_READ( "ioctl(BIOCSETF)",
+ (Addr)&((struct vki_bpf_program *)ARG3)->vki_bf_insns,
+ sizeof(((struct vki_bpf_program *)ARG3)->vki_bf_insns) );
+ if ( ARG3 ) {
+ /* bf_len * sizeof (*bf_insns) */
+ struct vki_bpf_program *bp = (struct vki_bpf_program *)ARG3;
+ if ( bp->bf_insns != NULL )
+ PRE_MEM_READ( "ioctl(BIOCSETF) points to a struct bpf_program whose bf_insns member",
+ (Addr)(bp->vki_bf_insns),
+ bp->vki_bf_len * sizeof(*bp->vki_bf_insns) );
+ }
+ break;
+ case VKI_BIOCSETIF: /* set BPF interface */
+ PRE_MEM_RASCIIZ( "ioctl(BIOCSETIF)",
+ (Addr)((struct vki_ifreq *)ARG3)->vki_ifr_name );
+ break;
+ case VKI_BIOCSRTIMEOUT: /* set BPF timeout */
+ /*
+ * 64-bit struct timeval starts with a 64-bit "seconds since the
+ * Epoch" value, followed by a 32-bit microseconds value. The
+ * resulting structure is padded to a multiple of 8 bytes, so
+ * there are 4 padding bytes at the end.
+ *
+ * So that we don't bogusly complain about the padding bytes,
+ * we just report that we read tv_sec and tv_usec.
+ */
+ PRE_MEM_READ( "ioctl(BIOCSRTIMEOUT)",
+ (Addr)&((struct vki_timeval *)ARG3)->vki_tv_sec,
+ sizeof(((struct vki_timeval *)ARG3)->vki_tv_sec) );
+ PRE_MEM_READ( "ioctl(BIOCSRTIMEOUT)",
+ (Addr)&((struct vki_timeval *)ARG3)->vki_tv_usec,
+ sizeof(((struct vki_timeval *)ARG3)->vki_tv_usec) );
+ break;
+ case VKI_BIOCGDLTLIST: /* get list of BPF DLTs */
+ PRE_MEM_READ( "ioctl(BIOCGDLTLIST).bfl_len",
+ (Addr)&((struct vki_bpf_dltlist *)ARG3)->vki_bfl_list,
+ sizeof(((struct vki_bpf_dltlist *)ARG3)->vki_bfl_list) );
+ if ( ARG3 ) {
+ /* bfl_len * sizeof (*bfl_list) */
+ struct vki_bpf_dltlist *bdl = (struct vki_bpf_dltlist *)ARG3;
+ if ( bdl->bfl_list != NULL )
+ PRE_MEM_READ( "ioctl(BIOCGDLTLIST).bfl_len",
+ (Addr)&((struct vki_bpf_dltlist *)ARG3)->vki_bfl_len,
+ sizeof(((struct vki_bpf_dltlist *)ARG3)->vki_bfl_len) );
+ PRE_MEM_WRITE( "ioctl(BIOCGDLTLIST) points to a struct bpf_dltlist whose bfl_list member",
+ (Addr)(bdl->vki_bfl_list),
+ bdl->bfl_len * sizeof(*bdl->vki_bfl_list) );
+ }
+ break;
+
default:
ML_(PRE_unknown_ioctl)(tid, ARG2, ARG3);
break;
@@ -1417,7 +1484,19 @@
case VKI_TIOCPTYUNLK:
break;
+ // bpf.h
+ case VKI_BIOCGDLTLIST: /* get list of BPF DLTs */
+ if (RES == 0 && ARG3 ) {
+ /* bfl_len * sizeof (*bfl_list) */
+ struct vki_bpf_dltlist *bdl = (struct vki_bpf_dltlist *)ARG3;
+ if ( bdl->vki_bfl_list != NULL )
+ POST_MEM_WRITE( (Addr)(bdl->vki_bfl_list),
+ bdl->bfl_len * sizeof(*bdl->vki_bfl_list) );
+ }
+ break;
+
default:
+ ML_(POST_unknown_ioctl)(tid, RES, ARG2, ARG3);
break;
}
}
Modified: trunk/include/vki/vki-darwin.h
==============================================================================
--- trunk/include/vki/vki-darwin.h (original)
+++ trunk/include/vki/vki-darwin.h Sat Jul 25 08:57:55 2015
@@ -112,6 +112,8 @@
#define vki_timeval timeval
#define vki_timeval32 timeval32
+#define vki_tv_sec tv_sec
+#define vki_tv_usec tv_usec
#define vki_timespec timespec
#define vki_itimerval itimerval
#define vki_timezone timezone
@@ -1001,6 +1003,23 @@
#define VKI_DTRACEHIOC_ADDDOF DTRACEHIOC_ADDDOF
+#include <net/bpf.h>
+
+#define vki_bpf_program bpf_program
+#define vki_bf_len bf_len
+#define vki_bf_insns bf_insns
+#define vki_bpf_dltlist bpf_dltlist
+#define vki_bfl_len bfl_len
+#define vki_bfl_list bfl_list
+
+#define VKI_BIOCSETF BIOCSETF
+#define VKI_BIOCFLUSH BIOCFLUSH
+#define VKI_BIOCPROMISC BIOCPROMISC
+#define VKI_BIOCSETIF BIOCSETIF
+#define VKI_BIOCSRTIMEOUT BIOCSRTIMEOUT
+#define VKI_BIOCGDLTLIST BIOCGDLTLIST
+
+
#include <sys/ucontext.h>
/* quite why sys/ucontext.h provides a 'struct __darwin_ucontext'
|
|
From: <sv...@va...> - 2015-07-25 05:50:17
|
Author: rhyskidd
Date: Sat Jul 25 06:50:10 2015
New Revision: 15450
Log:
Fix clang/osx: ld: warning: -read_only_relocs cannot be used with x86_64
bz#349769
Modified:
trunk/NEWS
trunk/auxprogs/Makefile.am
trunk/cachegrind/Makefile.am
trunk/coregrind/Makefile.am
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sat Jul 25 06:50:10 2015
@@ -263,6 +263,7 @@
349087 Fix UNKNOWN task message [id 3410, to mach_task_self(),
reply 0x........] (task_set_special_port)
349626 Implemented additional Xen hypercalls
+349769 Fix clang/osx: ld: warning: -read_only_relocs cannot be used with x86_64
349874 Fix typos in source code
349828 memcpy intercepts memmove causing src/dst overlap error (ppc64 ld.so)
349941 di_notify_mmap might create wrong start/size DebugInfoMapping
Modified: trunk/auxprogs/Makefile.am
==============================================================================
--- trunk/auxprogs/Makefile.am (original)
+++ trunk/auxprogs/Makefile.am Sat Jul 25 06:50:10 2015
@@ -36,9 +36,13 @@
if VGCONF_PLATVARIANT_IS_ANDROID
valgrind_listener_CFLAGS += -static
endif
+# If there is no secondary platform, and the platforms include x86-darwin,
+# then the primary platform must be x86-darwin. Hence:
+if ! VGCONF_HAVE_PLATFORM_SEC
if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
valgrind_listener_LDFLAGS += -Wl,-read_only_relocs -Wl,suppress
endif
+endif
if VGCONF_OS_IS_SOLARIS
valgrind_listener_LDADD = -lsocket -lnsl
endif
@@ -51,9 +55,13 @@
if VGCONF_PLATVARIANT_IS_ANDROID
valgrind_di_server_CFLAGS += -static
endif
+# If there is no secondary platform, and the platforms include x86-darwin,
+# then the primary platform must be x86-darwin. Hence:
+if ! VGCONF_HAVE_PLATFORM_SEC
if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
valgrind_di_server_LDFLAGS += -Wl,-read_only_relocs -Wl,suppress
endif
+endif
if VGCONF_OS_IS_SOLARIS
valgrind_di_server_LDADD = -lsocket -lnsl
endif
Modified: trunk/cachegrind/Makefile.am
==============================================================================
--- trunk/cachegrind/Makefile.am (original)
+++ trunk/cachegrind/Makefile.am Sat Jul 25 06:50:10 2015
@@ -28,9 +28,13 @@
cg_merge_CFLAGS = $(AM_CFLAGS_PRI)
cg_merge_CCASFLAGS = $(AM_CCASFLAGS_PRI)
cg_merge_LDFLAGS = $(AM_CFLAGS_PRI)
+# If there is no secondary platform, and the platforms include x86-darwin,
+# then the primary platform must be x86-darwin. Hence:
+if ! VGCONF_HAVE_PLATFORM_SEC
if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
cg_merge_LDFLAGS += -Wl,-read_only_relocs -Wl,suppress
endif
+endif
#----------------------------------------------------------------------------
# cachegrind-<platform>
Modified: trunk/coregrind/Makefile.am
==============================================================================
--- trunk/coregrind/Makefile.am (original)
+++ trunk/coregrind/Makefile.am Sat Jul 25 06:50:10 2015
@@ -54,9 +54,13 @@
valgrind_CFLAGS = $(AM_CFLAGS_PRI)
valgrind_CCASFLAGS = $(AM_CCASFLAGS_PRI)
valgrind_LDFLAGS = $(AM_CFLAGS_PRI) @LIB_UBSAN@
+# If there is no secondary platform, and the platforms include x86-darwin,
+# then the primary platform must be x86-darwin. Hence:
+if ! VGCONF_HAVE_PLATFORM_SEC
if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
valgrind_LDFLAGS += -Wl,-read_only_relocs -Wl,suppress
endif
+endif
# On Android we must ask for non-executable stack, not sure why.
if VGCONF_PLATVARIANT_IS_ANDROID
valgrind_CFLAGS += -static
@@ -96,9 +100,13 @@
vgdb_LDADD = -lpthread
endif
endif
+# If there is no secondary platform, and the platforms include x86-darwin,
+# then the primary platform must be x86-darwin. Hence:
+if ! VGCONF_HAVE_PLATFORM_SEC
if VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
vgdb_LDFLAGS += -Wl,-read_only_relocs -Wl,suppress
endif
+endif
#----------------------------------------------------------------------------
# Darwin Mach stuff
|
|
From: Rhys K. <rhy...@gm...> - 2015-07-25 04:18:55
|
Not all systems put true in /bin hence there are issues on Darwin with the
introduction of this line to configure.ac
+ if `LD_SHOW_AUXV=1 /bin/true | grep ^AT_HWCAP | grep -q -w
${AUXV_CHECK_FOR}`
Can you confirm if the below quick hack job continues to work selecting the
right PPC HW capabilities?
We are letting $PATH work for us with this change. For reference on Darwin
the location is:
$ which true
/usr/bin/true
Regards,
Rhys
-----
Index: configure.ac
===================================================================
--- configure.ac (revision 15449)
+++ configure.ac (working copy)
@@ -1350,7 +1350,7 @@
AC_DEFUN([AC_HWCAP_CONTAINS_FLAG],[
AUXV_CHECK_FOR=$1
AC_MSG_CHECKING([if AT_HWCAP contains the $AUXV_CHECK_FOR indicator])
- if `LD_SHOW_AUXV=1 /bin/true | grep ^AT_HWCAP | grep -q -w
${AUXV_CHECK_FOR}`
+ if `LD_SHOW_AUXV=1 true | grep ^AT_HWCAP | grep -q -w ${AUXV_CHECK_FOR}`
then
AC_MSG_RESULT([yes])
AC_SUBST([$2],[yes])
On 21 July 2015 at 07:25, <sv...@va...> wrote:
> Author: carll
> Date: Mon Jul 20 22:25:32 2015
> New Revision: 15423
>
> Log:
> Patch 4 and 5 of 7, improve PPC HW capabiltiy checking.
>
> The patch was submitted by Will Schmidt (wil...@vn...).
>
> Patches 4 and 5 need to be applied together. Add convenience function
> for processing hwcap entries. Add logic to check for HTM support in
> compiler.
>
> Bugzilla 34979
>
> Modified:
> trunk/configure.ac
> trunk/none/tests/ppc32/Makefile.am
> trunk/none/tests/ppc64/Makefile.am
> trunk/none/tests/ppc64/test_tm.c
> trunk/none/tests/ppc64/test_touch_tm.c
>
> Modified: trunk/configure.ac
>
> ==============================================================================
> --- trunk/configure.ac (original)
> +++ trunk/configure.ac Mon Jul 20 22:25:32 2015
> @@ -1264,6 +1264,28 @@
> [],
> [#include <pthread.h>])
>
> +# Convenience function. Set flags based on the existing HWCAP entries.
> +# The AT_HWCAP entries are generated by glibc, and are based on
> +# functions supported by the hardware/system/libc.
> +# Subsequent support for whether the capability will actually be utilized
> +# will also be checked against the compiler capabilities.
> +# called as
> +# AC_HWCAP_CONTAINS_FLAG[hwcap_string_to_match],[VARIABLE_TO_SET]
> +AC_DEFUN([AC_HWCAP_CONTAINS_FLAG],[
> + AUXV_CHECK_FOR=$1
> + AC_MSG_CHECKING([if AT_HWCAP contains the $AUXV_CHECK_FOR indicator])
> + if `LD_SHOW_AUXV=1 /bin/true | grep ^AT_HWCAP | grep -q -w
> ${AUXV_CHECK_FOR}`
> + then
> + AC_MSG_RESULT([yes])
> + AC_SUBST([$2],[yes])
> + else
> + AC_MSG_RESULT([no])
> + AC_SUBST([$2],[])
> + fi
> +])
> +
> +# gather hardware capabilities. (hardware/kernel/libc)
> +AC_HWCAP_CONTAINS_FLAG([htm],[HWCAP_HAS_HTM])
>
> # does this compiler support -maltivec and does it have the include file
> # <altivec.h> ?
> @@ -1386,6 +1408,42 @@
>
> AM_CONDITIONAL(HAS_ISA_2_07, test x$ac_asm_have_isa_2_07 = xyes)
>
> +# HTM (Hardware Transactional Memory)
> +AC_MSG_CHECKING([if compiler accepts the -mhtm flag])
> +safe_CFLAGS=$CFLAGS
> +CFLAGS="-mhtm -Werror"
> +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
> +]], [[
> + return 0;
> +]])], [
> +AC_MSG_RESULT([yes])
> +ac_compiler_supports_htm=yes
> +], [
> +AC_MSG_RESULT([no])
> +ac_compiler_supports_htm=no
> +])
> +CFLAGS=$safe_CFLAGS
> +
> +AC_MSG_CHECKING([if compiler can find the htm builtins])
> +safe_CFLAGS=$CFLAGS
> +CFLAGS="-mhtm -Werror"
> + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
> + ]], [[
> + if (__builtin_tbegin (0))
> + __builtin_tend (0);
> + ]])], [
> + AC_MSG_RESULT([yes])
> +ac_compiler_sees_htm_builtins=yes
> + ], [
> + AC_MSG_RESULT([no])
> +ac_compiler_sees_htm_builtins=no
> + ])
> +CFLAGS=$safe_CFLAGS
> +
> +AM_CONDITIONAL(SUPPORTS_HTM, test x$ac_compiler_supports_htm = xyes \
> + -a x$ac_compiler_sees_htm_builtins = xyes \
> + -a x$HWCAP_HAS_HTM = xyes )
> +
> # Check for pthread_create@GLIBC2.0
> AC_MSG_CHECKING([for pthread_create@GLIBC2.0()])
>
>
> Modified: trunk/none/tests/ppc32/Makefile.am
>
> ==============================================================================
> --- trunk/none/tests/ppc32/Makefile.am (original)
> +++ trunk/none/tests/ppc32/Makefile.am Mon Jul 20 22:25:32 2015
> @@ -99,13 +99,17 @@
> endif
>
> if HAS_ISA_2_07
> -BUILD_FLAGS_ISA_2_07 = -mhtm -mcpu=power8
> +BUILD_FLAGS_ISA_2_07 = -mcpu=power8
> ISA_2_07_FLAG = -DHAS_ISA_2_07
> else
> BUILD_FLAGS_ISA_2_07 =
> ISA_2_07_FLAG =
> endif
>
> +if SUPPORTS_HTM
> +HTM_FLAG = -mhtm -DSUPPORTS_HTM
> +endif
> +
> jm_insns_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames \
> @FLAG_M32@ $(ALTIVEC_FLAG) $(BUILD_FLAG_ALTIVEC)
>
> @@ -141,9 +145,9 @@
> test_isa_2_07_part2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> @FLAG_M32@ $(BUILD_FLAGS_ISA_2_07)
>
> -test_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> +test_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(HTM_FLAG)
> $(ISA_2_07_FLAG) \
> @FLAG_M32@ $(BUILD_FLAGS_ISA_2_07)
> -test_touch_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> +test_touch_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(HTM_FLAG) $(ISA_2_07_FLAG) \
> @FLAG_M32@ $(BUILD_FLAGS_ISA_2_07)
>
> test_isa_2_06_part3_LDADD = -lm
>
> Modified: trunk/none/tests/ppc64/Makefile.am
>
> ==============================================================================
> --- trunk/none/tests/ppc64/Makefile.am (original)
> +++ trunk/none/tests/ppc64/Makefile.am Mon Jul 20 22:25:32 2015
> @@ -75,13 +75,17 @@
> endif
>
> if HAS_ISA_2_07
> -BUILD_FLAGS_ISA_2_07 = -mhtm -mcpu=power8
> +BUILD_FLAGS_ISA_2_07 = -mcpu=power8
> ISA_2_07_FLAG = -DHAS_ISA_2_07
> else
> BUILD_FLAGS_ISA_2_07 =
> ISA_2_07_FLAG =
> endif
>
> +if SUPPORTS_HTM
> +HTM_FLAG = -mhtm -DSUPPORTS_HTM
> +endif
> +
> test_isa_2_06_part1_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(VSX_FLAG) \
> @FLAG_M64@ $(ALTIVEC_FLAG) $(BUILD_FLAG_VSX)
>
> @@ -114,9 +118,9 @@
> test_isa_2_07_part2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> @FLAG_M64@ $(BUILD_FLAGS_ISA_2_07)
>
> -test_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> +test_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(HTM_FLAG)
> $(ISA_2_07_FLAG) \
> @FLAG_M64@ $(BUILD_FLAGS_ISA_2_07)
> -test_touch_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(ISA_2_07_FLAG) \
> +test_touch_tm_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames
> $(HTM_FLAG) $(ISA_2_07_FLAG) \
> @FLAG_M64@ $(BUILD_FLAGS_ISA_2_07)
>
> test_isa_2_06_part3_LDADD = -lm
>
> Modified: trunk/none/tests/ppc64/test_tm.c
>
> ==============================================================================
> --- trunk/none/tests/ppc64/test_tm.c (original)
> +++ trunk/none/tests/ppc64/test_tm.c Mon Jul 20 22:25:32 2015
> @@ -1,5 +1,5 @@
> #include <stdio.h>
> -#ifdef HAS_ISA_2_07
> +#ifdef SUPPORTS_HTM
> int __attribute__ ((noinline)) htm_begin (int r3, int r4)
> {
> int ret;
> @@ -14,10 +14,12 @@
> #endif
>
> int main (void) {
> -#ifdef HAS_ISA_2_07
> +#ifdef SUPPORTS_HTM
> int ret;
> ret = htm_begin (10, 20);
> printf ("ret = %d, expected = 10\n", ret);
> +#else
> + printf ("No HTM support.");
> #endif
> return 0;
> }
>
> Modified: trunk/none/tests/ppc64/test_touch_tm.c
>
> ==============================================================================
> --- trunk/none/tests/ppc64/test_touch_tm.c (original)
> +++ trunk/none/tests/ppc64/test_touch_tm.c Mon Jul 20 22:25:32 2015
> @@ -1,7 +1,7 @@
> #include <stdio.h>
>
> int main (void) {
> -#ifdef HAS_ISA_2_07
> +#ifdef SUPPORTS_HTM
> /* Just get the compiler to generate each of the TM instructions
> * so we can verify that valgrind recognizes them.
> * For now, only the tbegin instruction does anything in valgrind.
> @@ -18,6 +18,8 @@
> __builtin_trechkpt (); // not recognized by early HW
> __builtin_treclaim (0); // not recognized by early HW
> __builtin_tsr (0);
> +#else
> + printf ("No HTM support.");
> #endif
> return 0;
> }
>
>
>
> ------------------------------------------------------------------------------
> Don't Limit Your Business. Reach for the Cloud.
> GigeNET's Cloud Solutions provide you with the tools and support that
> you need to offload your IT needs and focus on growing your business.
> Configured For All Businesses. Start Your Cloud Today.
> https://www.gigenetcloud.com/
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
>
|