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
(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-16 22:14:35
|
Author: njn
Date: 2009-02-16 22:06:20 +0000 (Mon, 16 Feb 2009)
New Revision: 9184
Log:
Don't print the stack trace when invalid file descriptors are detected.
This makes two more tests pass on Linux.
Modified:
branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c
branches/DARWIN/memcheck/mc_malloc_wrappers.c
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c 2009-02-16 21:44:42 UTC (rev 9183)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c 2009-02-16 22:06:20 UTC (rev 9184)
@@ -1185,12 +1185,17 @@
VG_(message)(Vg_UserMsg,
"Warning: invalid file descriptor %d in syscall %s()",
fd, syscallname);
- OINK(VG_(clo_log_fd));
- if (fd == VG_(clo_log_fd))
+ if (fd == VG_(clo_log_fd)) {
VG_(message)(Vg_UserMsg,
" Use --log-fd=<number> to select an alternative log fd.");
+ }
+ // DDD: consider always printing this stack trace, it's useful.
+ // Also consider also making this a proper core error, ie.
+ // suppressible and all that.
+ if (VG_(clo_verbosity) > 1) {
VG_(get_and_pp_StackTrace)(tid, VG_(clo_backtrace_size));
}
+ }
return allowed;
}
Modified: branches/DARWIN/memcheck/mc_malloc_wrappers.c
===================================================================
--- branches/DARWIN/memcheck/mc_malloc_wrappers.c 2009-02-16 21:44:42 UTC (rev 9183)
+++ branches/DARWIN/memcheck/mc_malloc_wrappers.c 2009-02-16 22:06:20 UTC (rev 9184)
@@ -155,6 +155,7 @@
/*--- client_malloc(), etc ---*/
/*------------------------------------------------------------*/
+// DDD: should make this a proper error (bug #79311).
static Bool complain_about_silly_args(SizeT sizeB, Char* fn)
{
// Cast to a signed type to catch any unexpectedly negative args. We're
|
|
From: <sv...@va...> - 2009-02-16 22:14:35
|
Author: njn Date: 2009-02-16 21:44:42 +0000 (Mon, 16 Feb 2009) New Revision: 9183 Log: Merged 9145:9182 (lots of DRD changes, and one minor bugfix in m_machine.c) from the trunk. Added: branches/DARWIN/drd/drd_basics.h branches/DARWIN/drd/drd_load_store.c branches/DARWIN/drd/drd_load_store.h Removed: branches/DARWIN/drd/drd_track.h Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c branches/DARWIN/drd/ branches/DARWIN/drd/Makefile.am branches/DARWIN/drd/drd.h branches/DARWIN/drd/drd_barrier.c branches/DARWIN/drd/drd_barrier.h branches/DARWIN/drd/drd_bitmap.c branches/DARWIN/drd/drd_bitmap.h branches/DARWIN/drd/drd_clientobj.c branches/DARWIN/drd/drd_clientobj.h branches/DARWIN/drd/drd_clientreq.c branches/DARWIN/drd/drd_clientreq.h branches/DARWIN/drd/drd_cond.c branches/DARWIN/drd/drd_cond.h branches/DARWIN/drd/drd_error.c branches/DARWIN/drd/drd_error.h branches/DARWIN/drd/drd_gomp_intercepts.c branches/DARWIN/drd/drd_main.c branches/DARWIN/drd/drd_malloc_wrappers.c branches/DARWIN/drd/drd_malloc_wrappers.h branches/DARWIN/drd/drd_mutex.c branches/DARWIN/drd/drd_mutex.h branches/DARWIN/drd/drd_pthread_intercepts.c branches/DARWIN/drd/drd_qtcore_intercepts.c branches/DARWIN/drd/drd_rwlock.c branches/DARWIN/drd/drd_rwlock.h branches/DARWIN/drd/drd_segment.c branches/DARWIN/drd/drd_segment.h branches/DARWIN/drd/drd_semaphore.c branches/DARWIN/drd/drd_semaphore.h branches/DARWIN/drd/drd_suppression.c branches/DARWIN/drd/drd_suppression.h branches/DARWIN/drd/drd_thread.c branches/DARWIN/drd/drd_thread.h branches/DARWIN/drd/drd_thread_bitmap.h branches/DARWIN/drd/drd_vc.c branches/DARWIN/drd/drd_vc.h branches/DARWIN/drd/pub_drd_bitmap.h branches/DARWIN/drd/tests/atomic_var.c branches/DARWIN/drd/tests/atomic_var.stderr.exp-with-atomic-builtins-1 branches/DARWIN/drd/tests/atomic_var.stderr.exp-with-atomic-builtins-2 branches/DARWIN/drd/tests/drd_bitmap_test.c branches/DARWIN/drd/tests/fp_race.c branches/DARWIN/drd/tests/fp_race.stderr.exp branches/DARWIN/drd/tests/hg03_inherit.stderr.exp branches/DARWIN/drd/tests/hg04_race.stderr.exp branches/DARWIN/drd/tests/hg05_race2.stderr.exp branches/DARWIN/drd/tests/hg05_race2.stderr.exp-powerpc branches/DARWIN/drd/tests/pth_cond_race.stderr.exp branches/DARWIN/drd/tests/pth_detached.c branches/DARWIN/drd/tests/pth_detached_sem.c branches/DARWIN/drd/tests/pth_inconsistent_cond_wait.stderr.exp1 branches/DARWIN/drd/tests/pth_inconsistent_cond_wait.stderr.exp2 branches/DARWIN/drd/tests/rwlock_race.stderr.exp branches/DARWIN/drd/tests/rwlock_race.stderr.exp2 branches/DARWIN/drd/tests/sem_as_mutex.c branches/DARWIN/drd/tests/sem_as_mutex.stderr.exp branches/DARWIN/drd/tests/tc09_bad_unlock.stderr.exp branches/DARWIN/drd/tests/tc09_bad_unlock.stderr.exp-glibc2.8 branches/DARWIN/drd/tests/tc22_exit_w_lock.stderr.exp-64bit branches/DARWIN/drd/tests/tc23_bogus_condwait.stderr.exp branches/DARWIN/memcheck/mc_machine.c [... diff too large to include ...] |
|
From: Bill H. <bil...@ki...> - 2009-02-16 22:13:13
|
Julian Seward wrote:
>> So, what is the process to get this into valgrind proper?
>
> Two things. First, address Bart's question some days back:
>
>> Regarding your patch: are you sure that the construct cited below is
>> foolproof ?
>>
>> + if(VG_(strstr)(VG_(clo_trace_children_skip), (Char*)ARG1)) {
>> + VG_(message)(Vg_UserMsg, "Skip trace child %s %s\n", ARG1,
>> VG_(clo_trace_children_skip));
>> + VG_(clo_trace_children) = 0;
>> + }
>
> I agree with Bart; merely using strstr seems a bit prone to getting
> false matches.
OK, I will look into a more robust implementation. Is there anything
similar to this already in the valgrind code base that I could look at?
>
> Secondly, could you also supply a suitable entry to docs/xml/manual-core.xml,
> please? (Look for the string "--trace-children=" in this file, and
> copy the varlistentry).
OK, I did not know about that.
Thanks for the feedback. Sounds like if I clean it up a bit, it will
get moved into valgrind proper. I will update the bug when the issues
are addressed.
-Bill
|
|
From: <sv...@va...> - 2009-02-16 19:44:03
|
Author: bart
Date: 2009-02-16 19:43:56 +0000 (Mon, 16 Feb 2009)
New Revision: 9182
Log:
- Updated copyright statements.
- Improved consistency of source file headers.
Modified:
trunk/drd/drd_barrier.c
trunk/drd/drd_barrier.h
trunk/drd/drd_basics.h
trunk/drd/drd_bitmap.c
trunk/drd/drd_bitmap.h
trunk/drd/drd_clientobj.c
trunk/drd/drd_clientobj.h
trunk/drd/drd_clientreq.c
trunk/drd/drd_clientreq.h
trunk/drd/drd_cond.c
trunk/drd/drd_cond.h
trunk/drd/drd_error.c
trunk/drd/drd_error.h
trunk/drd/drd_gomp_intercepts.c
trunk/drd/drd_load_store.c
trunk/drd/drd_load_store.h
trunk/drd/drd_main.c
trunk/drd/drd_malloc_wrappers.c
trunk/drd/drd_malloc_wrappers.h
trunk/drd/drd_mutex.c
trunk/drd/drd_mutex.h
trunk/drd/drd_pthread_intercepts.c
trunk/drd/drd_qtcore_intercepts.c
trunk/drd/drd_rwlock.c
trunk/drd/drd_rwlock.h
trunk/drd/drd_segment.c
trunk/drd/drd_segment.h
trunk/drd/drd_semaphore.c
trunk/drd/drd_semaphore.h
trunk/drd/drd_suppression.c
trunk/drd/drd_thread.c
trunk/drd/drd_thread.h
trunk/drd/drd_thread_bitmap.h
trunk/drd/drd_vc.c
trunk/drd/drd_vc.h
trunk/drd/pub_drd_bitmap.h
Modified: trunk/drd/drd_barrier.c
===================================================================
--- trunk/drd/drd_barrier.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_barrier.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_barrier.h
===================================================================
--- trunk/drd/drd_barrier.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_barrier.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_basics.h
===================================================================
--- trunk/drd/drd_basics.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_basics.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of DRD, a data race detector.
+ This file is part of DRD, a thread error detector.
Copyright (C) 2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_bitmap.c
===================================================================
--- trunk/drd/drd_bitmap.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_bitmap.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_bitmap.h
===================================================================
--- trunk/drd/drd_bitmap.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_bitmap.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_clientobj.c
===================================================================
--- trunk/drd/drd_clientobj.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_clientobj.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_clientobj.h
===================================================================
--- trunk/drd/drd_clientobj.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_clientobj.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_clientreq.c
===================================================================
--- trunk/drd/drd_clientreq.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_clientreq.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_clientreq.h
===================================================================
--- trunk/drd/drd_clientreq.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_clientreq.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_cond.c
===================================================================
--- trunk/drd/drd_cond.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_cond.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_cond.h
===================================================================
--- trunk/drd/drd_cond.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_cond.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_error.c
===================================================================
--- trunk/drd/drd_error.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_error.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_error.h
===================================================================
--- trunk/drd/drd_error.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_error.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_gomp_intercepts.c
===================================================================
--- trunk/drd/drd_gomp_intercepts.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_gomp_intercepts.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -4,10 +4,9 @@
/*--------------------------------------------------------------------*/
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_load_store.c
===================================================================
--- trunk/drd/drd_load_store.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_load_store.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_load_store.h
===================================================================
--- trunk/drd/drd_load_store.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_load_store.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_main.c
===================================================================
--- trunk/drd/drd_main.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_main.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
@@ -580,7 +580,7 @@
VG_(details_name) ("drd");
VG_(details_version) (NULL);
VG_(details_description) ("a thread error detector");
- VG_(details_copyright_author)("Copyright (C) 2006-2008, and GNU GPL'd,"
+ VG_(details_copyright_author)("Copyright (C) 2006-2009, and GNU GPL'd,"
" by Bart Van Assche.");
VG_(details_bug_reports_to) (VG_BUGS_TO);
Modified: trunk/drd/drd_malloc_wrappers.c
===================================================================
--- trunk/drd/drd_malloc_wrappers.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_malloc_wrappers.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_malloc_wrappers.h
===================================================================
--- trunk/drd/drd_malloc_wrappers.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_malloc_wrappers.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_mutex.c
===================================================================
--- trunk/drd/drd_mutex.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_mutex.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,5 +1,5 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_mutex.h
===================================================================
--- trunk/drd/drd_mutex.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_mutex.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_pthread_intercepts.c
===================================================================
--- trunk/drd/drd_pthread_intercepts.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_pthread_intercepts.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -4,7 +4,7 @@
/*--------------------------------------------------------------------*/
/*
- This file is part of DRD, a data race detector.
+ This file is part of DRD, a thread error detector.
Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
Modified: trunk/drd/drd_qtcore_intercepts.c
===================================================================
--- trunk/drd/drd_qtcore_intercepts.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_qtcore_intercepts.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -4,10 +4,9 @@
/*--------------------------------------------------------------------*/
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2008 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_rwlock.c
===================================================================
--- trunk/drd/drd_rwlock.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_rwlock.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_rwlock.h
===================================================================
--- trunk/drd/drd_rwlock.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_rwlock.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_segment.c
===================================================================
--- trunk/drd/drd_segment.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_segment.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_segment.h
===================================================================
--- trunk/drd/drd_segment.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_segment.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_semaphore.c
===================================================================
--- trunk/drd/drd_semaphore.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_semaphore.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_semaphore.h
===================================================================
--- trunk/drd/drd_semaphore.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_semaphore.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_suppression.c
===================================================================
--- trunk/drd/drd_suppression.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_suppression.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_thread.c
===================================================================
--- trunk/drd/drd_thread.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_thread.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_thread.h
===================================================================
--- trunk/drd/drd_thread.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_thread.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_thread_bitmap.h
===================================================================
--- trunk/drd/drd_thread_bitmap.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_thread_bitmap.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_vc.c
===================================================================
--- trunk/drd/drd_vc.c 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_vc.c 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/drd_vc.h
===================================================================
--- trunk/drd/drd_vc.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/drd_vc.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
Modified: trunk/drd/pub_drd_bitmap.h
===================================================================
--- trunk/drd/pub_drd_bitmap.h 2009-02-16 19:42:17 UTC (rev 9181)
+++ trunk/drd/pub_drd_bitmap.h 2009-02-16 19:43:56 UTC (rev 9182)
@@ -1,8 +1,7 @@
/*
- This file is part of drd, a data race detector.
+ This file is part of drd, a thread error detector.
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
+ Copyright (C) 2006-2009 Bart Van Assche <bar...@gm...>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
|
|
From: <sv...@va...> - 2009-02-16 19:42:25
|
Author: bart
Date: 2009-02-16 19:42:17 +0000 (Mon, 16 Feb 2009)
New Revision: 9181
Log:
Just as for the regression tests of other Valgrind tools, do not explicitly state that these are licensed under the GPLv2 license but leave this implicit.
Modified:
trunk/drd/tests/fp_race.c
trunk/drd/tests/fp_race.stderr.exp
trunk/drd/tests/pth_detached.c
trunk/drd/tests/pth_detached_sem.c
trunk/drd/tests/sem_as_mutex.c
trunk/drd/tests/sem_as_mutex.stderr.exp
Modified: trunk/drd/tests/fp_race.c
===================================================================
--- trunk/drd/tests/fp_race.c 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/fp_race.c 2009-02-16 19:42:17 UTC (rev 9181)
@@ -1,56 +1,33 @@
-/*
- This file is part of drd, a data race detector.
+/* Test data race detection between floating point variables. */
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307, USA.
-
- The GNU General Public License is contained in the file COPYING.
-*/
-
-// Test data race detection between floating point variables.
-
#include <assert.h>
-#include <stdio.h> // printf()
+#include <stdio.h> /* printf() */
#include <pthread.h>
-#include <unistd.h> // usleep()
+#include <unistd.h> /* usleep() */
+/* Local functions declarations. */
-// Local functions declarations.
-
static void* thread_func(void*);
-// Local variables.
-// s_mutex protects s_d3.
+/* Local variables. */
+
+/* s_mutex protects s_d3. */
static pthread_mutex_t s_mutex;
-static double s_d1; // accessed before thread creation and in the created
- // thread (not a race).
-static double s_d2; // accessed in the created thread and after the join
- // (not a race).
-static double s_d3; // accessed simultaneously from both threads (race).
+static double s_d1; /* accessed before thread creation and in the created */
+ /* thread (not a race). */
+static double s_d2; /* accessed in the created thread and after the join */
+ /* (not a race). */
+static double s_d3; /* accessed simultaneously from both threads (race). */
static int s_debug = 0;
static int s_do_printf = 0;
static int s_use_mutex = 0;
-// Function definitions.
+/* Function definitions. */
int main(int argc, char** argv)
{
@@ -77,8 +54,10 @@
pthread_mutex_init(&s_mutex, 0);
- // Switch to line-buffered mode, such that timing information can be
- // obtained for each printf() call with strace.
+ /*
+ * Switch to line-buffered mode, such that timing information can be
+ * obtained for each printf() call with strace.
+ */
setlinebuf(stdout);
if (s_debug)
@@ -90,7 +69,6 @@
s_d3 = 3;
pthread_create(&threadid, 0, thread_func, 0);
- // Wait until the printf() in the created thread finished.
{
if (s_use_mutex) pthread_mutex_lock(&s_mutex);
@@ -98,12 +76,8 @@
if (s_use_mutex) pthread_mutex_unlock(&s_mutex);
}
- // Wait until the thread finished.
- //printf("Before call to pthread_join()\n");
- //fflush(stdout);
+ /* Wait until the thread finished. */
pthread_join(threadid, 0);
- //printf("After call to pthread_join()\n");
- //fflush(stdout);
if (s_do_printf) printf("s_d2 = %g (should be 2)\n", s_d2);
if (s_do_printf) printf("s_d3 = %g (should be 5)\n", s_d3);
Modified: trunk/drd/tests/fp_race.stderr.exp
===================================================================
--- trunk/drd/tests/fp_race.stderr.exp 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/fp_race.stderr.exp 2009-02-16 19:42:17 UTC (rev 9181)
@@ -2,7 +2,7 @@
Conflicting load by thread 1/1 at 0x........ size 8
at 0x........: main (fp_race.c:?)
Location 0x........ is 0 bytes inside local var "s_d3"
-declared at fp_race.c:47, in frame #? of thread 1
+declared at fp_race.c:24, in frame #? of thread 1
Other segment start (thread 0/2)
(thread finished, call stack no longer available)
Other segment end (thread 0/2)
@@ -11,7 +11,7 @@
Conflicting store by thread 1/1 at 0x........ size 8
at 0x........: main (fp_race.c:?)
Location 0x........ is 0 bytes inside local var "s_d3"
-declared at fp_race.c:47, in frame #? of thread 1
+declared at fp_race.c:24, in frame #? of thread 1
Other segment start (thread 0/2)
(thread finished, call stack no longer available)
Other segment end (thread 0/2)
Modified: trunk/drd/tests/pth_detached.c
===================================================================
--- trunk/drd/tests/pth_detached.c 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/pth_detached.c 2009-02-16 19:42:17 UTC (rev 9181)
@@ -1,6 +1,4 @@
-/** Test whether detached threads are handled properly.
- * Copyright (c) 2006-2008 by Bart Van Assche (bar...@gm...).
- */
+/* Test whether detached threads are handled properly. */
#include <assert.h>
Modified: trunk/drd/tests/pth_detached_sem.c
===================================================================
--- trunk/drd/tests/pth_detached_sem.c 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/pth_detached_sem.c 2009-02-16 19:42:17 UTC (rev 9181)
@@ -1,9 +1,9 @@
-/** Test whether detached threads are handled properly.
- * This test program is based on pth_detached.c, with the difference that
- * in this test program the main thread uses a counting semaphore instead
- * of a counter protected by a mutex to wait until all detached threads
- * finished.
- * Copyright (c) 2006-2008 by Bart Van Assche (bar...@gm...).
+/**
+ * Test whether detached threads are handled properly.
+ * This test program is based on pth_detached.c, with the difference that
+ * in this test program the main thread uses a counting semaphore instead
+ * of a counter protected by a mutex to wait until all detached threads
+ * finished.
*/
Modified: trunk/drd/tests/sem_as_mutex.c
===================================================================
--- trunk/drd/tests/sem_as_mutex.c 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/sem_as_mutex.c 2009-02-16 19:42:17 UTC (rev 9181)
@@ -1,57 +1,34 @@
-/*
- This file is part of drd, a data race detector.
+/* Use a semaphore to implement mutual exclusion. */
- Copyright (C) 2006-2008 Bart Van Assche
- bar...@gm...
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307, USA.
-
- The GNU General Public License is contained in the file COPYING.
-*/
-
-// Use a semaphore to implement mutual exclusion.
-
#include <assert.h>
-#include <stdio.h> // printf()
+#include <stdio.h> /* printf() */
#include <pthread.h>
#include <semaphore.h>
-#include <unistd.h> // usleep()
+#include <unistd.h> /* usleep() */
+/* Local functions declarations. */
-// Local functions declarations.
-
static void* thread_func(void*);
-// Local variables.
-// s_sem protects s_d3.
+/* Local variables. */
+
+/* s_sem protects s_d3. */
static sem_t s_sem;
-static double s_d1; // accessed before thread creation and in the created
- // thread (not a race).
-static double s_d2; // accessed in the created thread and after the join
- // (not a race).
-static double s_d3; // accessed simultaneously from both threads (race).
+static double s_d1; /* accessed before thread creation and in the created */
+ /* thread (not a race). */
+static double s_d2; /* accessed in the created thread and after the join */
+ /* (not a race). */
+static double s_d3; /* accessed simultaneously from both threads (race). */
static int s_debug = 0;
static int s_do_printf = 0;
static int s_do_mutual_exclusion = 0;
-// Function definitions.
+/* Function definitions. */
int main(int argc, char** argv)
{
@@ -78,8 +55,10 @@
sem_init(&s_sem, 0, 1);
- // Switch to line-buffered mode, such that timing information can be
- // obtained for each printf() call with strace.
+ /*
+ * Switch to line-buffered mode, such that timing information can be
+ * obtained for each printf() call with strace.
+ */
setlinebuf(stdout);
if (s_debug)
@@ -91,7 +70,6 @@
s_d3 = 3;
pthread_create(&threadid, 0, thread_func, 0);
- // Wait until the printf() in the created thread finished.
{
if (s_do_mutual_exclusion) sem_wait(&s_sem);
@@ -99,12 +77,8 @@
if (s_do_mutual_exclusion) sem_post(&s_sem);
}
- // Wait until the thread finished.
- //printf("Before call to pthread_join()\n");
- //fflush(stdout);
+ /* Wait until the thread finished. */
pthread_join(threadid, 0);
- //printf("After call to pthread_join()\n");
- //fflush(stdout);
if (s_do_printf) printf("s_d2 = %g (should be 2)\n", s_d2);
if (s_do_printf) printf("s_d3 = %g (should be 5)\n", s_d3);
Modified: trunk/drd/tests/sem_as_mutex.stderr.exp
===================================================================
--- trunk/drd/tests/sem_as_mutex.stderr.exp 2009-02-16 07:10:42 UTC (rev 9180)
+++ trunk/drd/tests/sem_as_mutex.stderr.exp 2009-02-16 19:42:17 UTC (rev 9181)
@@ -2,7 +2,7 @@
Conflicting load by thread 1/1 at 0x........ size 8
at 0x........: main (sem_as_mutex.c:?)
Location 0x........ is 0 bytes inside local var "s_d3"
-declared at sem_as_mutex.c:48, in frame #? of thread 1
+declared at sem_as_mutex.c:25, in frame #? of thread 1
Other segment start (thread 0/2)
(thread finished, call stack no longer available)
Other segment end (thread 0/2)
@@ -11,7 +11,7 @@
Conflicting store by thread 1/1 at 0x........ size 8
at 0x........: main (sem_as_mutex.c:?)
Location 0x........ is 0 bytes inside local var "s_d3"
-declared at sem_as_mutex.c:48, in frame #? of thread 1
+declared at sem_as_mutex.c:25, in frame #? of thread 1
Other segment start (thread 0/2)
(thread finished, call stack no longer available)
Other segment end (thread 0/2)
|
|
From: <sv...@va...> - 2009-02-16 07:10:47
|
Author: njn
Date: 2009-02-16 07:10:42 +0000 (Mon, 16 Feb 2009)
New Revision: 9180
Log:
Make the Darwin syscall table work like the Linux one.
Modified:
branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
branches/DARWIN/coregrind/m_syswrap/syswrap-main.c
branches/DARWIN/include/vki/vki-scnums-darwin.h
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-02-16 05:52:11 UTC (rev 9179)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-02-16 07:10:42 UTC (rev 9180)
@@ -6333,15 +6333,15 @@
#define _____(sysno) GENX_(sysno, sys_ni_syscall)
/*
- // _____ : unsupported by the kernel
- _____ : unimplemented in valgrind (sys_ni_syscall)
+ _____ : unsupported by the kernel (sys_ni_syscall)
+ // _____ : unimplemented in valgrind
GEN : handlers are in syswrap-generic.c
MAC : handlers are in this file
X_ : PRE handler only
XY : PRE and POST handlers
*/
const SyscallTableEntry ML_(syscall_table)[] = {
- _____(__NR_syscall), // 0
+// _____(__NR_syscall), // 0
MACX_(__NR_exit, sys_exit),
GENX_(__NR_fork, sys_fork),
GENXY(__NR_read, sys_read),
@@ -6349,21 +6349,21 @@
GENXY(__NR_open, sys_open),
GENXY(__NR_close, sys_close),
GENXY(__NR_wait4, sys_wait4),
-// _____(__NR_creat),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(8)), // old creat
GENX_(__NR_link, sys_link),
GENX_(__NR_unlink, sys_unlink),
-// _____(__NR_execv),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(11)), // old execv
GENX_(__NR_chdir, sys_chdir),
GENX_(__NR_fchdir, sys_fchdir),
GENX_(__NR_mknod, sys_mknod),
GENX_(__NR_chmod, sys_chmod),
GENX_(__NR_chown, sys_chown),
-// _____(__NR_break),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(17)), // old break
MACXY(__NR_getfsstat, sys_getfsstat),
-// _____(__NR_lseek),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(19)), // old lseek
GENX_(__NR_getpid, sys_getpid), // 20
-// _____(__NR_mount),
-// _____(__NR_umount),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(21)), // old mount
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(22)), // old umount
GENX_(__NR_setuid, sys_setuid),
GENX_(__NR_getuid, sys_getuid),
GENX_(__NR_geteuid, sys_geteuid),
@@ -6379,198 +6379,198 @@
MACX_(__NR_fchflags, sys_fchflags),
GENX_(__NR_sync, sys_sync),
GENX_(__NR_kill, sys_kill),
-// _____(__NR_stat),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(38)), // old stat
GENX_(__NR_getppid, sys_getppid),
-// _____(__NR_lstat), // 40
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(40)), // old lstat
GENXY(__NR_dup, sys_dup),
MACXY(__NR_pipe, sys_pipe),
GENX_(__NR_getegid, sys_getegid),
- _____(__NR_profil),
-// _____(__NR_ktrace),
+// _____(__NR_profil),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(45)), // old ktrace
MACX_(__NR_sigaction, sys_sigaction),
GENX_(__NR_getgid, sys_getgid),
MACXY(__NR_sigprocmask, sys_sigprocmask),
MACXY(__NR_getlogin, sys_getlogin),
- _____(__NR_setlogin),
- _____(__NR_acct),
- _____(__NR_sigpending),
+// _____(__NR_setlogin),
+// _____(__NR_acct),
+// _____(__NR_sigpending),
MACX_(__NR_sigaltstack, sys_sigaltstack),
MACXY(__NR_ioctl, sys_ioctl),
- _____(__NR_reboot),
- _____(__NR_revoke),
- _____(__NR_symlink),
+// _____(__NR_reboot),
+// _____(__NR_revoke),
+// _____(__NR_symlink),
GENX_(__NR_readlink, sys_readlink),
GENX_(__NR_execve, sys_execve),
GENX_(__NR_umask, sys_umask), // 60
GENX_(__NR_chroot, sys_chroot),
-// _____(__NR_fstat),
-// _____(__NR_63),
-// _____(__NR_getpagesize),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(62)), // old fstat
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(63)), // used internally, reserved
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(64)), // old getpagesize
GENX_(__NR_msync, sys_msync),
- _____(__NR_vfork),
-// _____(__NR_vread),
-// _____(__NR_vwrite),
-// _____(__NR_sbrk),
-// _____(__NR_sstk),
-// _____(__NR_mmap),
-// _____(__NR_vadvise),
+// _____(__NR_vfork),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(67)), // old vread
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(68)), // old vwrite
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(69)), // old sbrk
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(70)), // old sstk
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(71)), // old mmap
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(72)), // old vadvise
GENXY(__NR_munmap, sys_munmap),
GENXY(__NR_mprotect, sys_mprotect),
GENX_(__NR_madvise, sys_madvise),
-// _____(__NR_vhangup),
-// _____(__NR_vlimit),
- _____(__NR_mincore),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(76)), // old vhangup
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(77)), // old vlimit
+// _____(__NR_mincore),
GENXY(__NR_getgroups, sys_getgroups),
- _____(__NR_setgroups), // 80
+// _____(__NR_setgroups), // 80
GENX_(__NR_getpgrp, sys_getpgrp),
- _____(__NR_setpgid),
+// _____(__NR_setpgid),
GENX_(__NR_setitimer, sys_setitimer),
-// _____(__NR_wait),
- _____(__NR_swapon),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(84)), // old wait
+// _____(__NR_swapon),
GENX_(__NR_getitimer, sys_getitimer),
-// _____(__NR_gethostname),
-// _____(__NR_sethostname),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(87)), // old gethostname
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(88)), // old sethostname
MACXY(__NR_getdtablesize, sys_getdtablesize),
GENX_(__NR_dup2, sys_dup2),
-// _____(__NR_getdopt),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(91)), // old getdopt
MACXY(__NR_fcntl, sys_fcntl),
GENX_(__NR_select, sys_select),
-// _____(__NR_setdopt),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(94)), // old setdopt
GENX_(__NR_fsync, sys_fsync),
GENX_(__NR_setpriority, sys_setpriority),
MACXY(__NR_socket, sys_socket),
MACX_(__NR_connect, sys_connect),
-// _____(__NR_accept),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(99)), // old accept
GENX_(__NR_getpriority, sys_getpriority), // 100
-// _____(__NR_send),
-// _____(__NR_recv),
-// _____(__NR_sigreturn),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(101)), // old send
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(102)), // old recv
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(103)), // old sigreturn
MACX_(__NR_bind, sys_bind),
MACX_(__NR_setsockopt, sys_setsockopt),
MACX_(__NR_listen, sys_listen),
-// _____(__NR_vtimes),
-// _____(__NR_sigvec),
-// _____(__NR_sigblock),
-// _____(__NR_sigsetmask),
- _____(__NR_sigsuspend),
-// _____(__NR_sigstack),
-// _____(__NR_recvmsg),
-// _____(__NR_sendmsg),
-// _____(__NR_vtrace),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(107)), // old vtimes
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(108)), // old sigvec
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(109)), // old sigblock
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(110)), // old sigsetmask
+// _____(__NR_sigsuspend),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(112)), // old sigstack
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(113)), // old recvmsg
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(114)), // old sendmsg
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(115)), // old vtrace
GENXY(__NR_gettimeofday, sys_gettimeofday),
GENXY(__NR_getrusage, sys_getrusage),
MACXY(__NR_getsockopt, sys_getsockopt),
-// _____(__NR_resuba),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(119)), // old resuba
GENXY(__NR_readv, sys_readv), // 120
GENX_(__NR_writev, sys_writev),
- _____(__NR_settimeofday),
+// _____(__NR_settimeofday),
GENX_(__NR_fchown, sys_fchown),
GENX_(__NR_fchmod, sys_fchmod),
-// _____(__NR_recvfrom),
- _____(__NR_setreuid),
- _____(__NR_setregid),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(125)), // old recvfrom
+// _____(__NR_setreuid),
+// _____(__NR_setregid),
GENX_(__NR_rename, sys_rename),
-// _____(__NR_truncate),
-// _____(__NR_ftruncate),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(129)), // old truncate
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(130)), // old ftruncate
GENX_(__NR_flock, sys_flock),
- _____(__NR_mkfifo),
+// _____(__NR_mkfifo),
MACX_(__NR_sendto, sys_sendto),
MACX_(__NR_shutdown, sys_shutdown),
MACXY(__NR_socketpair, sys_socketpair),
GENX_(__NR_mkdir, sys_mkdir),
GENX_(__NR_rmdir, sys_rmdir),
GENX_(__NR_utimes, sys_utimes),
- _____(__NR_futimes),
- _____(__NR_adjtime), // 140
-// _____(__NR_getpeername),
+// _____(__NR_futimes),
+// _____(__NR_adjtime), // 140
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(141)), // old getpeername
MACXY(__NR_gethostuuid, sys_gethostuuid),
-// _____(__NR_sethostid),
-// _____(__NR_getrlimit),
-// _____(__NR_setrlimit),
-// _____(__NR_killpg),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(143)), // old sethostid
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(144)), // old getrlimit
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(145)), // old setrlimit
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(146)), // old killpg
GENX_(__NR_setsid, sys_setsid),
-// _____(__NR_setquota),
-// _____(__NR_qquota),
-// _____(__NR_getsockname),
- _____(__NR_getpgid),
- _____(__NR_setprivexec),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(148)), // old setquota
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(149)), // old qquota
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(150)), // old getsockname
+// _____(__NR_getpgid),
+// _____(__NR_setprivexec),
GENXY(__NR_pread, sys_pread64),
GENX_(__NR_pwrite, sys_pwrite64),
- _____(__NR_nfssvc),
-// _____(__NR_getdirentries),
+// _____(__NR_nfssvc),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(156)), // old getdirentries
GENXY(__NR_statfs, sys_statfs),
GENXY(__NR_fstatfs, sys_fstatfs),
- _____(__NR_unmount),
-// _____(__NR_async_daemon), // 160
- _____(__NR_getfh),
-// _____(__NR_getdomainname),
-// _____(__NR_setdomainname),
-// _____(__NR_164),
- _____(__NR_quotactl),
-// _____(__NR_exportfs),
- _____(__NR_mount),
-// _____(__NR_ustat),
- _____(__NR_csops),
-// _____(__NR_table),
-// _____(__NR_wait3),
-// _____(__NR_rpause),
- _____(__NR_waitid),
-// _____(__NR_getdents),
-// _____(__NR_gc_control),
- _____(__NR_add_profil),
-// _____(__NR_177),
-// _____(__NR_178),
-// _____(__NR_179),
+// _____(__NR_unmount),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(160)), // old async_daemon
+// _____(__NR_getfh),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(162)), // old getdomainname
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(163)), // old setdomainname
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(164)), // ???
+// _____(__NR_quotactl),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(166)), // old exportfs
+// _____(__NR_mount),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(168)), // old ustat
+// _____(__NR_csops),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(170)), // old table
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(171)), // old wait3
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(172)), // old rpause
+// _____(__NR_waitid),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(174)), // old getdents
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(175)), // old gc_control
+// _____(__NR_add_profil),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(177)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(178)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(179)), // ???
MACX_(__NR_kdebug_trace, sys_kdebug_trace), // 180
GENX_(__NR_setgid, sys_setgid),
MACX_(__NR_setegid, sys_setegid),
MACX_(__NR_seteuid, sys_seteuid),
- _____(__NR_sigreturn),
- _____(__NR_chud),
-// _____(__NR_186),
-// _____(__NR_187),
+// _____(__NR_sigreturn),
+// _____(__NR_chud),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(186)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(187)), // ???
GENXY(__NR_stat, sys_newstat),
GENXY(__NR_fstat, sys_newfstat),
GENXY(__NR_lstat, sys_newlstat),
MACX_(__NR_pathconf, sys_pathconf),
MACX_(__NR_fpathconf, sys_fpathconf),
-// _____(__NR_193),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(193)), // ???
GENXY(__NR_getrlimit, sys_getrlimit),
GENX_(__NR_setrlimit, sys_setrlimit),
MACXY(__NR_getdirentries, sys_getdirentries),
MACXY(__NR_mmap, sys_mmap),
-// _____(__NR___syscall),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(198)), // __syscall
MACX_(__NR_lseek, sys_lseek),
GENX_(__NR_truncate, sys_truncate64), // 200
GENX_(__NR_ftruncate, sys_ftruncate64),
MACXY(__NR___sysctl, sys_sysctl),
GENX_(__NR_mlock, sys_mlock),
GENX_(__NR_munlock, sys_munlock),
- _____(__NR_undelete),
- _____(__NR_ATsocket),
- _____(__NR_ATgetmsg),
- _____(__NR_ATputmsg),
- _____(__NR_ATPsndreq),
- _____(__NR_ATPsndrsp),
- _____(__NR_ATPgetreq),
- _____(__NR_ATPgetrsp),
-// _____(__NR_213),
- _____(__NR_kqueue_from_portset_np),
- _____(__NR_kqueue_portset_np),
- _____(__NR_mkcomplex),
- _____(__NR_statv),
- _____(__NR_lstatv),
- _____(__NR_fstatv),
+// _____(__NR_undelete),
+// _____(__NR_ATsocket),
+// _____(__NR_ATgetmsg),
+// _____(__NR_ATputmsg),
+// _____(__NR_ATPsndreq),
+// _____(__NR_ATPsndrsp),
+// _____(__NR_ATPgetreq),
+// _____(__NR_ATPgetrsp),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(213)), // Reserved for AppleTalk
+// _____(__NR_kqueue_from_portset_np),
+// _____(__NR_kqueue_portset_np),
+// _____(__NR_mkcomplex),
+// _____(__NR_statv),
+// _____(__NR_lstatv),
+// _____(__NR_fstatv),
MACXY(__NR_getattrlist, sys_getattrlist), // 220
MACX_(__NR_setattrlist, sys_setattrlist),
MACXY(__NR_getdirentriesattr, sys_getdirentriesattr),
- _____(__NR_exchangedata),
-// _____(__NR_checkuseraccess),
- _____(__NR_searchfs),
+// _____(__NR_exchangedata),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(224)), // checkuseraccess
+// _____(__NR_searchfs),
GENX_(__NR_delete, sys_unlink),
- _____(__NR_copyfile),
-// _____(__NR_228),
-// _____(__NR_229),
+// _____(__NR_copyfile),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(228)), // ??
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(229)), // ??
GENXY(__NR_poll, sys_poll),
MACX_(__NR_watchevent, sys_watchevent),
MACXY(__NR_waitevent, sys_waitevent),
@@ -6579,170 +6579,170 @@
MACXY(__NR_fgetxattr, sys_fgetxattr),
MACX_(__NR_setxattr, sys_setxattr),
MACX_(__NR_fsetxattr, sys_fsetxattr),
- _____(__NR_removexattr),
- _____(__NR_fremovexattr),
+// _____(__NR_removexattr),
+// _____(__NR_fremovexattr),
MACXY(__NR_listxattr, sys_listxattr), // 240
- _____(__NR_flistxattr),
+// _____(__NR_flistxattr),
MACXY(__NR_fsctl, sys_fsctl),
MACX_(__NR_initgroups, sys_initgroups),
- _____(__NR_posix_spawn),
-// _____(__NR_245),
-// _____(__NR_246),
- _____(__NR_nfsclnt),
- _____(__NR_fhopen),
-// _____(__NR_249),
- _____(__NR_minherit),
- _____(__NR_semsys),
- _____(__NR_msgsys),
- _____(__NR_shmsys),
+// _____(__NR_posix_spawn),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(245)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(246)), // ???
+// _____(__NR_nfsclnt),
+// _____(__NR_fhopen),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(249)), // ???
+// _____(__NR_minherit),
+// _____(__NR_semsys),
+// _____(__NR_msgsys),
+// _____(__NR_shmsys),
MACXY(__NR_semctl, sys_semctl),
MACX_(__NR_semget, sys_semget),
MACX_(__NR_semop, sys_semop),
-// _____(__NR_257),
- _____(__NR_msgctl),
- _____(__NR_msgget),
- _____(__NR_msgsnd), // 260
- _____(__NR_msgrcv),
- _____(__NR_shmat),
- _____(__NR_shmctl),
- _____(__NR_shmdt),
- _____(__NR_shmget),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(257)), // ???
+// _____(__NR_msgctl),
+// _____(__NR_msgget),
+// _____(__NR_msgsnd), // 260
+// _____(__NR_msgrcv),
+// _____(__NR_shmat),
+// _____(__NR_shmctl),
+// _____(__NR_shmdt),
+// _____(__NR_shmget),
MACXY(__NR_shm_open, sys_shm_open),
- _____(__NR_shm_unlink),
- _____(__NR_sem_open),
- _____(__NR_sem_close),
- _____(__NR_sem_unlink),
- _____(__NR_sem_wait),
- _____(__NR_sem_trywait),
- _____(__NR_sem_post),
- _____(__NR_sem_getvalue),
- _____(__NR_sem_init),
- _____(__NR_sem_destroy),
- _____(__NR_open_extended),
- _____(__NR_umask_extended),
+// _____(__NR_shm_unlink),
+// _____(__NR_sem_open),
+// _____(__NR_sem_close),
+// _____(__NR_sem_unlink),
+// _____(__NR_sem_wait),
+// _____(__NR_sem_trywait),
+// _____(__NR_sem_post),
+// _____(__NR_sem_getvalue),
+// _____(__NR_sem_init),
+// _____(__NR_sem_destroy),
+// _____(__NR_open_extended),
+// _____(__NR_umask_extended),
MACXY(__NR_stat_extended, sys_statx),
- _____(__NR_lstat_extended), // 280
- _____(__NR_fstat_extended),
- _____(__NR_chmod_extended),
- _____(__NR_fchmod_extended),
- _____(__NR_access_extended),
+// _____(__NR_lstat_extended), // 280
+// _____(__NR_fstat_extended),
+// _____(__NR_chmod_extended),
+// _____(__NR_fchmod_extended),
+// _____(__NR_access_extended),
MACX_(__NR_settid, sys_settid),
- _____(__NR_gettid),
- _____(__NR_setsgroups),
- _____(__NR_getsgroups),
- _____(__NR_setwgroups),
- _____(__NR_getwgroups),
- _____(__NR_mkfifo_extended),
- _____(__NR_mkdir_extended),
- _____(__NR_identitysvc),
- _____(__NR_shared_region_check_np),
- _____(__NR_shared_region_map_np),
-// _____(__NR_load_shared_file),
-// _____(__NR_reset_shared_file),
-// _____(__NR_new_system_shared_regions),
-// _____(__NR_shared_region_map_file_np),
-// _____(__NR_shared_region_make_private_np), // 300
- _____(__NR___pthread_mutex_destroy),
- _____(__NR___pthread_mutex_init),
- _____(__NR___pthread_mutex_lock),
- _____(__NR___pthread_mutex_trylock),
- _____(__NR___pthread_mutex_unlock),
- _____(__NR___pthread_cond_init),
- _____(__NR___pthread_cond_destroy),
- _____(__NR___pthread_cond_broadcast),
- _____(__NR___pthread_cond_signal),
- _____(__NR_getsid),
- _____(__NR_settid_with_pid),
- _____(__NR___pthread_cond_timedwait),
- _____(__NR_aio_fsync),
- _____(__NR_aio_return),
- _____(__NR_aio_suspend),
- _____(__NR_aio_cancel),
- _____(__NR_aio_error),
- _____(__NR_aio_read),
- _____(__NR_aio_write),
- _____(__NR_lio_listio), // 320
- _____(__NR___pthread_cond_wait),
- _____(__NR_iopolicysys),
-// _____(__NR_323),
- _____(__NR_mlockall),
- _____(__NR_munlockall),
-// _____(__NR_326),
+// _____(__NR_gettid),
+// _____(__NR_setsgroups),
+// _____(__NR_getsgroups),
+// _____(__NR_setwgroups),
+// _____(__NR_getwgroups),
+// _____(__NR_mkfifo_extended),
+// _____(__NR_mkdir_extended),
+// _____(__NR_identitysvc),
+// _____(__NR_shared_region_check_np),
+// _____(__NR_shared_region_map_np),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(296)), // old load_shared_file
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(297)), // old reset_shared_file
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(298)), // old new_system_shared_regions
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(299)), // old shared_region_map_file_np
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(300)), // old shared_region_make_private_np
+// _____(__NR___pthread_mutex_destroy),
+// _____(__NR___pthread_mutex_init),
+// _____(__NR___pthread_mutex_lock),
+// _____(__NR___pthread_mutex_trylock),
+// _____(__NR___pthread_mutex_unlock),
+// _____(__NR___pthread_cond_init),
+// _____(__NR___pthread_cond_destroy),
+// _____(__NR___pthread_cond_broadcast),
+// _____(__NR___pthread_cond_signal),
+// _____(__NR_getsid),
+// _____(__NR_settid_with_pid),
+// _____(__NR___pthread_cond_timedwait),
+// _____(__NR_aio_fsync),
+// _____(__NR_aio_return),
+// _____(__NR_aio_suspend),
+// _____(__NR_aio_cancel),
+// _____(__NR_aio_error),
+// _____(__NR_aio_read),
+// _____(__NR_aio_write),
+// _____(__NR_lio_listio), // 320
+// _____(__NR___pthread_cond_wait),
+// _____(__NR_iopolicysys),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(323)), // ???
+// _____(__NR_mlockall),
+// _____(__NR_munlockall),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(326)), // ???
MACX_(__NR_issetugid, sys_issetugid),
- _____(__NR___pthread_kill),
+// _____(__NR___pthread_kill),
MACX_(__NR___pthread_sigmask, sys___pthread_sigmask),
- _____(__NR___sigwait),
+// _____(__NR___sigwait),
MACX_(__NR___disable_threadsignal, sys___disable_threadsignal),
- _____(__NR___pthread_markcancel),
- _____(__NR___pthread_canceled),
+// _____(__NR___pthread_markcancel),
+// _____(__NR___pthread_canceled),
MACX_(__NR___semwait_signal, sys___semwait_signal),
-// _____(__NR_utrace),
- _____(__NR_proc_info),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(335)), // old utrace
+// _____(__NR_proc_info),
MACXY(__NR_sendfile, sys_sendfile),
MACXY(__NR_stat64, sys_stat64),
MACXY(__NR_fstat64, sys_fstat64),
MACXY(__NR_lstat64, sys_lstat64), // 340
- _____(__NR_stat64_extended),
- _____(__NR_lstat64_extended),
- _____(__NR_fstat64_extended),
+// _____(__NR_stat64_extended),
+// _____(__NR_lstat64_extended),
+// _____(__NR_fstat64_extended),
MACXY(__NR_getdirentries64, sys_getdirentries64),
MACXY(__NR_statfs64, sys_statfs64),
MACXY(__NR_fstatfs64, sys_fstatfs64),
- _____(__NR_getfsstat64),
- _____(__NR___pthread_chdir),
- _____(__NR___pthread_fchdir),
- _____(__NR_audit),
+// _____(__NR_getfsstat64),
+// _____(__NR___pthread_chdir),
+// _____(__NR___pthread_fchdir),
+// _____(__NR_audit),
MACXY(__NR_auditon, sys_auditon),
-// _____(__NR_352),
- _____(__NR_getauid),
- _____(__NR_setauid),
- _____(__NR_getaudit),
- _____(__NR_setaudit),
- _____(__NR_getaudit_addr),
- _____(__NR_setaudit_addr),
- _____(__NR_auditctl),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(352)), // ???
+// _____(__NR_getauid),
+// _____(__NR_setauid),
+// _____(__NR_getaudit),
+// _____(__NR_setaudit),
+// _____(__NR_getaudit_addr),
+// _____(__NR_setaudit_addr),
+// _____(__NR_auditctl),
MACXY(__NR_bsdthread_create, sys_bsdthread_create), // 360
MACX_(__NR_bsdthread_terminate, sys_bsdthread_terminate),
MACX_(__NR_kqueue, sys_kqueue),
MACXY(__NR_kevent, sys_kevent),
- _____(__NR_lchown),
- _____(__NR_stack_snapshot),
+// _____(__NR_lchown),
+// _____(__NR_stack_snapshot),
MACX_(__NR_bsdthread_register, sys_bsdthread_register),
MACX_(__NR_workq_open, sys_workq_open),
MACXY(__NR_workq_ops, sys_workq_ops),
-// _____(__NR_369),
-// _____(__NR_370),
-// _____(__NR_371),
-// _____(__NR_372),
-// _____(__NR_373),
-// _____(__NR_374),
-// _____(__NR_375),
-// _____(__NR_376),
-// _____(__NR_377),
-// _____(__NR_378),
-// _____(__NR_379),
- _____(__NR___mac_execve), // 380
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(369)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(370)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(371)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(372)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(373)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(374)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(375)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(376)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(377)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(378)), // ???
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(379)), // ???
+// _____(__NR___mac_execve), // 380
MACX_(__NR___mac_syscall, sys___mac_syscall),
- _____(__NR___mac_get_file),
- _____(__NR___mac_set_file),
- _____(__NR___mac_get_link),
- _____(__NR___mac_set_link),
- _____(__NR___mac_get_proc),
- _____(__NR___mac_set_proc),
- _____(__NR___mac_get_fd),
- _____(__NR___mac_set_fd),
- _____(__NR___mac_get_pid),
- _____(__NR___mac_get_lcid),
- _____(__NR___mac_get_lctx),
- _____(__NR___mac_set_lctx),
- _____(__NR_setlcid),
- _____(__NR_getlcid),
+// _____(__NR___mac_get_file),
+// _____(__NR___mac_set_file),
+// _____(__NR___mac_get_link),
+// _____(__NR___mac_set_link),
+// _____(__NR___mac_get_proc),
+// _____(__NR___mac_set_proc),
+// _____(__NR___mac_get_fd),
+// _____(__NR___mac_set_fd),
+// _____(__NR___mac_get_pid),
+// _____(__NR___mac_get_lcid),
+// _____(__NR___mac_get_lctx),
+// _____(__NR___mac_set_lctx),
+// _____(__NR_setlcid),
+// _____(__NR_getlcid),
// GrP fixme need any special nocancel handling?
GENXY(__NR_read_nocancel, sys_read),
GENX_(__NR_write_nocancel, sys_write),
GENXY(__NR_open_nocancel, sys_open),
GENXY(__NR_close_nocancel, sys_close),
- _____(__NR_wait4_nocancel), // 400
+// _____(__NR_wait4_nocancel), // 400
MACXY(__NR_recvmsg_nocancel, sys_recvmsg),
MACX_(__NR_sendmsg_nocancel, sys_sendmsg),
MACXY(__NR_recvfrom_nocancel, sys_recvfrom),
@@ -6752,24 +6752,24 @@
GENX_(__NR_select_nocancel, sys_select),
GENX_(__NR_fsync_nocancel, sys_fsync),
MACX_(__NR_connect_nocancel, sys_connect),
- _____(__NR_sigsuspend_nocancel),
+// _____(__NR_sigsuspend_nocancel),
GENXY(__NR_readv_nocancel, sys_readv),
GENX_(__NR_writev_nocancel, sys_writev),
MACX_(__NR_sendto_nocancel, sys_sendto),
GENXY(__NR_pread_nocancel, sys_pread64),
GENX_(__NR_pwrite_nocancel, sys_pwrite64),
- _____(__NR_waitid_nocancel),
+// _____(__NR_waitid_nocancel),
GENXY(__NR_poll_nocancel, sys_poll),
- _____(__NR_msgsnd_nocancel),
- _____(__NR_msgrcv_nocancel),
- _____(__NR_sem_wait_nocancel), // 420
- _____(__NR_aio_suspend_nocancel),
- _____(__NR___sigwait_nocancel),
+// _____(__NR_msgsnd_nocancel),
+// _____(__NR_msgrcv_nocancel),
+// _____(__NR_sem_wait_nocancel), // 420
+// _____(__NR_aio_suspend_nocancel),
+// _____(__NR___sigwait_nocancel),
MACX_(__NR___semwait_signal_nocancel, sys___semwait_signal),
- _____(__NR___mac_mount),
- _____(__NR___mac_get_mount),
- _____(__NR___mac_getfsstat),
- _____(__NR_MAXSYSCALL)
+// _____(__NR___mac_mount),
+// _____(__NR___mac_get_mount),
+// _____(__NR___mac_getfsstat),
+// _____(__NR_MAXSYSCALL)
};
@@ -6777,39 +6777,39 @@
// Use ML_(mach_trap_table)[-mach_trap_number] .
const SyscallTableEntry ML_(mach_trap_table)[] = {
-// _____(__NR_0),
-// _____(__NR_1),
-// _____(__NR_2),
-// _____(__NR_3),
-// _____(__NR_4),
-// _____(__NR_5),
-// _____(__NR_6),
-// _____(__NR_7),
-// _____(__NR_8),
-// _____(__NR_9),
-// _____(__NR_10),
-// _____(__NR_11),
-// _____(__NR_12),
-// _____(__NR_13),
-// _____(__NR_14),
-// _____(__NR_15),
-// _____(__NR_16),
-// _____(__NR_17),
-// _____(__NR_18),
-// _____(__NR_19),
-// _____(__NR_20), // -20
-// _____(__NR_21),
-// _____(__NR_22),
-// _____(__NR_23),
-// _____(__NR_24),
-// _____(__NR_25),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(0)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(1)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(2)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(3)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(4)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(5)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(6)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(7)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(8)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(9)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(10)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(11)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(12)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(13)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(14)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(15)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(16)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(17)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(18)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(19)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(20)), // -20
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(21)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(22)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(23)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(24)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(25)),
MACXY(__NR_mach_reply_port, mach_reply_port),
MACXY(__NR_thread_self_trap, mach_thread_self),
MACXY(__NR_task_self_trap, mach_task_self),
MACXY(__NR_host_self_trap, mach_host_self),
-// _____(__NR_30),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(30)),
MACXY(__NR_mach_msg_trap, mach_msg),
- _____(__NR_mach_msg_overwrite_trap),
+// _____(__NR_mach_msg_overwrite_trap),
MACX_(__NR_semaphore_signal_trap, semaphore_signal),
MACX_(__NR_semaphore_signal_all_trap, semaphore_signal_all),
MACX_(__NR_semaphore_signal_thread_trap, semaphore_signal_thread),
@@ -6817,81 +6817,81 @@
MACX_(__NR_semaphore_wait_signal_trap, semaphore_wait_signal),
MACX_(__NR_semaphore_timedwait_trap, semaphore_timedwait),
MACX_(__NR_semaphore_timedwait_signal_trap, semaphore_timedwait_signal),
-// _____(__NR_40), // -40
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(40)), // -40
#if defined(VGA_x86)
- _____(__NR_init_process),
-// _____(__NR_42),
- _____(__NR_map_fd),
+// _____(__NR_init_process),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)),
+// _____(__NR_map_fd),
#else
-// _____(__NR_41),
-// _____(__NR_42),
-// _____(__NR_43),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(41)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(42)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(43)),
#endif
- _____(__NR_task_name_for_pid),
+// _____(__NR_task_name_for_pid),
MACXY(__NR_task_for_pid, task_for_pid),
MACXY(__NR_pid_for_task, pid_for_task),
-// _____(__NR_47),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(47)),
#if defined(VGA_x86)
- _____(__NR_macx_swapon),
- _____(__NR_macx_swapoff),
-// _____(__NR_50),
- _____(__NR_macx_triggers),
- _____(__NR_macx_backing_store_suspend),
- _____(__NR_macx_backing_store_recovery),
+// _____(__NR_macx_swapon),
+// _____(__NR_macx_swapoff),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50)),
+// _____(__NR_macx_triggers),
+// _____(__NR_macx_backing_store_suspend),
+// _____(__NR_macx_backing_store_recovery),
#else
-// _____(__NR_48),
-// _____(__NR_49),
-// _____(__NR_50),
-// _____(__NR_51),
-// _____(__NR_52),
-// _____(__NR_53),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(48)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(49)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(50)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(51)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(52)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(53)),
#endif
-// _____(__NR_54),
-// _____(__NR_55),
-// _____(__NR_56),
-// _____(__NR_57),
-// _____(__NR_58),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(54)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(55)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(56)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(57)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(58)),
MACX_(__NR_swtch_pri, swtch_pri),
MACX_(__NR_swtch, swtch), // -60
MACX_(__NR_syscall_thread_switch, syscall_thread_switch),
- _____(__NR_clock_sleep_trap),
-// _____(__NR_63),
-// _____(__NR_64),
-// _____(__NR_65),
-// _____(__NR_66),
-// _____(__NR_67),
-// _____(__NR_68),
-// _____(__NR_69),
-// _____(__NR_70),
-// _____(__NR_71),
-// _____(__NR_72),
-// _____(__NR_73),
-// _____(__NR_74),
-// _____(__NR_75),
-// _____(__NR_76),
-// _____(__NR_77),
-// _____(__NR_78),
-// _____(__NR_79),
-// _____(__NR_80), // -80
-// _____(__NR_81),
-// _____(__NR_82),
-// _____(__NR_83),
-// _____(__NR_84),
-// _____(__NR_85),
-// _____(__NR_86),
-// _____(__NR_87),
-// _____(__NR_88),
+// _____(__NR_clock_sleep_trap),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(63)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(64)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(65)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(66)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(67)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(68)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(69)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(70)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(71)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(72)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(73)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(74)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(75)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(76)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(77)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(78)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(79)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(80)), // -80
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(81)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(82)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(83)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(84)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(85)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(86)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(87)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(88)),
MACXY(__NR_mach_timebase_info, mach_timebase_info),
MACX_(__NR_mach_wait_until, mach_wait_until),
MACXY(__NR_mk_timer_create, mk_timer_create),
MACXY(__NR_mk_timer_destroy, mk_timer_destroy),
MACX_(__NR_mk_timer_arm, mk_timer_arm),
MACXY(__NR_mk_timer_cancel, mk_timer_cancel),
-// _____(__NR_95),
-// _____(__NR_96),
-// _____(__NR_97),
-// _____(__NR_98),
-// _____(__NR_99),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(95)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(96)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(97)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(98)),
+ _____(VG_DARWIN_SYSCALL_CONSTRUCT_MACH(99)),
MACXY(__NR_iokit_user_client_trap, iokit_user_client_trap), // -100
};
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-main.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-main.c 2009-02-16 05:52:11 UTC (rev 9179)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-main.c 2009-02-16 07:10:42 UTC (rev 9180)
@@ -1187,20 +1187,20 @@
switch (VG_DARWIN_SYSNO_CLASS(syscallno)) {
case VG_DARWIN_SYSCALL_CLASS_UX64:
case VG_DARWIN_SYSCALL_CLASS_UNIX:
- if (idx >= 0 && idx < ML_(syscall_table_size)) {
+ if (idx >= 0 && idx < ML_(syscall_table_size) &&
+ ML_(syscall_table)[idx].before != NULL)
sys = &ML_(syscall_table)[idx];
- }
- break;
+ break;
case VG_DARWIN_SYSCALL_CLASS_MACH:
- if (idx >= 0 && idx < ML_(mach_trap_table_size)) {
+ if (idx >= 0 && idx < ML_(mach_trap_table_size) &&
+ ML_(mach_trap_table)[idx].before != NULL)
sys = &ML_(mach_trap_table)[idx];
- }
- break;
+ break;
case VG_DARWIN_SYSCALL_CLASS_MDEP:
- if (idx >= 0 && idx < ML_(mdep_trap_table_size)) {
+ if (idx >= 0 && idx < ML_(mdep_trap_table_size) &&
+ ML_(mdep_trap_table)[idx].before != NULL)
sys = &ML_(mdep_trap_table)[idx];
- }
- break;
+ break;
default:
vg_assert(0);
break;
Modified: branches/DARWIN/include/vki/vki-scnums-darwin.h
===================================================================
--- branches/DARWIN/include/vki/vki-scnums-darwin.h 2009-02-16 05:52:11 UTC (rev 9179)
+++ branches/DARWIN/include/vki/vki-scnums-darwin.h 2009-02-16 07:10:42 UTC (rev 9180)
@@ -294,7 +294,6 @@
#define __NR_adjtime VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(140)
/* 141 old getpeername */
#define __NR_gethostuuid VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(142)
- /* 142 old gethostid */
/* 143 old sethostid */
/* 144 old getrlimit */
/* 145 old setrlimit */
|
Author: njn Date: 2009-02-16 05:52:11 +0000 (Mon, 16 Feb 2009) New Revision: 9179 Log: Merged r9178 (various regtest improvements) from the trunk. Added: branches/DARWIN/memcheck/tests/origin4-many.stderr.exp Removed: branches/DARWIN/memcheck/tests/buflen_check.stderr.exp2 branches/DARWIN/memcheck/tests/execve.stderr.exp2 branches/DARWIN/memcheck/tests/execve2.stderr.exp2 branches/DARWIN/memcheck/tests/fwrite.stderr.exp2 branches/DARWIN/memcheck/tests/origin4-many.stderr.exp-glibc25-amd64 branches/DARWIN/memcheck/tests/origin4-many.stderr.exp-glibc25-x86 branches/DARWIN/memcheck/tests/writev.stderr.exp2 branches/DARWIN/memcheck/tests/writev.stderr.exp3 branches/DARWIN/memcheck/tests/x86-linux/scalar.stderr.exp2 branches/DARWIN/memcheck/tests/x86-linux/scalar_exit_group.stderr.exp2 branches/DARWIN/memcheck/tests/x86-linux/scalar_supp.stderr.exp2 branches/DARWIN/memcheck/tests/xml1.stderr.exp3 branches/DARWIN/memcheck/tests/xml1.stderr.exp64_2 branches/DARWIN/tests/filter_test_paths Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-generic.c branches/DARWIN/drd/tests/filter_fdleak branches/DARWIN/exp-ptrcheck/tests/filter_stderr branches/DARWIN/helgrind/tests/filter_stderr branches/DARWIN/memcheck/tests/Makefile.am branches/DARWIN/memcheck/tests/badpoll.stderr.exp branches/DARWIN/memcheck/tests/buflen_check.stderr.exp branches/DARWIN/memcheck/tests/execve.stderr.exp branches/DARWIN/memcheck/tests/execve2.stderr.exp branches/DARWIN/memcheck/tests/filter_stderr branches/DARWIN/memcheck/tests/fwrite.stderr.exp branches/DARWIN/memcheck/tests/malloc_free_fill.c branches/DARWIN/memcheck/tests/malloc_free_fill.stderr.exp branches/DARWIN/memcheck/tests/malloc_free_fill.vgtest branches/DARWIN/memcheck/tests/origin1-yes.stderr.exp branches/DARWIN/memcheck/tests/writev.stderr.exp branches/DARWIN/memcheck/tests/x86-linux/Makefile.am branches/DARWIN/memcheck/tests/x86-linux/scalar.c branches/DARWIN/memcheck/tests/x86-linux/scalar.h branches/DARWIN/memcheck/tests/x86-linux/scalar.stderr.exp branches/DARWIN/memcheck/tests/x86-linux/scalar_exit_group.stderr.exp branches/DARWIN/memcheck/tests/x86-linux/scalar_supp.stderr.exp branches/DARWIN/memcheck/tests/x86-linux/scalar_supp.supp branches/DARWIN/memcheck/tests/xml1.stderr.exp branches/DARWIN/memcheck/tests/xml1.stderr.exp2 branches/DARWIN/memcheck/tests/xml1.stderr.exp64 branches/DARWIN/none/tests/filter_fdleak branches/DARWIN/tests/Makefile.am branches/DARWIN/tests/filter_discards [... diff too large to include ...] |
|
From: <sv...@va...> - 2009-02-16 05:11:57
|
Author: njn Date: 2009-02-16 05:11:49 +0000 (Mon, 16 Feb 2009) New Revision: 9178 Log: Stack traces for Memcheck's syscall param errors are terribly unreliable, so I changed it to just filter the entire stack trace out for these errors (both normal and XML cases). The syscall name is still present in the error string. This allows a one or more alternative expected output files to be removed for several tests, which is A Very Good Thing. Also, I killed filter_test_paths because it was weird and clumsy and the above change obviated most of its use and the remaining effects could be achieved in other ways. Also, I fixed up the scalar* tests a little and they now pass on my machine, (and hopefully at least some other machines) for the first time ever! Added: trunk/memcheck/tests/origin4-many.stderr.exp Removed: trunk/memcheck/tests/buflen_check.stderr.exp2 trunk/memcheck/tests/execve.stderr.exp2 trunk/memcheck/tests/execve2.stderr.exp2 trunk/memcheck/tests/fwrite.stderr.exp2 trunk/memcheck/tests/origin4-many.stderr.exp-glibc25-amd64 trunk/memcheck/tests/origin4-many.stderr.exp-glibc25-x86 trunk/memcheck/tests/writev.stderr.exp2 trunk/memcheck/tests/writev.stderr.exp3 trunk/memcheck/tests/x86-linux/scalar.stderr.exp2 trunk/memcheck/tests/x86-linux/scalar_exit_group.stderr.exp2 trunk/memcheck/tests/x86-linux/scalar_supp.stderr.exp2 trunk/memcheck/tests/xml1.stderr.exp3 trunk/memcheck/tests/xml1.stderr.exp64_2 trunk/tests/filter_test_paths Modified: trunk/drd/tests/filter_fdleak trunk/exp-ptrcheck/tests/filter_stderr trunk/helgrind/tests/filter_stderr trunk/memcheck/tests/Makefile.am trunk/memcheck/tests/badpoll.stderr.exp trunk/memcheck/tests/buflen_check.stderr.exp trunk/memcheck/tests/execve.stderr.exp trunk/memcheck/tests/execve2.stderr.exp trunk/memcheck/tests/filter_stderr trunk/memcheck/tests/fwrite.stderr.exp trunk/memcheck/tests/malloc_free_fill.c trunk/memcheck/tests/malloc_free_fill.stderr.exp trunk/memcheck/tests/malloc_free_fill.vgtest trunk/memcheck/tests/origin1-yes.stderr.exp trunk/memcheck/tests/writev.stderr.exp trunk/memcheck/tests/x86-linux/Makefile.am trunk/memcheck/tests/x86-linux/scalar.c trunk/memcheck/tests/x86-linux/scalar.h trunk/memcheck/tests/x86-linux/scalar.stderr.exp trunk/memcheck/tests/x86-linux/scalar_exit_group.stderr.exp trunk/memcheck/tests/x86-linux/scalar_supp.stderr.exp trunk/memcheck/tests/x86-linux/scalar_supp.supp trunk/memcheck/tests/xml1.stderr.exp trunk/memcheck/tests/xml1.stderr.exp2 trunk/memcheck/tests/xml1.stderr.exp64 trunk/none/tests/filter_fdleak trunk/tests/Makefile.am trunk/tests/filter_discards [... diff too large to include ...] |
|
From: Tom H. <th...@cy...> - 2009-02-16 03:47:28
|
Nightly build on vauxhall ( x86_64, Fedora 10 ) started at 2009-02-16 03:20:05 GMT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 486 tests, 1 stderr failure, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 486 tests, 9 stderr failures, 0 stdout failures, 0 post failures == drd/tests/fp_race (stderr) drd/tests/hg04_race (stderr) drd/tests/rwlock_race (stderr) drd/tests/sem_as_mutex (stderr) drd/tests/tc05_simple_race (stderr) drd/tests/tc06_two_races (stderr) drd/tests/tc16_byterace (stderr) drd/tests/tc18_semabuse (stderr) memcheck/tests/x86-linux/scalar (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Mon Feb 16 03:33:59 2009 --- new.short Mon Feb 16 03:47:22 2009 *************** *** 8,18 **** ! == 486 tests, 9 stderr failures, 0 stdout failures, 0 post failures == ! drd/tests/fp_race (stderr) ! drd/tests/hg04_race (stderr) ! drd/tests/rwlock_race (stderr) ! drd/tests/sem_as_mutex (stderr) ! drd/tests/tc05_simple_race (stderr) ! drd/tests/tc06_two_races (stderr) ! drd/tests/tc16_byterace (stderr) ! drd/tests/tc18_semabuse (stderr) memcheck/tests/x86-linux/scalar (stderr) --- 8,10 ---- ! == 486 tests, 1 stderr failure, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) |
|
From: Tom H. <th...@cy...> - 2009-02-16 03:44:30
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-02-16 03:05:04 GMT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 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) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 477 tests, 8 stderr failures, 0 stdout failures, 0 post failures == drd/tests/hg04_race (stderr) drd/tests/hg05_race2 (stderr) 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) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Mon Feb 16 03:24:47 2009 --- new.short Mon Feb 16 03:44:22 2009 *************** *** 8,12 **** ! == 477 tests, 8 stderr failures, 0 stdout failures, 0 post failures == ! drd/tests/hg04_race (stderr) ! drd/tests/hg05_race2 (stderr) exp-ptrcheck/tests/ccc (stderr) --- 8,10 ---- ! == 477 tests, 6 stderr failures, 0 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) |
|
From: Tom H. <th...@cy...> - 2009-02-16 03:32:21
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-02-16 03:10:04 GMT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 483 tests, 6 stderr failures, 3 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/hg05_race2 (stderr) memcheck/tests/linux/timerfd-syscall (stdout) memcheck/tests/x86-linux/scalar (stderr) none/tests/linux/mremap2 (stdout) none/tests/pth_cvsimple (stdout) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 483 tests, 11 stderr failures, 2 stdout failures, 0 post failures == drd/tests/fp_race (stderr) drd/tests/sem_as_mutex (stderr) drd/tests/tc01_simple_race (stderr) drd/tests/tc05_simple_race (stderr) drd/tests/tc06_two_races (stderr) drd/tests/tc18_semabuse (stderr) 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/linux/mremap2 (stdout) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Mon Feb 16 03:21:05 2009 --- new.short Mon Feb 16 03:32:11 2009 *************** *** 8,16 **** ! == 483 tests, 11 stderr failures, 2 stdout failures, 0 post failures == ! drd/tests/fp_race (stderr) ! drd/tests/sem_as_mutex (stderr) ! drd/tests/tc01_simple_race (stderr) ! drd/tests/tc05_simple_race (stderr) ! drd/tests/tc06_two_races (stderr) ! drd/tests/tc18_semabuse (stderr) exp-ptrcheck/tests/ccc (stderr) --- 8,10 ---- ! == 483 tests, 6 stderr failures, 3 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) *************** *** 19,20 **** --- 13,15 ---- exp-ptrcheck/tests/pth_specific (stderr) + helgrind/tests/hg05_race2 (stderr) memcheck/tests/linux/timerfd-syscall (stdout) *************** *** 22,23 **** --- 17,19 ---- none/tests/linux/mremap2 (stdout) + none/tests/pth_cvsimple (stdout) |
|
From: <sv...@va...> - 2009-02-16 00:54:46
|
Author: njn
Date: 2009-02-16 00:54:42 +0000 (Mon, 16 Feb 2009)
New Revision: 9177
Log:
Anonymise line numbers in h_intercepts.c. Makes bad_percentify pass.
Modified:
branches/DARWIN/exp-ptrcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
branches/DARWIN/exp-ptrcheck/tests/filter_stderr
Modified: branches/DARWIN/exp-ptrcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
===================================================================
--- branches/DARWIN/exp-ptrcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2009-02-16 00:42:10 UTC (rev 9176)
+++ branches/DARWIN/exp-ptrcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2009-02-16 00:54:42 UTC (rev 9177)
@@ -1,6 +1,6 @@
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:85)
+ at 0x........: strlen (h_intercepts.c:...)
by 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:88)
@@ -10,7 +10,7 @@
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:85)
+ at 0x........: strlen (h_intercepts.c:...)
by 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:93)
@@ -20,7 +20,7 @@
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:85)
+ at 0x........: strlen (h_intercepts.c:...)
by 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:98)
Modified: branches/DARWIN/exp-ptrcheck/tests/filter_stderr
===================================================================
--- branches/DARWIN/exp-ptrcheck/tests/filter_stderr 2009-02-16 00:42:10 UTC (rev 9176)
+++ branches/DARWIN/exp-ptrcheck/tests/filter_stderr 2009-02-16 00:54:42 UTC (rev 9177)
@@ -31,4 +31,8 @@
-e "s/printf (printf.c:[0-9]*)/.../" \
-e "s/strdup (strdup.c:[0-9]*)/.../" \
-e "s/pthread_key_create.c:[0-9]*/in \/...libpthread.../" \
--e "s/genops.c:[0-9]*/in \/...libc.../"
+-e "s/genops.c:[0-9]*/in \/...libc.../" |
+
+# Anonymise line numbers in h_intercepts.c.
+sed "s/h_intercepts.c:[0-9]*/h_intercepts.c:.../"
+
|
|
From: <sv...@va...> - 2009-02-16 00:42:15
|
Author: njn
Date: 2009-02-16 00:42:10 +0000 (Mon, 16 Feb 2009)
New Revision: 9176
Log:
Merge r9175 (don't run inappropriate OS- and platform-specific tests) from
the DARWIN branch.
Added:
trunk/tests/arch_test.c
trunk/tests/os_test.in
trunk/tests/platform_test
Removed:
trunk/tests/cputest.c
Modified:
trunk/configure.in
trunk/docs/internals/porting-HOWTO.txt
trunk/docs/internals/porting-to-ARM.txt
trunk/memcheck/tests/x86/fxsave.vgtest
trunk/memcheck/tests/x86/sse1_memory.vgtest
trunk/memcheck/tests/x86/sse2_memory.vgtest
trunk/memcheck/tests/x86/xor-undef-x86.vgtest
trunk/none/tests/amd64/insn_sse3.vgtest
trunk/none/tests/amd64/insn_ssse3.vgtest
trunk/none/tests/amd64/ssse3_misaligned.vgtest
trunk/none/tests/x86/bug137714-x86.vgtest
trunk/none/tests/x86/cse_fail.vgtest
trunk/none/tests/x86/insn_cmov.vgtest
trunk/none/tests/x86/insn_fpu.vgtest
trunk/none/tests/x86/insn_mmx.vgtest
trunk/none/tests/x86/insn_mmxext.vgtest
trunk/none/tests/x86/insn_sse.vgtest
trunk/none/tests/x86/insn_sse2.vgtest
trunk/none/tests/x86/insn_sse3.vgtest
trunk/none/tests/x86/insn_ssse3.vgtest
trunk/none/tests/x86/ssse3_misaligned.vgtest
trunk/tests/Makefile.am
trunk/tests/vg_regtest.in
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/configure.in 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1690,6 +1690,7 @@
docs/xml/Makefile
tests/Makefile
tests/vg_regtest
+ tests/os_test
perf/Makefile
perf/vg_perf
include/Makefile
Modified: trunk/docs/internals/porting-HOWTO.txt
===================================================================
--- trunk/docs/internals/porting-HOWTO.txt 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/docs/internals/porting-HOWTO.txt 2009-02-16 00:42:10 UTC (rev 9176)
@@ -68,8 +68,9 @@
Once it runs ok:
-- Add the cpu to the tests/cputest.c file so the reg test script will work.
- (Don't forget to add it to all_archs[].)
+- Add the arch to the tests/arch_test.c file so the reg test script will work.
+ (Don't forget to add it to all_archs[].) Likewise for os_test.in and
+ platform_test.
- Ensure the regression tests work, and add some arch-specific tests to
none/tests directory.
Modified: trunk/docs/internals/porting-to-ARM.txt
===================================================================
--- trunk/docs/internals/porting-to-ARM.txt 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/docs/internals/porting-to-ARM.txt 2009-02-16 00:42:10 UTC (rev 9176)
@@ -156,7 +156,7 @@
# error VG_UCONTEXT_SYSCALL_RET undefined for ARM/Linux
=============================================================================
-From tests/cputest.c
+From tests/arch_test.c
=============================================================================
- You'll need to add "arm" to all_archs[].
Modified: trunk/memcheck/tests/x86/fxsave.vgtest
===================================================================
--- trunk/memcheck/tests/x86/fxsave.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/memcheck/tests/x86/fxsave.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,4 +1,4 @@
prog: fxsave
-prereq: ../../../tests/cputest x86-sse
+prereq: ../../../tests/arch_test x86-sse
vgopts: -q
args: x
Modified: trunk/memcheck/tests/x86/sse1_memory.vgtest
===================================================================
--- trunk/memcheck/tests/x86/sse1_memory.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/memcheck/tests/x86/sse1_memory.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,4 +1,4 @@
prog: sse_memory
vgopts: -q
args: sse1
-prereq: ../../../tests/cputest x86-sse
+prereq: ../../../tests/arch_test x86-sse
Modified: trunk/memcheck/tests/x86/sse2_memory.vgtest
===================================================================
--- trunk/memcheck/tests/x86/sse2_memory.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/memcheck/tests/x86/sse2_memory.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,4 +1,4 @@
prog: sse_memory
vgopts: -q
args: sse2
-prereq: ../../../tests/cputest x86-sse2
+prereq: ../../../tests/arch_test x86-sse2
Modified: trunk/memcheck/tests/x86/xor-undef-x86.vgtest
===================================================================
--- trunk/memcheck/tests/x86/xor-undef-x86.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/memcheck/tests/x86/xor-undef-x86.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,2 +1,2 @@
prog: xor-undef-x86
-prereq: ../../../tests/cputest x86-sse
+prereq: ../../../tests/arch_test x86-sse
Modified: trunk/none/tests/amd64/insn_sse3.vgtest
===================================================================
--- trunk/none/tests/amd64/insn_sse3.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/amd64/insn_sse3.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/amd64/insn_sse3
-prereq: ../../../tests/cputest amd64-sse3
+prereq: ../../../tests/arch_test amd64-sse3
vgopts: -q
Modified: trunk/none/tests/amd64/insn_ssse3.vgtest
===================================================================
--- trunk/none/tests/amd64/insn_ssse3.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/amd64/insn_ssse3.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/amd64/insn_ssse3
-prereq: ../../../tests/cputest amd64-ssse3
+prereq: ../../../tests/arch_test amd64-ssse3
vgopts: -q
Modified: trunk/none/tests/amd64/ssse3_misaligned.vgtest
===================================================================
--- trunk/none/tests/amd64/ssse3_misaligned.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/amd64/ssse3_misaligned.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ssse3_misaligned
-prereq: ../../../tests/cputest amd64-ssse3
+prereq: ../../../tests/arch_test amd64-ssse3
vgopts: -q
Modified: trunk/none/tests/x86/bug137714-x86.vgtest
===================================================================
--- trunk/none/tests/x86/bug137714-x86.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/bug137714-x86.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: bug137714-x86
-prereq: ../../../tests/cputest x86-sse2
+prereq: ../../../tests/arch_test x86-sse2
vgopts: -q
Modified: trunk/none/tests/x86/cse_fail.vgtest
===================================================================
--- trunk/none/tests/x86/cse_fail.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/cse_fail.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: cse_fail
-prereq: ../../../tests/cputest x86-sse
+prereq: ../../../tests/arch_test x86-sse
vgopts: -q
Modified: trunk/none/tests/x86/insn_cmov.vgtest
===================================================================
--- trunk/none/tests/x86/insn_cmov.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_cmov.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_cmov
-prereq: ../../../tests/cputest x86-cmov
+prereq: ../../../tests/arch_test x86-cmov
vgopts: -q
Modified: trunk/none/tests/x86/insn_fpu.vgtest
===================================================================
--- trunk/none/tests/x86/insn_fpu.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_fpu.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_fpu
-prereq: ../../../tests/cputest x86-fpu
+prereq: ../../../tests/arch_test x86-fpu
vgopts: -q
Modified: trunk/none/tests/x86/insn_mmx.vgtest
===================================================================
--- trunk/none/tests/x86/insn_mmx.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_mmx.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_mmx
-prereq: ../../../tests/cputest x86-mmx
+prereq: ../../../tests/arch_test x86-mmx
vgopts: -q
Modified: trunk/none/tests/x86/insn_mmxext.vgtest
===================================================================
--- trunk/none/tests/x86/insn_mmxext.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_mmxext.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_mmxext
-prereq: ../../../tests/cputest x86-mmxext
+prereq: ../../../tests/arch_test x86-mmxext
vgopts: -q
Modified: trunk/none/tests/x86/insn_sse.vgtest
===================================================================
--- trunk/none/tests/x86/insn_sse.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_sse.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_sse
-prereq: ../../../tests/cputest x86-sse
+prereq: ../../../tests/arch_test x86-sse
vgopts: -q
Modified: trunk/none/tests/x86/insn_sse2.vgtest
===================================================================
--- trunk/none/tests/x86/insn_sse2.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_sse2.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_sse2
-prereq: ../../../tests/cputest x86-sse2
+prereq: ../../../tests/arch_test x86-sse2
vgopts: -q
Modified: trunk/none/tests/x86/insn_sse3.vgtest
===================================================================
--- trunk/none/tests/x86/insn_sse3.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_sse3.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_sse3
-prereq: ../../../tests/cputest x86-sse3
+prereq: ../../../tests/arch_test x86-sse3
vgopts: -q
Modified: trunk/none/tests/x86/insn_ssse3.vgtest
===================================================================
--- trunk/none/tests/x86/insn_ssse3.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/insn_ssse3.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ../../../none/tests/x86/insn_ssse3
-prereq: ../../../tests/cputest x86-ssse3
+prereq: ../../../tests/arch_test x86-ssse3
vgopts: -q
Modified: trunk/none/tests/x86/ssse3_misaligned.vgtest
===================================================================
--- trunk/none/tests/x86/ssse3_misaligned.vgtest 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/none/tests/x86/ssse3_misaligned.vgtest 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,3 +1,3 @@
prog: ssse3_misaligned
-prereq: ../../../tests/cputest x86-ssse3
+prereq: ../../../tests/arch_test x86-ssse3
vgopts: -q
Modified: trunk/tests/Makefile.am
===================================================================
--- trunk/tests/Makefile.am 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/tests/Makefile.am 2009-02-16 00:42:10 UTC (rev 9176)
@@ -3,19 +3,21 @@
include $(top_srcdir)/Makefile.flags.am
noinst_SCRIPTS = \
- vg_regtest \
filter_addresses \
filter_discards \
filter_libc \
filter_numbers \
filter_stderr_basic \
filter_sink \
- filter_test_paths
+ filter_test_paths \
+ os_test \
+ platform_test \
+ vg_regtest
EXTRA_DIST = $(noinst_SCRIPTS)
check_PROGRAMS = \
- cputest \
+ arch_test \
toobig-allocs \
true
@@ -23,7 +25,7 @@
AM_CXXFLAGS = $(AM_CFLAGS)
# generic C ones
-cputest_CFLAGS = $(AM_CFLAGS) \
+arch_test_CFLAGS = $(AM_CFLAGS) \
-DVGA_$(VGCONF_ARCH_PRI)=1 \
-DVGO_$(VGCONF_OS)=1 \
-DVGP_$(VGCONF_ARCH_PRI)_$(VGCONF_OS)=1
Copied: trunk/tests/arch_test.c (from rev 9175, branches/DARWIN/tests/arch_test.c)
===================================================================
--- trunk/tests/arch_test.c (rev 0)
+++ trunk/tests/arch_test.c 2009-02-16 00:42:10 UTC (rev 9176)
@@ -0,0 +1,207 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+
+// This file determines which architectures that this Valgrind installation
+// supports, which depends on the machine's architecture. It also depends
+// on the configuration options; for example, if Valgrind is installed on
+// an AMD64 machine but has been configured with --enable-only32bit then
+// this program will not match "amd64".
+//
+// We return:
+// - 0 if the machine matches the asked-for cpu
+// - 1 if it didn't match, but did match the name of another arch
+// - 2 otherwise
+
+// Nb: When updating this file for a new architecture, add the name to
+// 'all_archs' as well as adding go().
+
+#define False 0
+#define True 1
+typedef int Bool;
+
+char* all_archs[] = {
+ "amd64",
+ "ppc32",
+ "ppc64",
+ "x86",
+ NULL
+};
+
+//-----------------------------------------------------------------------------
+// ppc32-linux
+//---------------------------------------------------------------------------
+#if defined(VGP_ppc32_linux)
+static Bool go(char* cpu)
+{
+ if ( strcmp( cpu, "ppc32" ) == 0 )
+ return True;
+ return False;
+}
+#endif // VGP_ppc32_linux
+
+//---------------------------------------------------------------------------
+// ppc64-linux
+//---------------------------------------------------------------------------
+#if defined(VGP_ppc64_linux)
+static Bool go(char* cpu)
+{
+ if ( strcmp( cpu, "ppc64" ) == 0 )
+ return True;
+ if ( strcmp( cpu, "ppc32" ) == 0 )
+ return True;
+ return False;
+}
+#endif // VGP_ppc64_linux
+
+//---------------------------------------------------------------------------
+// ppc{32,64}-aix
+//---------------------------------------------------------------------------
+#if defined(VGP_ppc32_aix5) || defined(VGP_ppc64_aix5)
+static Bool go(char* cpu)
+{
+ if (sizeof(void*) == 8) {
+ /* cpu is in 64-bit mode */
+ if ( strcmp( cpu, "ppc64" ) == 0 )
+ return True;
+ if ( strcmp( cpu, "ppc32" ) == 0 )
+ return True;
+ } else {
+ if ( strcmp( cpu, "ppc32" ) == 0 )
+ return True;
+ }
+ return False;
+}
+#endif // VGP_ppc32_aix5 || VGP_ppc64_aix5
+
+//---------------------------------------------------------------------------
+// {x86,amd64}-linux (part 1 of 2)
+//---------------------------------------------------------------------------
+#if defined(VGP_x86_linux) || defined(VGP_amd64_linux)
+static void cpuid ( unsigned int n,
+ unsigned int* a, unsigned int* b,
+ unsigned int* c, unsigned int* d )
+{
+ __asm__ __volatile__ (
+ "cpuid"
+ : "=a" (*a), "=b" (*b), "=c" (*c), "=d" (*d) /* output */
+ : "0" (n) /* input */
+ );
+}
+#endif // VGP_x86_linux || VGP_amd64_linux
+
+//---------------------------------------------------------------------------
+// {x86,amd64}-darwin (part 1 of 2)
+//---------------------------------------------------------------------------
+#if defined(VGP_x86_darwin) || defined(VGP_amd64_darwin)
+static void cpuid ( unsigned int n,
+ unsigned int* a, unsigned int* b,
+ unsigned int* c, unsigned int* d )
+{
+ __asm__ __volatile__ (
+ "pushl %%eax\n\t"
+ "pushl %%ebx\n\t"
+ "pushl %%ecx\n\t"
+ "pushl %%edx\n\t"
+ "movl %4, %%eax\n\t"
+ "cpuid\n\t"
+ "movl %%eax,%0\n\t"
+ "movl %%ebx,%1\n\t"
+ "movl %%ecx,%2\n\t"
+ "movl %%edx,%3\n\t"
+ "popl %%edx\n\t"
+ "popl %%ecx\n\t"
+ "popl %%ebx\n\t"
+ "popl %%eax\n\t"
+ : "=m" (*a), "=m" (*b), "=m" (*c), "=m" (*d)
+ : "mr" (n)
+ );
+}
+#endif // VGP_x86_darwin || VGP_amd64_darwin
+
+//---------------------------------------------------------------------------
+// {x86,amd64}-{linux,darwin} (part 2 of 2)
+//---------------------------------------------------------------------------
+#if defined(VGP_x86_linux) || defined(VGP_amd64_linux) || \
+ defined(VGP_x86_darwin) || defined(VGP_amd64_darwin)
+static Bool go(char* cpu)
+{
+ unsigned int level = 0, cmask = 0, dmask = 0, a, b, c, d;
+
+ if ( strcmp( cpu, "x86" ) == 0 ) {
+ return True;
+ } else if ( strcmp( cpu, "x86-fpu" ) == 0 ) {
+ level = 1;
+ dmask = 1 << 0;
+ } else if ( strcmp( cpu, "x86-cmov" ) == 0 ) {
+ level = 1;
+ dmask = 1 << 15;
+ } else if ( strcmp( cpu, "x86-mmx" ) == 0 ) {
+ level = 1;
+ dmask = 1 << 23;
+ } else if ( strcmp( cpu, "x86-mmxext" ) == 0 ) {
+ level = 0x80000001;
+ dmask = 1 << 22;
+ } else if ( strcmp( cpu, "x86-sse" ) == 0 ) {
+ level = 1;
+ dmask = 1 << 25;
+ } else if ( strcmp( cpu, "x86-sse2" ) == 0 ) {
+ level = 1;
+ dmask = 1 << 26;
+ } else if ( strcmp( cpu, "x86-sse3" ) == 0 ) {
+ level = 1;
+ cmask = 1 << 0;
+ } else if ( strcmp( cpu, "x86-ssse3" ) == 0 ) {
+ level = 1;
+ cmask = 1 << 9;
+#if defined(VGA_amd64)
+ } else if ( strcmp( cpu, "amd64" ) == 0 ) {
+ return True;
+ } else if ( strcmp( cpu, "amd64-sse3" ) == 0 ) {
+ level = 1;
+ cmask = 1 << 0;
+ } else if ( strcmp( cpu, "amd64-ssse3" ) == 0 ) {
+ level = 1;
+ cmask = 1 << 9;
+#endif
+ } else {
+ return False;
+ }
+
+ assert( !(cmask != 0 && dmask != 0) );
+ assert( !(cmask == 0 && dmask == 0) );
+
+ cpuid( level & 0x80000000, &a, &b, &c, &d );
+
+ if ( a >= level ) {
+ cpuid( level, &a, &b, &c, &d );
+
+ if (dmask > 0 && (d & dmask) != 0) return True;
+ if (cmask > 0 && (c & cmask) != 0) return True;
+ }
+ return False;
+}
+#endif // VGP_x86_linux || VGP_amd64_linux ||
+ // VGP_x86_darwin || VGP_amd64_darwin
+
+
+//---------------------------------------------------------------------------
+// main
+//---------------------------------------------------------------------------
+int main(int argc, char **argv)
+{
+ int i;
+ if ( argc != 2 ) {
+ fprintf( stderr, "usage: arch_test <cpu-type>\n" );
+ exit( 2 );
+ }
+ if (go( argv[1] )) {
+ return 0; // matched
+ }
+ for (i = 0; NULL != all_archs[i]; i++) {
+ if ( strcmp( argv[1], all_archs[i] ) == 0 )
+ return 1;
+ }
+ return 2;
+}
Deleted: trunk/tests/cputest.c
===================================================================
--- trunk/tests/cputest.c 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/tests/cputest.c 2009-02-16 00:42:10 UTC (rev 9176)
@@ -1,176 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-// This file determines which architectures that this Valgrind installation
-// supports, which depends on the machine's architecture. It also depends
-// on the configuration options; for example, if Valgrind is installed on
-// an AMD64 machine but has been configured with --enable-only32bit then
-// this program will not match "amd64".
-//
-// We return:
-// - 0 if the machine matches the asked-for cpu
-// - 1 if it didn't match, but did match the name of another arch
-// - 2 otherwise
-
-// Nb: When updating this file for a new architecture, add the name to
-// 'all_archs' as well as adding go().
-
-#define False 0
-#define True 1
-typedef int Bool;
-
-char* all_archs[] = {
- "amd64",
- "ppc32",
- "ppc64",
- "x86",
- NULL
-};
-
-//-----------------------------------------------------------------------------
-// ppc32-linux
-//---------------------------------------------------------------------------
-#if defined(VGP_ppc32_linux)
-static Bool go(char* cpu)
-{
- if ( strcmp( cpu, "ppc32" ) == 0 )
- return True;
- return False;
-}
-#endif // VGP_ppc32_linux
-
-//---------------------------------------------------------------------------
-// ppc64-linux
-//---------------------------------------------------------------------------
-#if defined(VGP_ppc64_linux)
-static Bool go(char* cpu)
-{
- if ( strcmp( cpu, "ppc64" ) == 0 )
- return True;
- if ( strcmp( cpu, "ppc32" ) == 0 )
- return True;
- return False;
-}
-#endif // VGP_ppc64_linux
-
-//---------------------------------------------------------------------------
-// ppc{32,64}-aix
-//---------------------------------------------------------------------------
-#if defined(VGP_ppc32_aix5) || defined(VGP_ppc64_aix5)
-static Bool go(char* cpu)
-{
- if (sizeof(void*) == 8) {
- /* cpu is in 64-bit mode */
- if ( strcmp( cpu, "ppc64" ) == 0 )
- return True;
- if ( strcmp( cpu, "ppc32" ) == 0 )
- return True;
- } else {
- if ( strcmp( cpu, "ppc32" ) == 0 )
- return True;
- }
- return False;
-}
-#endif // VGP_ppc32_aix5 || VGP_ppc64_aix5
-
-//---------------------------------------------------------------------------
-// {x86,amd64}-linux (part 1 of 2)
-//---------------------------------------------------------------------------
-#if defined(VGP_x86_linux) || defined(VGP_amd64_linux)
-static void cpuid ( unsigned int n,
- unsigned int* a, unsigned int* b,
- unsigned int* c, unsigned int* d )
-{
- __asm__ __volatile__ (
- "cpuid"
- : "=a" (*a), "=b" (*b), "=c" (*c), "=d" (*d) /* output */
- : "0" (n) /* input */
- );
-}
-#endif // VGP_x86_linux || VGP_amd64_linux
-
-//---------------------------------------------------------------------------
-// {x86,amd64}-{linux} (part 2 of 2)
-//---------------------------------------------------------------------------
-#if defined(VGP_x86_linux) || defined(VGP_amd64_linux)
-static Bool go(char* cpu)
-{
- unsigned int level = 0, cmask = 0, dmask = 0, a, b, c, d;
-
- if ( strcmp( cpu, "x86" ) == 0 ) {
- return True;
- } else if ( strcmp( cpu, "x86-fpu" ) == 0 ) {
- level = 1;
- dmask = 1 << 0;
- } else if ( strcmp( cpu, "x86-cmov" ) == 0 ) {
- level = 1;
- dmask = 1 << 15;
- } else if ( strcmp( cpu, "x86-mmx" ) == 0 ) {
- level = 1;
- dmask = 1 << 23;
- } else if ( strcmp( cpu, "x86-mmxext" ) == 0 ) {
- level = 0x80000001;
- dmask = 1 << 22;
- } else if ( strcmp( cpu, "x86-sse" ) == 0 ) {
- level = 1;
- dmask = 1 << 25;
- } else if ( strcmp( cpu, "x86-sse2" ) == 0 ) {
- level = 1;
- dmask = 1 << 26;
- } else if ( strcmp( cpu, "x86-sse3" ) == 0 ) {
- level = 1;
- cmask = 1 << 0;
- } else if ( strcmp( cpu, "x86-ssse3" ) == 0 ) {
- level = 1;
- cmask = 1 << 9;
-#if defined(VGA_amd64)
- } else if ( strcmp( cpu, "amd64" ) == 0 ) {
- return True;
- } else if ( strcmp( cpu, "amd64-sse3" ) == 0 ) {
- level = 1;
- cmask = 1 << 0;
- } else if ( strcmp( cpu, "amd64-ssse3" ) == 0 ) {
- level = 1;
- cmask = 1 << 9;
-#endif
- } else {
- return False;
- }
-
- assert( !(cmask != 0 && dmask != 0) );
- assert( !(cmask == 0 && dmask == 0) );
-
- cpuid( level & 0x80000000, &a, &b, &c, &d );
-
- if ( a >= level ) {
- cpuid( level, &a, &b, &c, &d );
-
- if (dmask > 0 && (d & dmask) != 0) return True;
- if (cmask > 0 && (c & cmask) != 0) return True;
- }
- return False;
-}
-#endif // VGP_x86_linux || VGP_amd64_linux
-
-
-//---------------------------------------------------------------------------
-// main
-//---------------------------------------------------------------------------
-int main(int argc, char **argv)
-{
- int i;
- if ( argc != 2 ) {
- fprintf( stderr, "usage: cputest <cpu-type>\n" );
- exit( 2 );
- }
- if (go( argv[1] )) {
- return 0; // matched
- }
- for (i = 0; NULL != all_archs[i]; i++) {
- if ( strcmp( argv[1], all_archs[i] ) == 0 )
- return 1;
- }
- return 2;
-}
Copied: trunk/tests/os_test.in (from rev 9175, branches/DARWIN/tests/os_test.in)
===================================================================
--- trunk/tests/os_test.in (rev 0)
+++ trunk/tests/os_test.in 2009-02-16 00:42:10 UTC (rev 9176)
@@ -0,0 +1,29 @@
+#! /bin/sh
+
+# This script determines which OSes that this Valgrind installation
+# supports, which depends on the machine's OS.
+# We return:
+# - 0 if the machine matches the asked-for OS
+# - 1 if it didn't match, but did match the name of another OS
+# - 2 otherwise
+
+# Nb: When updating this file for a new OS, add the name to 'all_OSes'.
+
+all_OSes="linux aix5 darwin"
+
+if [ $# -ne 1 ] ; then
+ echo "usage: os_test <os-type>"
+ exit 2;
+fi
+
+if [ $1 = @VGCONF_OS@ ] ; then
+ exit 0; # Matches this OS.
+fi
+
+for os in $all_OSes ; do
+ if [ $1 = $os ] ; then
+ exit 1; # Matches another Valgrind-supported OS.
+ fi
+done
+
+exit 2; # Doesn't match any Valgrind-supported OS.
Copied: trunk/tests/platform_test (from rev 9175, branches/DARWIN/tests/platform_test)
===================================================================
--- trunk/tests/platform_test (rev 0)
+++ trunk/tests/platform_test 2009-02-16 00:42:10 UTC (rev 9176)
@@ -0,0 +1,37 @@
+#! /bin/sh
+
+# This script determines which platforms that this Valgrind installation
+# supports.
+# We return:
+# - 0 if the machine matches the asked-for platform
+# - 1 if it didn't match, but did match the name of another platform
+# - 2 otherwise
+
+# Nb: When updating this file for a new platform, add the name to
+# 'all_platforms'.
+
+all_platforms=
+all_platforms="$all_platforms x86-linux amd64-linux ppc32-linux ppc64-linux"
+all_platforms="$all_platforms ppc32-aix5 ppc64-aix5"
+all_platforms="$all_platforms x86-darwin amd64-darwin"
+
+if [ $# -ne 2 ] ; then
+ echo "usage: platform_test <arch-type> <OS-type>"
+ exit 2;
+fi
+
+# Get the directory holding the arch_test and os_test, which will be the same
+# as the one holding this script.
+dir=`dirname $0`
+
+if $dir/arch_test $1 && sh $dir/os_test $2 ; then
+ exit 0; # Matches this platform.
+fi
+
+for p in $all_platforms ; do
+ if [ $1-$2 = $p ] ; then
+ exit 1; # Matches another Valgrind-supported platform.
+ fi
+done
+
+exit 2; # Doesn't match any Valgrind-supported platform.
Modified: trunk/tests/vg_regtest.in
===================================================================
--- trunk/tests/vg_regtest.in 2009-02-15 23:38:24 UTC (rev 9175)
+++ trunk/tests/vg_regtest.in 2009-02-16 00:42:10 UTC (rev 9176)
@@ -378,14 +378,18 @@
# Ignore dirs into which we should not recurse.
if ($dir =~ /^(BitKeeper|CVS|SCCS|docs|doc)$/) { return; }
- (-x "$tests_dir/tests/cputest") or die
- "vg_regtest: 'cputest' is missing. Did you forget to 'make check'?\n";
+ (-x "$tests_dir/tests/arch_test") or die
+ "vg_regtest: 'arch_test' is missing. Did you forget to 'make check'?\n";
# Ignore any dir whose name matches that of an architecture which is not
- # the architecture we are running on (eg. when running on x86, ignore ppc/
- # directories).
+ # the architecture we are running on. Eg. when running on x86, ignore
+ # ppc/ directories ('arch_test' returns 1 for this case). Likewise for
+ # the OS and platform.
# Nb: weird Perl-ism -- exit code of '1' is seen by Perl as 256...
- if (256 == system("$tests_dir/tests/cputest $dir")) { return; }
+ if (256 == system( "$tests_dir/tests/arch_test $dir")) { return; }
+ if (256 == system("sh $tests_dir/tests/os_test $dir")) { return; }
+ if ($dir =~ /(\w+)-(\w+)/ &&
+ 256 == system("sh $tests_dir/tests/platform_test $1 $2")) { return; }
chdir($dir) or die "Could not change into $dir\n";
|