You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(32) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
1
(8) |
2
(8) |
3
(15) |
4
(14) |
5
(12) |
6
(40) |
7
(9) |
|
8
(5) |
9
(12) |
10
(9) |
11
(13) |
12
(7) |
13
(7) |
14
(19) |
|
15
(18) |
16
(13) |
17
(16) |
18
(8) |
19
(16) |
20
(16) |
21
(12) |
|
22
(21) |
23
(39) |
24
(27) |
25
(33) |
26
(41) |
27
(17) |
28
(15) |
|
From: <sv...@va...> - 2009-02-06 04:49:18
|
Author: njn
Date: 2009-02-06 04:49:14 +0000 (Fri, 06 Feb 2009)
New Revision: 9114
Log:
Removed Makefile.core.am with some judicious refactoring.
Removed:
trunk/Makefile.core.am
Modified:
trunk/Makefile.flags.am
trunk/Makefile.tool.am
trunk/auxprogs/Makefile.am
trunk/coregrind/Makefile.am
trunk/coregrind/launcher-linux.c
Deleted: trunk/Makefile.core.am
===================================================================
--- trunk/Makefile.core.am 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/Makefile.core.am 2009-02-06 04:49:14 UTC (rev 9114)
@@ -1,42 +0,0 @@
-add_includes_COMMON = \
- -I$(top_srcdir)/coregrind \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub
-
-add_includes_x86_linux = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"x86-linux\"" \
- -DVGA_x86=1 \
- -DVGO_linux=1 \
- -DVGP_x86_linux=1
-
-add_includes_amd64_linux = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"amd64-linux\"" \
- -DVGA_amd64=1 \
- -DVGO_linux=1 \
- -DVGP_amd64_linux=1
-
-add_includes_ppc32_linux = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"ppc32-linux\"" \
- -DVGA_ppc32=1 \
- -DVGO_linux=1 \
- -DVGP_ppc32_linux=1
-
-add_includes_ppc64_linux = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"ppc64-linux\"" \
- -DVGA_ppc64=1 \
- -DVGO_linux=1 \
- -DVGP_ppc64_linux=1
-
-add_includes_ppc32_aix5 = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"ppc32-aix5\"" \
- -DVGA_ppc32=1 \
- -DVGO_aix5=1 \
- -DVGP_ppc32_aix5=1
-
-add_includes_ppc64_aix5 = $(add_includes_COMMON) \
- -DVG_PLATFORM="\"ppc64-aix5\"" \
- -DVGA_ppc64=1 \
- -DVGO_aix5=1 \
- -DVGP_ppc64_aix5=1
-
-include $(top_srcdir)/Makefile.flags.am
Modified: trunk/Makefile.flags.am
===================================================================
--- trunk/Makefile.flags.am 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/Makefile.flags.am 2009-02-06 04:49:14 UTC (rev 9114)
@@ -12,37 +12,61 @@
# into (and through) the preloads.
AM_CFLAGS_PIC = -O -g -fpic -fno-omit-frame-pointer -fno-strict-aliasing
-# Flags for specific targets
+# Flags for specific targets.
+# Nb: the AM_CPPFLAGS_* values are suitable for building tools and auxprogs.
+# For building the core, coregrind/Makefile.am files add some extra things.
+AM_CPPFLAGS_COMMON = \
+ -I$(top_srcdir)/include \
+ -I@VEX_DIR@/pub
+
AM_FLAG_M3264_X86_LINUX = @FLAG_M32@
-AM_CPPFLAGS_X86_LINUX = $(add_includes_x86_linux)
+AM_CPPFLAGS_X86_LINUX = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_x86=1 \
+ -DVGO_linux=1 \
+ -DVGP_x86_linux=1
AM_CFLAGS_X86_LINUX = $(WERROR) @FLAG_M32@ @PREFERRED_STACK_BOUNDARY@ \
$(AM_CFLAGS_BASE)
AM_CCASFLAGS_X86_LINUX = $(add_includes_x86_linux) @FLAG_M32@ -g
AM_FLAG_M3264_AMD64_LINUX = @FLAG_M64@
-AM_CPPFLAGS_AMD64_LINUX = $(add_includes_amd64_linux)
+AM_CPPFLAGS_AMD64_LINUX = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_amd64=1 \
+ -DVGO_linux=1 \
+ -DVGP_amd64_linux=1
AM_CFLAGS_AMD64_LINUX = $(WERROR) @FLAG_M64@ -fomit-frame-pointer \
@PREFERRED_STACK_BOUNDARY@ $(AM_CFLAGS_BASE)
AM_CCASFLAGS_AMD64_LINUX = $(add_includes_amd64_linux) @FLAG_M64@ -g
AM_FLAG_M3264_PPC32_LINUX = @FLAG_M32@
-AM_CPPFLAGS_PPC32_LINUX = $(add_includes_ppc32_linux)
+AM_CPPFLAGS_PPC32_LINUX = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_ppc32=1 \
+ -DVGO_linux=1 \
+ -DVGP_ppc32_linux=1
AM_CFLAGS_PPC32_LINUX = $(WERROR) @FLAG_M32@ $(AM_CFLAGS_BASE)
AM_CCASFLAGS_PPC32_LINUX = $(add_includes_ppc32_linux) -Wa,-maltivec @FLAG_M32@ -g
AM_FLAG_M3264_PPC64_LINUX = @FLAG_M64@
-AM_CPPFLAGS_PPC64_LINUX = $(add_includes_ppc64_linux)
+AM_CPPFLAGS_PPC64_LINUX = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_ppc64=1 \
+ -DVGO_linux=1 \
+ -DVGP_ppc64_linux=1
AM_CFLAGS_PPC64_LINUX = $(WERROR) @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CCASFLAGS_PPC64_LINUX = $(add_includes_ppc64_linux) -Wa,-maltivec @FLAG_M64@ -g
AM_FLAG_M3264_PPC32_AIX5 = @FLAG_MAIX32@
-AM_CPPFLAGS_PPC32_AIX5 = $(add_includes_ppc32_aix5)
+AM_CPPFLAGS_PPC32_AIX5 = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_ppc32=1 \
+ -DVGO_aix5=1 \
+ -DVGP_ppc32_aix5=1
AM_CFLAGS_PPC32_AIX5 = $(WERROR) @FLAG_MAIX32@ -mcpu=powerpc $(AM_CFLAGS_BASE)
AM_CCASFLAGS_PPC32_AIX5 = $(add_includes_ppc32_aix5) \
@FLAG_MAIX32@ -mcpu=powerpc -g
AM_FLAG_M3264_PPC64_AIX5 = @FLAG_MAIX64@
-AM_CPPFLAGS_PPC64_AIX5 = $(add_includes_ppc64_aix5)
+AM_CPPFLAGS_PPC64_AIX5 = $(AM_CPPFLAGS_COMMON) \
+ -DVGA_ppc64=1 \
+ -DVGO_aix5=1 \
+ -DVGP_ppc64_aix5=1
AM_CFLAGS_PPC64_AIX5 = $(WERROR) @FLAG_MAIX64@ -mcpu=powerpc64 $(AM_CFLAGS_BASE)
AM_CCASFLAGS_PPC64_AIX5 = $(add_includes_ppc64_aix5) \
@FLAG_MAIX64@ -mcpu=powerpc64 -g
Modified: trunk/Makefile.tool.am
===================================================================
--- trunk/Makefile.tool.am 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/Makefile.tool.am 2009-02-06 04:49:14 UTC (rev 9114)
@@ -6,41 +6,7 @@
include $(top_srcdir)/Makefile.install.am
include $(top_srcdir)/Makefile.tool-inplace.am
-add_includes_COMMON = \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub
-add_includes_x86_linux = $(add_includes_COMMON) \
- -DVGA_x86=1 \
- -DVGO_linux=1 \
- -DVGP_x86_linux=1
-
-add_includes_amd64_linux = $(add_includes_COMMON) \
- -DVGA_amd64=1 \
- -DVGO_linux=1 \
- -DVGP_amd64_linux=1
-
-add_includes_ppc32_linux = $(add_includes_COMMON) \
- -DVGA_ppc32=1 \
- -DVGO_linux=1 \
- -DVGP_ppc32_linux=1
-
-add_includes_ppc64_linux = $(add_includes_COMMON) \
- -DVGA_ppc64=1 \
- -DVGO_linux=1 \
- -DVGP_ppc64_linux=1
-
-add_includes_ppc32_aix5 = $(add_includes_COMMON) \
- -DVGA_ppc32=1 \
- -DVGO_aix5=1 \
- -DVGP_ppc32_aix5=1
-
-add_includes_ppc64_aix5 = $(add_includes_COMMON) \
- -DVGA_ppc64=1 \
- -DVGO_aix5=1 \
- -DVGP_ppc64_aix5=1
-
-
LIBREPLACEMALLOC_X86_LINUX = \
$(top_builddir)/coregrind/libreplacemalloc_toolpreload_x86_linux.a
Modified: trunk/auxprogs/Makefile.am
===================================================================
--- trunk/auxprogs/Makefile.am 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/auxprogs/Makefile.am 2009-02-06 04:49:14 UTC (rev 9114)
@@ -1,5 +1,5 @@
include $(top_srcdir)/Makefile.all.am
-include $(top_srcdir)/Makefile.core.am
+include $(top_srcdir)/Makefile.flags.am
bin_PROGRAMS = valgrind-listener
@@ -20,7 +20,7 @@
#
valgrind_listener_SOURCES = valgrind-listener.c
-valgrind_listener_CPPFLAGS = $(AM_CPPFLAGS_PRI)
+valgrind_listener_CPPFLAGS = $(AM_CPPFLAGS_PRI) -I$(top_srcdir)/coregrind
valgrind_listener_CFLAGS = $(AM_CFLAGS_PRI)
valgrind_listener_CCASFLAGS = $(AM_CCASFLAGS_PRI)
valgrind_listener_LDFLAGS = $(AM_CFLAGS_PRI)
Modified: trunk/coregrind/Makefile.am
===================================================================
--- trunk/coregrind/Makefile.am 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/coregrind/Makefile.am 2009-02-06 04:49:14 UTC (rev 9114)
@@ -5,19 +5,31 @@
# the names of noinst_LIBRARIES or noinst_PROGRAMS change 'shape'.
include $(top_srcdir)/Makefile.all.am
-include $(top_srcdir)/Makefile.core.am
+include $(top_srcdir)/Makefile.flags.am
include $(top_srcdir)/Makefile.install.am
-AM_CPPFLAGS_X86_LINUX += -DVG_LIBDIR="\"$(valdir)"\"
-AM_CPPFLAGS_AMD64_LINUX += -DVG_LIBDIR="\"$(valdir)"\"
-AM_CPPFLAGS_PPC32_LINUX += -DVG_LIBDIR="\"$(valdir)"\"
-AM_CPPFLAGS_PPC64_LINUX += -DVG_LIBDIR="\"$(valdir)"\"
-AM_CPPFLAGS_PPC32_AIX5 += -DVG_LIBDIR="\"$(valdir)"\"
-AM_CPPFLAGS_PPC64_AIX5 += -DVG_LIBDIR="\"$(valdir)"\"
+AM_CPPFLAGS_CORE_COMMON = \
+ -I$(top_srcdir)/coregrind \
+ -DVG_LIBDIR="\"$(valdir)"\"
+AM_CPPFLAGS_X86_LINUX += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"x86-linux\""
+AM_CPPFLAGS_AMD64_LINUX += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"amd64-linux\""
+AM_CPPFLAGS_PPC32_LINUX += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"ppc32-linux\""
+AM_CPPFLAGS_PPC64_LINUX += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"ppc64-linux\""
+AM_CPPFLAGS_PPC32_AIX5 += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"ppc32-aix5\""
+AM_CPPFLAGS_PPC64_AIX5 += \
+ $(AM_CPPFLAGS_CORE_COMMON) -DVG_PLATFORM="\"ppc64-aix5\""
+
+
default.supp: $(SUPP_FILES)
+
noinst_LIBRARIES =
if VGCONF_PLATFORMS_INCLUDE_X86_LINUX
noinst_LIBRARIES += libcoregrind_x86_linux.a libreplacemalloc_toolpreload_x86_linux.a
@@ -38,6 +50,7 @@
noinst_LIBRARIES += libcoregrind_ppc64_aix5.a libreplacemalloc_toolpreload_ppc64_aix5.a
endif
+
#------------------------- launcher -----------------------
# Build the launcher (valgrind) for the primary target only.
#
Modified: trunk/coregrind/launcher-linux.c
===================================================================
--- trunk/coregrind/launcher-linux.c 2009-02-06 04:16:10 UTC (rev 9113)
+++ trunk/coregrind/launcher-linux.c 2009-02-06 04:49:14 UTC (rev 9114)
@@ -239,14 +239,11 @@
target, because on most ppc64-linux setups, the basic /bin,
/usr/bin, etc, stuff is built in 32-bit mode, not 64-bit
mode. */
- if (0==strcmp(VG_PLATFORM,"x86-linux"))
- default_platform = "x86-linux";
- else if (0==strcmp(VG_PLATFORM,"amd64-linux"))
- default_platform = "amd64-linux";
- else if (0==strcmp(VG_PLATFORM,"ppc32-linux"))
- default_platform = "ppc32-linux";
- else if (0==strcmp(VG_PLATFORM,"ppc64-linux"))
- default_platform = "ppc32-linux";
+ if ((0==strcmp(VG_PLATFORM,"x86-linux")) ||
+ (0==strcmp(VG_PLATFORM,"amd64-linux")) ||
+ (0==strcmp(VG_PLATFORM,"ppc32-linux")) ||
+ (0==strcmp(VG_PLATFORM,"ppc64-linux")))
+ default_platform = VG_PLATFORM"ppc32-linux";
else
barf("Unknown VG_PLATFORM '%s'", VG_PLATFORM);
|
|
From: <sv...@va...> - 2009-02-06 04:16:14
|
Author: njn Date: 2009-02-06 04:16:10 +0000 (Fri, 06 Feb 2009) New Revision: 9113 Log: Merge r9112 (remove unnecessary EXTRA_DIST files) from the trunk. Modified: branches/DARWIN/Makefile.am Modified: branches/DARWIN/Makefile.am =================================================================== --- branches/DARWIN/Makefile.am 2009-02-06 04:13:52 UTC (rev 9112) +++ branches/DARWIN/Makefile.am 2009-02-06 04:16:10 UTC (rev 9113) @@ -88,14 +88,14 @@ perf: check @PERL@ perf/vg_perf perf +# Nb: no need to include any Makefile.am files here, or files included from +# them, as automake includes them automatically. EXTRA_DIST = \ ACKNOWLEDGEMENTS \ README_DEVELOPERS \ README_PACKAGERS \ README_MISSING_SYSCALL_OR_IOCTL \ valgrind.spec.in valgrind.pc.in \ - Makefile.all.am Makefile.tool.am Makefile.core.am \ - Makefile.tool-inplace.am \ $(vex_primary_sources) \ vg-in-place |
|
From: <sv...@va...> - 2009-02-06 04:13:56
|
Author: njn Date: 2009-02-06 04:13:52 +0000 (Fri, 06 Feb 2009) New Revision: 9112 Log: Avoid unnecessary EXTRA_DIST files in Makefile.am. Modified: trunk/Makefile.am Modified: trunk/Makefile.am =================================================================== --- trunk/Makefile.am 2009-02-06 04:05:43 UTC (rev 9111) +++ trunk/Makefile.am 2009-02-06 04:13:52 UTC (rev 9112) @@ -84,14 +84,14 @@ perf: check @PERL@ perf/vg_perf perf +# Nb: no need to include any Makefile.am files here, or files included from +# them, as automake includes them automatically. EXTRA_DIST = \ ACKNOWLEDGEMENTS \ README_DEVELOPERS \ README_PACKAGERS \ README_MISSING_SYSCALL_OR_IOCTL \ valgrind.spec.in valgrind.pc.in \ - Makefile.all.am Makefile.tool.am Makefile.core.am \ - Makefile.tool-inplace.am \ $(vex_primary_sources) \ vg-in-place |
|
From: <sv...@va...> - 2009-02-06 04:05:50
|
Author: njn Date: 2009-02-06 04:05:43 +0000 (Fri, 06 Feb 2009) New Revision: 9111 Log: Merge r9110 (inline Makefile.tool-flags.am) from DARWIN branch. Removed: trunk/Makefile.tool-flags.am Modified: trunk/Makefile.tool.am Deleted: trunk/Makefile.tool-flags.am =================================================================== --- trunk/Makefile.tool-flags.am 2009-02-06 04:02:53 UTC (rev 9110) +++ trunk/Makefile.tool-flags.am 2009-02-06 04:05:43 UTC (rev 9111) @@ -1,37 +0,0 @@ -add_includes_x86_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_x86=1 \ - -DVGO_linux=1 \ - -DVGP_x86_linux=1 - -add_includes_amd64_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_amd64=1 \ - -DVGO_linux=1 \ - -DVGP_amd64_linux=1 - -add_includes_ppc32_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc32=1 \ - -DVGO_linux=1 \ - -DVGP_ppc32_linux=1 - -add_includes_ppc64_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc64=1 \ - -DVGO_linux=1 \ - -DVGP_ppc64_linux=1 - -add_includes_ppc32_aix5 = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc32=1 \ - -DVGO_aix5=1 \ - -DVGP_ppc32_aix5=1 - -add_includes_ppc64_aix5 = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc64=1 \ - -DVGO_aix5=1 \ - -DVGP_ppc64_aix5=1 - -include $(top_srcdir)/Makefile.flags.am Modified: trunk/Makefile.tool.am =================================================================== --- trunk/Makefile.tool.am 2009-02-06 04:02:53 UTC (rev 9110) +++ trunk/Makefile.tool.am 2009-02-06 04:05:43 UTC (rev 9111) @@ -2,10 +2,45 @@ SUBDIRS = . tests docs include $(top_srcdir)/Makefile.all.am +include $(top_srcdir)/Makefile.flags.am include $(top_srcdir)/Makefile.install.am -include $(top_srcdir)/Makefile.tool-flags.am include $(top_srcdir)/Makefile.tool-inplace.am +add_includes_COMMON = \ + -I$(top_srcdir)/include \ + -I@VEX_DIR@/pub + +add_includes_x86_linux = $(add_includes_COMMON) \ + -DVGA_x86=1 \ + -DVGO_linux=1 \ + -DVGP_x86_linux=1 + +add_includes_amd64_linux = $(add_includes_COMMON) \ + -DVGA_amd64=1 \ + -DVGO_linux=1 \ + -DVGP_amd64_linux=1 + +add_includes_ppc32_linux = $(add_includes_COMMON) \ + -DVGA_ppc32=1 \ + -DVGO_linux=1 \ + -DVGP_ppc32_linux=1 + +add_includes_ppc64_linux = $(add_includes_COMMON) \ + -DVGA_ppc64=1 \ + -DVGO_linux=1 \ + -DVGP_ppc64_linux=1 + +add_includes_ppc32_aix5 = $(add_includes_COMMON) \ + -DVGA_ppc32=1 \ + -DVGO_aix5=1 \ + -DVGP_ppc32_aix5=1 + +add_includes_ppc64_aix5 = $(add_includes_COMMON) \ + -DVGA_ppc64=1 \ + -DVGO_aix5=1 \ + -DVGP_ppc64_aix5=1 + + LIBREPLACEMALLOC_X86_LINUX = \ $(top_builddir)/coregrind/libreplacemalloc_toolpreload_x86_linux.a @@ -24,6 +59,7 @@ LIBREPLACEMALLOC_PPC64_AIX5 = \ $(top_builddir)/coregrind/libreplacemalloc_toolpreload_ppc64_aix5.a + COREGRIND_LIBS_X86_LINUX = \ $(top_builddir)/coregrind/libcoregrind_x86_linux.a \ @VEX_DIR@/libvex_x86_linux.a @@ -48,6 +84,7 @@ $(top_builddir)/coregrind/libcoregrind_ppc64_aix5.a \ @VEX_DIR@/libvex_ppc64_aix5.a + ##.PHONY: @VEX_DIR@/libvex.a @VEX_DIR@/libvex_x86_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h @@ -89,6 +126,7 @@ @VEX_DIR@/priv/main/vex_svnversion.h: $(MAKE) -C @VEX_DIR@ CC="$(CC)" version + TOOL_LDADD_COMMON = -lgcc TOOL_LDFLAGS_COMMON_LINUX = -static \ -Wl,-defsym,valt_load_address=@VALT_LOAD_ADDRESS@ \ @@ -128,19 +166,24 @@ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_X86_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_AMD64_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_AMD64_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC32_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_PPC32_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC64_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_PPC64_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC32_AIX5 = \ $(LIBREPLACEMALLOC_PPC32_AIX5) + LIBREPLACEMALLOC_LDFLAGS_PPC64_AIX5 = \ $(LIBREPLACEMALLOC_PPC64_AIX5) |
|
From: <sv...@va...> - 2009-02-06 04:03:07
|
Author: njn Date: 2009-02-06 04:02:53 +0000 (Fri, 06 Feb 2009) New Revision: 9110 Log: Inline Makefile.tool-flags.am into Makefile.tool.am -- there's no point having it in a separate file, it just makes things harder to follow. Removed: branches/DARWIN/Makefile.tool-flags.am Modified: branches/DARWIN/Makefile.tool.am Deleted: branches/DARWIN/Makefile.tool-flags.am =================================================================== --- branches/DARWIN/Makefile.tool-flags.am 2009-02-06 03:49:57 UTC (rev 9109) +++ branches/DARWIN/Makefile.tool-flags.am 2009-02-06 04:02:53 UTC (rev 9110) @@ -1,49 +0,0 @@ -add_includes_x86_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_x86=1 \ - -DVGO_linux=1 \ - -DVGP_x86_linux=1 - -add_includes_amd64_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_amd64=1 \ - -DVGO_linux=1 \ - -DVGP_amd64_linux=1 - -add_includes_ppc32_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc32=1 \ - -DVGO_linux=1 \ - -DVGP_ppc32_linux=1 - -add_includes_ppc64_linux = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc64=1 \ - -DVGO_linux=1 \ - -DVGP_ppc64_linux=1 - -add_includes_ppc32_aix5 = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc32=1 \ - -DVGO_aix5=1 \ - -DVGP_ppc32_aix5=1 - -add_includes_ppc64_aix5 = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_ppc64=1 \ - -DVGO_aix5=1 \ - -DVGP_ppc64_aix5=1 - -add_includes_x86_darwin = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_x86=1 \ - -DVGO_darwin=1 \ - -DVGP_x86_darwin=1 - -add_includes_amd64_darwin = -I$(top_srcdir)/include \ - -I@VEX_DIR@/pub \ - -DVGA_amd64=1 \ - -DVGO_darwin=1 \ - -DVGP_amd64_darwin=1 - -include $(top_srcdir)/Makefile.flags.am Modified: branches/DARWIN/Makefile.tool.am =================================================================== --- branches/DARWIN/Makefile.tool.am 2009-02-06 03:49:57 UTC (rev 9109) +++ branches/DARWIN/Makefile.tool.am 2009-02-06 04:02:53 UTC (rev 9110) @@ -2,10 +2,55 @@ SUBDIRS = . tests docs include $(top_srcdir)/Makefile.all.am +include $(top_srcdir)/Makefile.flags.am include $(top_srcdir)/Makefile.install.am -include $(top_srcdir)/Makefile.tool-flags.am include $(top_srcdir)/Makefile.tool-inplace.am +add_includes_COMMON = \ + -I$(top_srcdir)/include \ + -I@VEX_DIR@/pub + +add_includes_x86_linux = $(add_includes_COMMON) \ + -DVGA_x86=1 \ + -DVGO_linux=1 \ + -DVGP_x86_linux=1 + +add_includes_amd64_linux = $(add_includes_COMMON) \ + -DVGA_amd64=1 \ + -DVGO_linux=1 \ + -DVGP_amd64_linux=1 + +add_includes_ppc32_linux = $(add_includes_COMMON) \ + -DVGA_ppc32=1 \ + -DVGO_linux=1 \ + -DVGP_ppc32_linux=1 + +add_includes_ppc64_linux = $(add_includes_COMMON) \ + -DVGA_ppc64=1 \ + -DVGO_linux=1 \ + -DVGP_ppc64_linux=1 + +add_includes_ppc32_aix5 = $(add_includes_COMMON) \ + -DVGA_ppc32=1 \ + -DVGO_aix5=1 \ + -DVGP_ppc32_aix5=1 + +add_includes_ppc64_aix5 = $(add_includes_COMMON) \ + -DVGA_ppc64=1 \ + -DVGO_aix5=1 \ + -DVGP_ppc64_aix5=1 + +add_includes_x86_darwin = $(add_includes_COMMON) \ + -DVGA_x86=1 \ + -DVGO_darwin=1 \ + -DVGP_x86_darwin=1 + +add_includes_amd64_darwin = $(add_includes_COMMON) \ + -DVGA_amd64=1 \ + -DVGO_darwin=1 \ + -DVGP_amd64_darwin=1 + + LIBREPLACEMALLOC_X86_LINUX = \ $(top_builddir)/coregrind/libreplacemalloc_toolpreload_x86_linux.a @@ -30,6 +75,7 @@ LIBREPLACEMALLOC_AMD64_DARWIN = \ $(top_builddir)/coregrind/libreplacemalloc_toolpreload_amd64_darwin.a + COREGRIND_LIBS_X86_LINUX = \ $(top_builddir)/coregrind/libcoregrind_x86_linux.a \ @VEX_DIR@/libvex_x86_linux.a @@ -62,6 +108,7 @@ $(top_builddir)/coregrind/libcoregrind_amd64_darwin.a \ @VEX_DIR@/libvex_amd64_darwin.a + ##.PHONY: @VEX_DIR@/libvex.a @VEX_DIR@/libvex_x86_linux.a: @VEX_DIR@/priv/main/vex_svnversion.h @@ -115,6 +162,7 @@ @VEX_DIR@/priv/main/vex_svnversion.h: $(MAKE) -C @VEX_DIR@ CC="$(CC)" version + TOOL_LDADD_COMMON = -lgcc TOOL_LDFLAGS_COMMON_LINUX = -static \ -Wl,-defsym,valt_load_address=@VALT_LOAD_ADDRESS@ \ @@ -172,23 +220,30 @@ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_X86_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_AMD64_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_AMD64_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC32_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_PPC32_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC64_LINUX = \ -Wl,--whole-archive \ $(LIBREPLACEMALLOC_PPC64_LINUX) \ -Wl,--no-whole-archive + LIBREPLACEMALLOC_LDFLAGS_PPC32_AIX5 = \ $(LIBREPLACEMALLOC_PPC32_AIX5) + LIBREPLACEMALLOC_LDFLAGS_PPC64_AIX5 = \ $(LIBREPLACEMALLOC_PPC64_AIX5) + LIBREPLACEMALLOC_LDFLAGS_X86_DARWIN = \ $(LIBREPLACEMALLOC_X86_DARWIN) + LIBREPLACEMALLOC_LDFLAGS_AMD64_DARWIN = \ $(LIBREPLACEMALLOC_AMD64_DARWIN) |
|
From: Tom H. <th...@cy...> - 2009-02-06 03:51:37
|
Nightly build on vauxhall ( x86_64, Fedora 10 ) started at 2009-02-06 03:20:06 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 486 tests, 1 stderr failure, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) |
|
From: <sv...@va...> - 2009-02-06 03:50:08
|
Author: njn
Date: 2009-02-06 03:49:57 +0000 (Fri, 06 Feb 2009)
New Revision: 9109
Log:
Merge r9108 (minor build system improvements) from trunk.
Modified:
branches/DARWIN/Makefile.core.am
branches/DARWIN/configure.in
Modified: branches/DARWIN/Makefile.core.am
===================================================================
--- branches/DARWIN/Makefile.core.am 2009-02-06 03:46:50 UTC (rev 9108)
+++ branches/DARWIN/Makefile.core.am 2009-02-06 03:49:57 UTC (rev 9109)
@@ -1,94 +1,51 @@
-add_includes_x86_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/x86 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/x86-linux \
+add_includes_COMMON = \
+ -I$(top_srcdir)/coregrind \
-I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+ -I@VEX_DIR@/pub
+
+add_includes_x86_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"x86-linux\"" \
-DVGA_x86=1 \
-DVGO_linux=1 \
-DVGP_x86_linux=1
-add_includes_amd64_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/amd64 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/amd64-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_amd64_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"amd64-linux\"" \
-DVGA_amd64=1 \
-DVGO_linux=1 \
-DVGP_amd64_linux=1
-add_includes_ppc32_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc32 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/ppc32-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc32_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc32-linux\"" \
-DVGA_ppc32=1 \
-DVGO_linux=1 \
-DVGP_ppc32_linux=1
-add_includes_ppc64_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc64 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/ppc64-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc64_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc64-linux\"" \
-DVGA_ppc64=1 \
-DVGO_linux=1 \
-DVGP_ppc64_linux=1
-add_includes_ppc32_aix5 = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc32 \
- -I$(top_srcdir)/coregrind/aix5 \
- -I$(top_srcdir)/coregrind/ppc32-aix5 \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc32_aix5 = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc32-aix5\"" \
-DVGA_ppc32=1 \
-DVGO_aix5=1 \
-DVGP_ppc32_aix5=1
-add_includes_ppc64_aix5 = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc64 \
- -I$(top_srcdir)/coregrind/aix5 \
- -I$(top_srcdir)/coregrind/ppc64-aix5 \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc64_aix5 = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc64-aix5\"" \
-DVGA_ppc64=1 \
-DVGO_aix5=1 \
-DVGP_ppc64_aix5=1
-add_includes_x86_darwin = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/x86 \
- -I$(top_srcdir)/coregrind/darwin \
- -I$(top_srcdir)/coregrind/x86-darwin \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_x86_darwin = $(add_includes_COMMON) \
-DVG_PLATFORM="\"x86-darwin\"" \
-DVGA_x86=1 \
-DVGO_darwin=1 \
-DVGP_x86_darwin=1
-add_includes_amd64_darwin = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/amd64 \
- -I$(top_srcdir)/coregrind/darwin \
- -I$(top_srcdir)/coregrind/amd64-darwin \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_amd64_darwin = $(add_includes_COMMON) \
-DVG_PLATFORM="\"amd64-darwin\"" \
-DVGA_amd64=1 \
-DVGO_darwin=1 \
Modified: branches/DARWIN/configure.in
===================================================================
--- branches/DARWIN/configure.in 2009-02-06 03:46:50 UTC (rev 9108)
+++ branches/DARWIN/configure.in 2009-02-06 03:49:57 UTC (rev 9109)
@@ -215,8 +215,9 @@
#----------------------------------------------------------------------------
-# VGCONF_OS is the primary build OS. It is passed in to compilation of many
-# C files via -VGO_$(VGCONF_OS) and -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
+# VGCONF_OS is the primary build OS, eg. "linux". It is passed in to
+# compilation of many C files via -VGO_$(VGCONF_OS) and
+# -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
AC_MSG_CHECKING([for a supported OS])
AC_SUBST(VGCONF_OS)
@@ -333,22 +334,23 @@
#----------------------------------------------------------------------------
-# VGCONF_ARCH_PRI is the arch for the primary build target. By default it's
-# the same as ARCH_MAX. But if, say, we do a build on an amd64 machine, but
-# --enable-only32bit has been requested, then ARCH_MAX (see above) will be
-# "amd64" since that reflects the most that this cpu can do, but
-# VGCONF_ARCH_PRI will be downgraded to "x86", since that reflects the arch
-# corresponding to the primary build (VGCONF_PLATFORM_PRI_CAPS). It is
+# VGCONF_ARCH_PRI is the arch for the primary build target, eg. "amd64". By
+# default it's the same as ARCH_MAX. But if, say, we do a build on an amd64
+# machine, but --enable-only32bit has been requested, then ARCH_MAX (see
+# above) will be "amd64" since that reflects the most that this cpu can do,
+# but VGCONF_ARCH_PRI will be downgraded to "x86", since that reflects the
+# arch corresponding to the primary build (VGCONF_PLATFORM_PRI_CAPS). It is
# passed in to compilation of many C files via -VGA_$(VGCONF_ARCH_PRI) and
# -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
AC_SUBST(VGCONF_ARCH_PRI)
-# VGCONF_PLATFORM_PRI_CAPS is the primary build target. The entire system,
-# including regression and performance tests, will be built for this target.
-# The "_CAPS" indicates that the name is in capital letters, because it's
+# VGCONF_PLATFORM_PRI_CAPS is the primary build target, eg. "AMD64_LINUX".
+# The entire system, including regression and performance tests, will be
+# built for this target. The "_CAPS" indicates that the name is in capital
+# letters, and it also uses '_' rather than '-' as a separator, because it's
# used to create various Makefile variables, which are all in caps by
-# convention. This is in contrast to VGCONF_ARCH_PRI and VGCONF_OS which
-# are not in caps.
+# convention and cannot contain '-' characters. This is in contrast to
+# VGCONF_ARCH_PRI and VGCONF_OS which are not in caps.
AC_SUBST(VGCONF_PLATFORM_PRI_CAPS)
# VGCONF_PLATFORM_SEC_CAPS is the secondary build target, if there is one.
@@ -1836,10 +1838,9 @@
cat<<EOF
- configure.in: ARCH_MAX = ${ARCH_MAX}
- configure.in: VGCONF_ARCH_PRI = ${VGCONF_ARCH_PRI}
- configure.in: VGCONF_OS = ${VGCONF_OS}
-
+ Maximum build arch: ${ARCH_MAX}
+ Primary build arch: ${VGCONF_ARCH_PRI}
+ Build OS: ${VGCONF_OS}
Primary build target: ${VGCONF_PLATFORM_PRI_CAPS}
Secondary build target: ${VGCONF_PLATFORM_SEC_CAPS}
Default supp files: ${DEFAULT_SUPP}
|
|
From: <sv...@va...> - 2009-02-06 03:47:09
|
Author: njn
Date: 2009-02-06 03:46:50 +0000 (Fri, 06 Feb 2009)
New Revision: 9108
Log:
Index: Makefile.core.am
Factor out some includes. Remove some unnecessary includes.
Index: configure.in
Improve some comments. Make the arch/platform/OS output more consistent
and comprehensive.
Modified:
trunk/Makefile.core.am
trunk/configure.in
Modified: trunk/Makefile.core.am
===================================================================
--- trunk/Makefile.core.am 2009-02-05 01:04:01 UTC (rev 9107)
+++ trunk/Makefile.core.am 2009-02-06 03:46:50 UTC (rev 9108)
@@ -1,70 +1,39 @@
-add_includes_x86_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/x86 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/x86-linux \
+add_includes_COMMON = \
+ -I$(top_srcdir)/coregrind \
-I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+ -I@VEX_DIR@/pub
+
+add_includes_x86_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"x86-linux\"" \
-DVGA_x86=1 \
-DVGO_linux=1 \
-DVGP_x86_linux=1
-add_includes_amd64_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/amd64 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/amd64-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_amd64_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"amd64-linux\"" \
-DVGA_amd64=1 \
-DVGO_linux=1 \
-DVGP_amd64_linux=1
-add_includes_ppc32_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc32 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/ppc32-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc32_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc32-linux\"" \
-DVGA_ppc32=1 \
-DVGO_linux=1 \
-DVGP_ppc32_linux=1
-add_includes_ppc64_linux = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc64 \
- -I$(top_srcdir)/coregrind/linux \
- -I$(top_srcdir)/coregrind/ppc64-linux \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc64_linux = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc64-linux\"" \
-DVGA_ppc64=1 \
-DVGO_linux=1 \
-DVGP_ppc64_linux=1
-add_includes_ppc32_aix5 = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc32 \
- -I$(top_srcdir)/coregrind/aix5 \
- -I$(top_srcdir)/coregrind/ppc32-aix5 \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc32_aix5 = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc32-aix5\"" \
-DVGA_ppc32=1 \
-DVGO_aix5=1 \
-DVGP_ppc32_aix5=1
-add_includes_ppc64_aix5 = -I$(top_srcdir)/coregrind \
- -I$(top_srcdir) \
- -I$(top_srcdir)/coregrind/ppc64 \
- -I$(top_srcdir)/coregrind/aix5 \
- -I$(top_srcdir)/coregrind/ppc64-aix5 \
- -I$(top_srcdir)/include \
- -I@VEX_DIR@/pub \
+add_includes_ppc64_aix5 = $(add_includes_COMMON) \
-DVG_PLATFORM="\"ppc64-aix5\"" \
-DVGA_ppc64=1 \
-DVGO_aix5=1 \
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-02-05 01:04:01 UTC (rev 9107)
+++ trunk/configure.in 2009-02-06 03:46:50 UTC (rev 9108)
@@ -214,8 +214,9 @@
#----------------------------------------------------------------------------
-# VGCONF_OS is the primary build OS. It is passed in to compilation of many
-# C files via -VGO_$(VGCONF_OS) and -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
+# VGCONF_OS is the primary build OS, eg. "linux". It is passed in to
+# compilation of many C files via -VGO_$(VGCONF_OS) and
+# -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
AC_MSG_CHECKING([for a supported OS])
AC_SUBST(VGCONF_OS)
@@ -302,22 +303,23 @@
#----------------------------------------------------------------------------
-# VGCONF_ARCH_PRI is the arch for the primary build target. By default it's
-# the same as ARCH_MAX. But if, say, we do a build on an amd64 machine, but
-# --enable-only32bit has been requested, then ARCH_MAX (see above) will be
-# "amd64" since that reflects the most that this cpu can do, but
-# VGCONF_ARCH_PRI will be downgraded to "x86", since that reflects the arch
-# corresponding to the primary build (VGCONF_PLATFORM_PRI_CAPS). It is
+# VGCONF_ARCH_PRI is the arch for the primary build target, eg. "amd64". By
+# default it's the same as ARCH_MAX. But if, say, we do a build on an amd64
+# machine, but --enable-only32bit has been requested, then ARCH_MAX (see
+# above) will be "amd64" since that reflects the most that this cpu can do,
+# but VGCONF_ARCH_PRI will be downgraded to "x86", since that reflects the
+# arch corresponding to the primary build (VGCONF_PLATFORM_PRI_CAPS). It is
# passed in to compilation of many C files via -VGA_$(VGCONF_ARCH_PRI) and
# -VGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS).
AC_SUBST(VGCONF_ARCH_PRI)
-# VGCONF_PLATFORM_PRI_CAPS is the primary build target. The entire system,
-# including regression and performance tests, will be built for this target.
-# The "_CAPS" indicates that the name is in capital letters, because it's
+# VGCONF_PLATFORM_PRI_CAPS is the primary build target, eg. "AMD64_LINUX".
+# The entire system, including regression and performance tests, will be
+# built for this target. The "_CAPS" indicates that the name is in capital
+# letters, and it also uses '_' rather than '-' as a separator, because it's
# used to create various Makefile variables, which are all in caps by
-# convention. This is in contrast to VGCONF_ARCH_PRI and VGCONF_OS which
-# are not in caps.
+# convention and cannot contain '-' characters. This is in contrast to
+# VGCONF_ARCH_PRI and VGCONF_OS which are not in caps.
AC_SUBST(VGCONF_PLATFORM_PRI_CAPS)
# VGCONF_PLATFORM_SEC_CAPS is the secondary build target, if there is one.
@@ -1763,9 +1765,9 @@
cat<<EOF
- configure.in: ARCH_MAX = ${ARCH_MAX}
- configure.in: VGCONF_ARCH_PRI = ${VGCONF_ARCH_PRI}
-
+ Maximum build arch: ${ARCH_MAX}
+ Primary build arch: ${VGCONF_ARCH_PRI}
+ Build OS: ${VGCONF_OS}
Primary build target: ${VGCONF_PLATFORM_PRI_CAPS}
Secondary build target: ${VGCONF_PLATFORM_SEC_CAPS}
Default supp files: ${DEFAULT_SUPP}
|
|
From: Nicholas N. <n.n...@gm...> - 2009-02-06 03:44:50
|
Hi,
I have a proposal for simplifying the build system, particularly
installation of files.
Currently things get installed in two ways:
- "in-place": the .in_place directory is always made with "make", it
contains symlinks back to various files in tool dirs.
- "install": it contains copies of files.
The files that are built in the tree have names like:
memcheck-x86-linux, libcoregrind_x86_darwin.a,
vgpreload_memcheck-x86-darwin.so, libmpiwrap-X86_LINUX.so. But when
installed into either .in_place or the installation directory, they
get renamed to x86-linux/{memcheck,libcoregrind.a,vgpreload_memcheck.so,libmpiwrap.so}.
This requires various pieces of appalling sed hackery at install-time.
But I don't see any good reasons for it. I also don't see any good
reason for the inconsistency in the original names, eg. '-' vs '_',
caps vs. non-caps.
I have a patch which gets rid of the platform-specific directory in
the installation dir, and just keeps the platform-specific suffixes on
the various files. The launcher requires minor changes to find
things, but it's not difficult. It cuts out various horrendous parts
of Makefile.am files, some of which are the worst lines in the entire
build system.
It also avoids a big problem on Darwin, which has to do with my old
friends, the .dSYM directories. I need to generate and install
vgpreload_memcheck-x86-darwin.so.dSYM alongside
vgpreload_memcheck-x86-darwin.so. The problem is that the .dSYM
directory has a file within it,
vgpreload_memcheck-x86-darwin.so.dSYM/Contents/Resources/DWARF/vgpreload_memcheck-x86-darwin.so.
(In case you're wondering, the two .so files aren't the same -- the
top-level one lacks debug info, the one with .dSYM has it.) But if
the .dSYM dir gets renamed during installation to match the renamed
.so, the internal .so name no longer matches and Valgrind's dSYM debug
info reader gets confused. My patch above which avoids the renaming
fixes this problem. I'd rather not use sed to rename the internal
.so.
There's a possible problems with these installed files: libvex.a,
libvex_coregrind.a, libmpiwrap.so. I think the first two are there in
case you want to distribute your own tool without also distributing
Valgrind. (But we don't include libreplacemalloc_toolpreload.a, so
it's incomplete; I've added that in the patch.) But it wouldn't be
hard to an external tool to adjust to this change, and AFAIK there
aren't any being distributed. (We should probably also change the
library names from e.g. libvex_x86_linux.a to libvex-x86-linux.a.)
Changing x86-linux/libmpiwrap.so to libmpiwrap-x86-linux.so shouldn't
cause many problems, since it's designed to be manually included in a
program by a user. Some people might have scripts that need trivial
updates.
External Valgrind-invoking programs like Valkyrie shouldn't need to be
changed -- they will be calling $INSTALL/bin/valgrind, which hasn't
moved.
Thoughts?
Nick
|
|
From: Tom H. <th...@cy...> - 2009-02-06 03:44:02
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-02-06 03:05:07 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 477 tests, 6 stderr failures, 0 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) helgrind/tests/tc20_verifywrap (stderr) memcheck/tests/x86-linux/scalar (stderr) |
|
From: Tom H. <th...@cy...> - 2009-02-06 03:32:04
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-02-06 03:10:06 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 483 tests, 5 stderr failures, 2 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) memcheck/tests/linux/timerfd-syscall (stdout) memcheck/tests/x86-linux/scalar (stderr) none/tests/mremap2 (stdout) |
|
From: Nicholas N. <n.n...@gm...> - 2009-02-06 01:24:57
|
On Fri, Feb 6, 2009 at 11:01 AM, Nicholas Nethercote <n.n...@gm...> wrote: > > I tried 3.4.1-rc1 (aka. > http://www.valgrind.org/downloads/valgrind-3.4.1.SVN-9098-1883.tar.bz2), > I got only the expected regression test failures, so it looks good to > me. I don't think Julian has announced it on this list, so others > might want to try it. I found a problem that the regtests don't show: all the .supp files get installed in $INSTALL/lib/valgrind/. One of these is glibc-2.X.supp.in, *not* libc-2.X.supp. Actually, given that default.supp is installed, I don't know why any of the other .supp files need to be installed. N |
|
From: Nicholas N. <n.n...@gm...> - 2009-02-06 00:01:28
|
Hi, I tried 3.4.1-rc1 (aka. http://www.valgrind.org/downloads/valgrind-3.4.1.SVN-9098-1883.tar.bz2), I got only the expected regression test failures, so it looks good to me. I don't think Julian has announced it on this list, so others might want to try it. Nick |
|
From: Julian S. <js...@ac...> - 2009-02-05 23:12:49
|
> > On further consideration of this, a couple of comments: > > > > 1. Perhaps creating a new struct StackTrace is too much trouble. > > Possibly... if it's variable-sized then you can't stack-allocate it > (can you?) I wouldn't have thought so, no. > > So maybe it's then relevant to consider a representation > > (ips, ips_size, ips_used), where 1 <= ips_size <= VG_DEEPEST_STACKTRACE > > and 1 <= ips_used <= ips_size ? > > Yep. I'll likely do something like this when I get to looking at it. Good. J |
|
From: Nicholas N. <n.n...@gm...> - 2009-02-05 21:29:22
|
On Thu, Feb 5, 2009 at 8:00 PM, Julian Seward <js...@ac...> wrote: > > On further consideration of this, a couple of comments: > > 1. Perhaps creating a new struct StackTrace is too much trouble. Possibly... if it's variable-sized then you can't stack-allocate it (can you?) and that would inconvenience many existing uses. > 2. At the moment the machinery operates by passing around > (ips, n_ips) pairs. Won't the proposed change cause > confusion about the meaning of n_ips? Because then there > are two lengths to record: the size of the ips array, and > the number of actually used entries in it. > > So maybe it's then relevant to consider a representation > (ips, ips_size, ips_used), where 1 <= ips_size <= VG_DEEPEST_STACKTRACE > and 1 <= ips_used <= ips_size ? Yep. I'll likely do something like this when I get to looking at it. N |
|
From: Nicholas N. <n.n...@gm...> - 2009-02-05 21:26:36
|
On Thu, Feb 5, 2009 at 8:14 PM, Julian Seward <js...@ac...> wrote: > > I presume this will eventually show up in the trunk as a result > of Darwin merging activities. Yes, eventually... > Is it also something that should > be pushed to the stable branch? Probably. N |
|
From: <sv...@va...> - 2009-02-05 09:42:01
|
Author: sewardj Date: 2009-02-05 09:41:54 +0000 (Thu, 05 Feb 2009) New Revision: 376 Log: Make valgrind-3.4.1.SVN-9098-1883.tar.bz2 available for testing. Modified: trunk/downloads/current.html Modified: trunk/downloads/current.html =================================================================== --- trunk/downloads/current.html 2009-01-28 05:23:59 UTC (rev 375) +++ trunk/downloads/current.html 2009-02-05 09:41:54 UTC (rev 376) @@ -42,7 +42,17 @@ global arrays. There are many other smaller refinements and improvements.</p> +<div class="hr_brown"><hr/></div> +<p>5 Feb 09: a pre-release snapshot of 3.4.1, +<a href="/downloads/valgrind-3.4.1.SVN-9098-1883.tar.bz2">valgrind-3.4.1.SVN-9098-1883.tar.bz2</a>, +is now available. This fixes some regressions and assertion failures +in debug info reading in 3.4.0, most notably incorrect stack traces +on amd64-linux on older (glibc-2.3 based) systems. Various +other debug info problems are also fixed. Unless further significant +bugs are reported, the final 3.4.1 release will be very similar to +this tarball. Please note that this snapshot is provided for testing +purposes and is not the final 3.4.1 release.</p> <div class="hr_brown"><hr/></div> |
|
From: Julian S. <js...@ac...> - 2009-02-05 09:14:40
|
I presume this will eventually show up in the trunk as a result
of Darwin merging activities. Is it also something that should
be pushed to the stable branch?
J
On Wednesday 04 February 2009, sv...@va... wrote:
> Author: njn
> Date: 2009-02-04 06:50:26 +0000 (Wed, 04 Feb 2009)
> New Revision: 9106
>
> Log:
> Fix a minor bug, whereby a stack entry of zero would cause a "(heap
> allocation functions)" line to be written.
>
> Also invert some comparisons so the constant is first, to minimise the
> chance of assignments in conditions.
>
>
>
> Modified:
> branches/DARWIN/massif/ms_main.c
>
>
> Modified: branches/DARWIN/massif/ms_main.c
> ===================================================================
> --- branches/DARWIN/massif/ms_main.c 2009-02-04 05:14:30 UTC (rev 9105)
> +++ branches/DARWIN/massif/ms_main.c 2009-02-04 06:50:26 UTC (rev 9106)
> @@ -561,7 +561,7 @@
>
> if (hp + n_bytes > hp_lim) {
> hp = (Addr)VG_(am_shadow_alloc)(SUPERBLOCK_SIZE);
> - if (hp == 0)
> + if (0 == hp)
> VG_(out_of_memory_NORETURN)( "massif:perm_malloc",
> SUPERBLOCK_SIZE);
> hp_lim = hp + SUPERBLOCK_SIZE - 1;
> @@ -600,7 +600,7 @@
> // Expand 'children' if necessary.
> tl_assert(parent->n_children <= parent->max_children);
> if (parent->n_children == parent->max_children) {
> - if (parent->max_children == 0) {
> + if (0 == parent->max_children) {
> parent->max_children = 4;
> parent->children = VG_(malloc)( "ms.main.acx.1",
> parent->max_children *
> sizeof(XPt*) ); @@ -654,7 +654,7 @@
> //
> // Nb: We do this once now, rather than once per child, because if we
> do // that the cost of all the divisions adds up to something significant.
> - if (total_szB == 0 && clo_threshold != 0) {
> + if (0 == total_szB && 0 != clo_threshold) {
> sig_child_threshold_szB = 1;
> } else {
> sig_child_threshold_szB = (SizeT)((total_szB * clo_threshold) /
> 100); @@ -1420,7 +1420,7 @@
> if (n_skipped_snapshots_since_last_snapshot > 0) {
> VERB(2, " (skipped %d snapshot%s)",
> n_skipped_snapshots_since_last_snapshot,
> - ( n_skipped_snapshots_since_last_snapshot == 1 ? "" : "s") );
> + ( 1 == n_skipped_snapshots_since_last_snapshot ? "" : "s") );
> }
> VERB_snapshot(2, what, next_snapshot_i);
> n_skipped_snapshots_since_last_snapshot = 0;
> @@ -1994,7 +1994,7 @@
> switch (sxpt->tag) {
> case SigSXPt:
> // Print the SXPt itself.
> - if (sxpt->Sig.ip == 0) {
> + if (0 == depth) {
> ip_desc =
> "(heap allocation functions) malloc/new/new[], --alloc-fns,
> etc."; } else {
> @@ -2094,7 +2094,7 @@
> break;
>
> case InsigSXPt: {
> - Char* s = ( sxpt->Insig.n_xpts == 1 ? "," : "s, all" );
> + Char* s = ( 1 == sxpt->Insig.n_xpts ? "," : "s, all" );
> perc = make_perc(sxpt->szB, snapshot_total_szB);
> FP("%sn0: %lu in %d place%s below massif's threshold (%s)\n",
> depth_str, sxpt->szB, sxpt->Insig.n_xpts, s,
>
>
> ---------------------------------------------------------------------------
>--- Create and Deploy Rich Internet Apps outside the browser with
> Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing
> skills and code to build responsive, highly engaging applications that
> combine the power of local resources and data with the reach of the web.
> Download the Adobe AIR SDK and Ajax docs to start building applications
> today-http://p.sf.net/sfu/adobe-com
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
|
|
From: Julian S. <js...@ac...> - 2009-02-05 09:00:47
|
On further consideration of this, a couple of comments:
1. Perhaps creating a new struct StackTrace is too much trouble.
2. At the moment the machinery operates by passing around
(ips, n_ips) pairs. Won't the proposed change cause
confusion about the meaning of n_ips? Because then there
are two lengths to record: the size of the ips array, and
the number of actually used entries in it.
So maybe it's then relevant to consider a representation
(ips, ips_size, ips_used), where 1 <= ips_size <= VG_DEEPEST_STACKTRACE
and 1 <= ips_used <= ips_size ?
J
On Wednesday 04 February 2009, Julian Seward wrote:
> On Wednesday 04 February 2009, Nicholas Nethercote wrote:
> > So it seems we're currently using two distinct methods for indicating
> > the end of a stack trace. First, there's n_ips, and second, there's
> > zero entries. I think we should probably not treat zero entries
> > specially, and just rely on n_ips. If we do want to try to filter
> > out zero addresses, I think it should be done in
> > VG_(get_StackTrace_wrk) and then n_ips adjusted accordingly, rather
> > than doing such filtering subsequently.
> >
> > Thoughts?
>
> [summary of the following: I agree, but perhaps not trivial to fix
> cleanly]
>
> Yes. I suspect you of being correct :-) I believe the semantics of
> this stuff has never really been sorted out properly and perhaps now
> is the time.
>
> AFAIR the stop-at-zero thing is because thread stacks (possibly including
> the main stack, on ppc-linux) are actually terminated with a zero word
> in the IP chain.
>
> At the moment the basic output of VG_(get_StackTrace_wrk) is an array
> of Addrs, which in pub_tool_stacktrace.h is typedefd to "StackTrace".
>
> One obvious thing to do would be to turn StackTrace into a struct thusly:
>
> typedef
> struct { UInt n_ips; /* 1 <= .n_ips <= VG_DEEPEST_STACKTRACE */
> Addr ips[VG_DEEPEST_BACKTRACE] } StackTrace;
>
> so that at least StackTraces are self-describing w.r.t their length.
>
> But I think that might give performance/space problems, because there
> are places -- at least in Helgrind's conflicting-access machinery --
> where the number of frames stored, and hence the length of the array,
> is much less than VG_DEEPEST_BACKTRACE. Have a look at the defn of
> "struct _RCEC".
>
> One way round that is to use the old variable-length struct trick:
>
> typedef
> struct { UInt n_ips; /* 1 <= .n_ips <= VG_DEEPEST_STACKTRACE */
> Addr ips[0] } StackTrace;
>
> which I think might even be legitimate C nowadays. But it then gives
> a problem incorporating a StackTrace into a struct _ExeContext. Or
> perhaps not; it appears struct _ExeContext already uses the variable
> length array trick anyway:
>
> struct _ExeContext {
> struct _ExeContext* chain;
> /* A 32-bit unsigned integer that uniquely identifies this
> ExeContext. Memcheck uses these for origin tracking. Values
> must be nonzero (else Memcheck's origin tracking is hosed), must
> be a multiple of four, and must be unique. Hence they start at
> 4. */
> UInt ecu;
> /* Variable-length array. The size is 'n_ips'; at
> least 1, at most VG_DEEPEST_BACKTRACE. [0] is the current IP,
> [1] is its caller, [2] is the caller of [1], etc. */
> UInt n_ips;
> Addr ips[0];
> };
>
> so we would just replace the last two fields with a StaclTrace.
>
> Anybody know what the Rules of the Game are w.r.t. variable length
> arrays at the end of structs? In particular, if a variable length
> struct (StackTrace) is the last field of another struct (ExeContext),
> does the ExeContext itself become a variable length struct?
>
> J
>
> ---------------------------------------------------------------------------
>--- Create and Deploy Rich Internet Apps outside the browser with
> Adobe(R)AIR(TM) software. With Adobe AIR, Ajax developers can use existing
> skills and code to build responsive, highly engaging applications that
> combine the power of local resources and data with the reach of the web.
> Download the Adobe AIR SDK and Ajax docs to start building applications
> today-http://p.sf.net/sfu/adobe-com
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
|
|
From: Nicholas N. <n.n...@gm...> - 2009-02-05 06:41:55
|
On Sun, Feb 1, 2009 at 7:53 AM, Nicholas Nethercote <n.n...@gm...> wrote: > > And yet it doesn't seem to be possible to include Dwarf debug info in > a .a file on Mac. Sigh. Ah... it turns out that 'dwarfdump', the program that shows you debug info in a compiled file, cannot handle .a files. However, Dwarf debug info can be present in .a files and is propagated by the compiler into executables. Which means that building the libreplacemalloc.a library is ok. Nick |
|
From: Tom H. <th...@cy...> - 2009-02-05 03:47:44
|
Nightly build on vauxhall ( x86_64, Fedora 10 ) started at 2009-02-05 03:20:07 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 486 tests, 1 stderr failure, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) |
|
From: Tom H. <th...@cy...> - 2009-02-05 03:44:08
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-02-05 03:05:06 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 477 tests, 6 stderr failures, 0 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) helgrind/tests/tc20_verifywrap (stderr) memcheck/tests/x86-linux/scalar (stderr) |
|
From: Tom H. <th...@cy...> - 2009-02-05 03:31:59
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-02-05 03:10:03 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 483 tests, 5 stderr failures, 2 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) memcheck/tests/linux/timerfd-syscall (stdout) memcheck/tests/x86-linux/scalar (stderr) none/tests/mremap2 (stdout) |
|
From: <sv...@va...> - 2009-02-05 01:04:06
|
Author: njn
Date: 2009-02-05 01:04:01 +0000 (Thu, 05 Feb 2009)
New Revision: 9107
Log:
Add some missing '\' end-of-line markers.
Modified:
branches/DARWIN/massif/tests/Makefile.am
Modified: branches/DARWIN/massif/tests/Makefile.am
===================================================================
--- branches/DARWIN/massif/tests/Makefile.am 2009-02-04 06:50:26 UTC (rev 9106)
+++ branches/DARWIN/massif/tests/Makefile.am 2009-02-05 01:04:01 UTC (rev 9107)
@@ -19,7 +19,7 @@
deep-D.post.exp deep-D.stderr.exp deep-D.vgtest \
culling1.stderr.exp culling1.vgtest \
culling2.stderr.exp culling2.vgtest \
- custom_alloc.post.exp custom_alloc.stderr.exp custom_alloc.vgtest
+ custom_alloc.post.exp custom_alloc.stderr.exp custom_alloc.vgtest \
ignored.post.exp ignored.stderr.exp ignored.vgtest \
ignoring.post.exp ignoring.stderr.exp ignoring.vgtest \
insig.post.exp insig.stderr.exp insig.vgtest \
@@ -41,7 +41,7 @@
thresholds_5_10.post.exp thresholds_5_10.stderr.exp thresholds_5_10.vgtest \
thresholds_10_10.post.exp thresholds_10_10.stderr.exp thresholds_10_10.vgtest \
toobig-allocs.stderr.exp toobig-allocs.vgtest \
- zero1.post.exp zero1.stderr.exp zero1.vgtest
+ zero1.post.exp zero1.stderr.exp zero1.vgtest \
zero2.post.exp zero2.stderr.exp zero2.vgtest
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g $(AM_FLAG_M3264_PRI)
|
|
From: Julian S. <js...@ac...> - 2009-02-05 00:16:14
|
On Wednesday 04 February 2009, Nicholas Nethercote wrote:
> So it seems we're currently using two distinct methods for indicating
> the end of a stack trace. First, there's n_ips, and second, there's
> zero entries. I think we should probably not treat zero entries
> specially, and just rely on n_ips. If we do want to try to filter
> out zero addresses, I think it should be done in
> VG_(get_StackTrace_wrk) and then n_ips adjusted accordingly, rather
> than doing such filtering subsequently.
>
> Thoughts?
[summary of the following: I agree, but perhaps not trivial to fix
cleanly]
Yes. I suspect you of being correct :-) I believe the semantics of
this stuff has never really been sorted out properly and perhaps now
is the time.
AFAIR the stop-at-zero thing is because thread stacks (possibly including
the main stack, on ppc-linux) are actually terminated with a zero word
in the IP chain.
At the moment the basic output of VG_(get_StackTrace_wrk) is an array
of Addrs, which in pub_tool_stacktrace.h is typedefd to "StackTrace".
One obvious thing to do would be to turn StackTrace into a struct thusly:
typedef
struct { UInt n_ips; /* 1 <= .n_ips <= VG_DEEPEST_STACKTRACE */
Addr ips[VG_DEEPEST_BACKTRACE] } StackTrace;
so that at least StackTraces are self-describing w.r.t their length.
But I think that might give performance/space problems, because there
are places -- at least in Helgrind's conflicting-access machinery --
where the number of frames stored, and hence the length of the array,
is much less than VG_DEEPEST_BACKTRACE. Have a look at the defn of
"struct _RCEC".
One way round that is to use the old variable-length struct trick:
typedef
struct { UInt n_ips; /* 1 <= .n_ips <= VG_DEEPEST_STACKTRACE */
Addr ips[0] } StackTrace;
which I think might even be legitimate C nowadays. But it then gives
a problem incorporating a StackTrace into a struct _ExeContext. Or
perhaps not; it appears struct _ExeContext already uses the variable
length array trick anyway:
struct _ExeContext {
struct _ExeContext* chain;
/* A 32-bit unsigned integer that uniquely identifies this
ExeContext. Memcheck uses these for origin tracking. Values
must be nonzero (else Memcheck's origin tracking is hosed), must
be a multiple of four, and must be unique. Hence they start at
4. */
UInt ecu;
/* Variable-length array. The size is 'n_ips'; at
least 1, at most VG_DEEPEST_BACKTRACE. [0] is the current IP,
[1] is its caller, [2] is the caller of [1], etc. */
UInt n_ips;
Addr ips[0];
};
so we would just replace the last two fields with a StaclTrace.
Anybody know what the Rules of the Game are w.r.t. variable length
arrays at the end of structs? In particular, if a variable length
struct (StackTrace) is the last field of another struct (ExeContext),
does the ExeContext itself become a variable length struct?
J
|