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
(6) |
2
(3) |
3
|
4
(3) |
5
(10) |
6
(4) |
7
(5) |
|
8
(1) |
9
(3) |
10
(11) |
11
(18) |
12
(13) |
13
(4) |
14
(11) |
|
15
(12) |
16
(6) |
17
(1) |
18
(13) |
19
(14) |
20
(12) |
21
(3) |
|
22
(17) |
23
(18) |
24
(17) |
25
(24) |
26
(15) |
27
(7) |
28
(23) |
|
29
(31) |
|
|
|
|
|
|
|
From: Dirk M. <mu...@kd...> - 2004-02-23 22:10:20
|
CVS commit by mueller:
patch by Tom Hughes to make it work with gcc 2.96
M +102 -74 gen_insn_test.pl 1.4
--- valgrind/none/tests/gen_insn_test.pl #1.3:1.4
@@ -215,16 +215,16 @@
push @presets, $preset;
- print qq| $ArgTypes{$type} $name = \{|;
+ print qq| $ArgTypes{$type} $name = \{ .$subtype = \{|;
my $valuec = 0;
foreach my $value (@values)
- {
+ {
print qq|,| if $valuec > 0;
- print qq| .$subtype\[$valuec\] = $value$SubTypeSuffixes{$subtype}|;
+ print qq| $value$SubTypeSuffixes{$subtype}|;
$valuec++;
}
- print qq| \};\n|;
+ print qq| \} \};\n|;
$presetc++;
@@ -278,5 +278,5 @@
push @args, $arg;
- print qq| $ArgTypes{$type} $name = \{|;
+ print qq| $ArgTypes{$type} $name = \{ .$subtype = \{|;
my $valuec = 0;
@@ -285,9 +285,9 @@
{
print qq|,| if $valuec > 0;
- print qq| .$subtype\[$valuec\] = $value$SubTypeSuffixes{$subtype}|;
+ print qq| $value$SubTypeSuffixes{$subtype}|;
$valuec++;
}
- print qq| \};\n|;
+ print qq| \} \};\n|;
}
elsif ($arg =~ /^(imm8|imm16|imm32)\[([^\]]+)\]$/)
@@ -339,6 +339,6 @@
my $name = "result$resultc";
- if ($result =~ /^(\d+)\.(sb|ub|sw|uw|sd|ud|sq|uq|ps|pd)\[([^\]]+)\]$/)
- {
+ if ($result =~ /^(\d+)\.(sb|ub|sw|uw|sd|ud|sq|uq|ps|pd)\[([^\]]+)\]$/)
+ {
my $index = $1;
my $type = $args[$index]->{type};
@@ -383,12 +383,12 @@
print qq| $ArgTypes{$type} $name;\n|;
- }
- elsif ($result =~ /^eflags\[([^\]]+)\]$/)
- {
+ }
+ elsif ($result =~ /^eflags\[([^\]]+)\]$/)
+ {
my @values = split(/,/, $1);
-
+
$values[0] = oct($values[0]) if $values[0] =~ /^0/;
$values[1] = oct($values[1]) if $values[1] =~ /^0/;
-
+
my $result = {
name => $name,
@@ -407,13 +407,41 @@
$eflagsset = sprintf "0x%x", $values[0] & ~$values[1];
}
+ }
+ else
+ {
+ die "Can't parse result $result";
+ }
+
+ $resultc++;
}
- else
+
+ my $argnum = 0;
+
+ foreach my $result (@results)
{
- die "Can't parse result $result";
+ if ($result->{type} =~ /^(m(8|16|32|64|128)|eflags)$/)
+ {
+ $result->{argnum} = $argnum++;
+ }
}
- $resultc++;
+ foreach my $arg (@presets, @args)
+ {
+ if (defined($arg->{name}))
+ {
+ $arg->{argnum} = $argnum++;
+ }
}
+ foreach my $result (@results)
+ {
+ if ($result->{type} =~ /^(r(8|16|32)|mm|xmm)$/)
+ {
+ $result->{argnum} = $argnum++;
+ }
+ }
+
+ my $stateargnum = $argnum++;
+
print qq| char state\[108\];\n|;
print qq|\n|;
@@ -421,5 +449,5 @@
print qq| \{\n|;
print qq| asm\(\n|;
- print qq| \"fsave %\[state\]\\n\"\n|;
+ print qq| \"fsave %$stateargnum\\n\"\n|;
foreach my $arg (@presets, @args)
@@ -427,23 +455,23 @@
if ($arg->{type} eq "r8")
{
- print qq| \"movb %\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
+ print qq| \"movb %$arg->{argnum}, %%$arg->{register}\\n\"\n|;
}
elsif ($arg->{type} eq "r16")
{
- print qq| \"movw %\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
+ print qq| \"movw %$arg->{argnum}, %%$arg->{register}\\n\"\n|;
}
elsif ($arg->{type} eq "r32")
{
- print qq| \"movl %\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
+ print qq| \"movl %$arg->{argnum}, %%$arg->{register}\\n\"\n|;
}
elsif ($arg->{type} eq "mm")
- {
- print qq| \"movq %\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
- }
+ {
+ print qq| \"movq %$arg->{argnum}, %%$arg->{register}\\n\"\n|;
+ }
elsif ($arg->{type} eq "xmm")
- {
- print qq| \"movlps 0%\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
- print qq| \"movhps 8%\[$arg->{name}\], %%$arg->{register}\\n\"\n|;
- }
+ {
+ print qq| \"movlps 0%$arg->{argnum}, %%$arg->{register}\\n\"\n|;
+ print qq| \"movhps 8%$arg->{argnum}, %%$arg->{register}\\n\"\n|;
+ }
}
@@ -461,5 +489,5 @@
foreach my $arg (@args)
- {
+ {
next if $arg->{type} eq "eflags";
@@ -472,9 +500,9 @@
if (exists($arg->{result}))
{
- print qq|$prefix%\[$arg->{result}->{name}\]|;
+ print qq|$prefix%$arg->{result}->{argnum}|;
}
else
{
- print qq|$prefix%\[$arg->{name}\]|;
+ print qq|$prefix%$arg->{argnum}|;
}
}
@@ -493,31 +521,31 @@
if ($result->{type} eq "r8")
{
- print qq| \"movb %%$result->{register}, %\[$result->{name}\]\\n\"\n|;
+ print qq| \"movb %%$result->{register}, %$result->{argnum}\\n\"\n|;
}
elsif ($result->{type} eq "r16")
- {
- print qq| \"movw %%$result->{register}, %\[$result->{name}\]\\n\"\n|;
- }
+ {
+ print qq| \"movw %%$result->{register}, %$result->{argnum}\\n\"\n|;
+ }
elsif ($result->{type} eq "r32")
- {
- print qq| \"movl %%$result->{register}, %\[$result->{name}\]\\n\"\n|;
- }
+ {
+ print qq| \"movl %%$result->{register}, %$result->{argnum}\\n\"\n|;
+ }
elsif ($result->{type} eq "mm")
- {
- print qq| \"movq %%$result->{register}, %\[$result->{name}\]\\n\"\n|;
- }
+ {
+ print qq| \"movq %%$result->{register}, %$result->{argnum}\\n\"\n|;
+ }
elsif ($result->{type} eq "xmm")
{
- print qq| \"movlps %%$result->{register}, 0%\[$result->{name}\]\\n\"\n|;
- print qq| \"movhps %%$result->{register}, 8%\[$result->{name}\]\\n\"\n|;
+ print qq| \"movlps %%$result->{register}, 0%$result->{argnum}\\n\"\n|;
+ print qq| \"movhps %%$result->{register}, 8%$result->{argnum}\\n\"\n|;
}
elsif ($result->{type} eq "eflags")
- {
- print qq| \"pushfl\\n\"\n|;
- print qq| \"popl %\[$result->{name}\]\\n\"\n|;
+ {
+ print qq| \"pushfl\\n\"\n|;
+ print qq| \"popl %$result->{argnum}\\n\"\n|;
}
}
- print qq| \"frstor %\[state\]\\n\"\n|;
+ print qq| \"frstor %$stateargnum\\n\"\n|;
print qq| :|;
@@ -528,6 +556,6 @@
{
if ($result->{type} =~ /^(m(8|16|32|64|128)|eflags)$/)
- {
- print qq|$prefix\[$result->{name}\] \"=m\" \($result->{name}\)|;
+ {
+ print qq|$prefix\"=m\" \($result->{name}\)|;
$prefix = ", ";
}
@@ -542,5 +570,5 @@
if (defined($arg->{name}))
{
- print qq|$prefix\[$arg->{name}\] \"m\" \($arg->{name}\)|;
+ print qq|$prefix\"m\" \($arg->{name}\)|;
$prefix = ", ";
}
@@ -551,15 +579,15 @@
if ($result->{type} =~ /^(r(8|16|32)|mm|xmm)$/)
{
- print qq|$prefix\[$result->{name}\] \"m\" \($result->{name}\)|;
+ print qq|$prefix\"m\" \($result->{name}\)|;
$prefix = ", ";
}
}
- print qq|$prefix\[state\] \"m\" \(state[0]\)\n|;
+ print qq|$prefix\"m\" \(state[0]\)\n|;
$prefix = " : ";
foreach my $arg (@presets, @args)
- {
+ {
if ($arg->{register})
{
@@ -586,28 +614,28 @@
if ($type eq "eflags")
- {
+ {
print qq|${prefix}\($result->{name}.ud[0] & $values[0]UL\) == $values[1]UL|;
- }
- else
- {
- foreach my $value (0 .. $#values)
+ }
+ else
{
- if ($subtype eq "ps")
+ foreach my $value (0 .. $#values)
{
+ if ($subtype eq "ps")
+ {
print qq|${prefix}eq_float($result->{name}.$subtype\[$value\], $values[$value]$suffix)|;
- }
+ }
elsif ($subtype eq "pd")
- {
+ {
print qq|${prefix}eq_double($result->{name}.$subtype\[$value\], $values[$value]$suffix)|;
- }
- else
- {
+ }
+ else
+ {
print qq|${prefix}$result->{name}.$subtype\[$value\] == $values[$value]$suffix|;
+ }
+
+ $prefix = " && ";
}
-
- $prefix = " && ";
}
- }
-
+
$prefix = " &&\n ";
}
@@ -629,16 +657,16 @@
if ($type eq "eflags")
- {
+ {
print qq| printf(" eflags & 0x%lx = 0x%lx (expected 0x%lx)\\n", $values[0]UL, $result->{name}.ud\[0\] & $values[0]UL, $values[1]UL);\n|;
- }
- else
- {
- foreach my $value (0 .. $#values)
+ }
+ else
{
+ foreach my $value (0 .. $#values)
+ {
print qq| printf(" $result->{name}.$subtype\[$value\] = $SubTypeFormats{$subtype} (expected $SubTypeFormats{$subtype})\\n", $result->{name}.$subtype\[$value\], $values[$value]$suffix);\n|;
}
}
}
-
+
print qq| \}\n|;
print qq| \}\n|;
|
|
From: Nicholas N. <nj...@ca...> - 2004-02-23 20:03:27
|
CVS commit by nethercote: Fix var names in prototypes. M +18 -18 vg_skin.h.base 1.15 --- valgrind/include/vg_skin.h.base #1.14:1.15 @@ -1131,22 +1131,22 @@ EV VG_(ccall_0_0) ( CB_F ); -EV VG_(ccall_R_0) ( CB_F, UInt r1, RPn ); -EV VG_(ccall_L_0) ( CB_F, UInt r1, RPn ); -EV VG_(ccall_R_R) ( CB_F, UInt r1, UInt r_ret, RPn ); -EV VG_(ccall_L_R) ( CB_F, UInt r1, UInt r_ret, RPn ); - -EV VG_(ccall_RR_0) ( CB_F, UInt r1, UInt r2, RPn ); -EV VG_(ccall_RL_0) ( CB_F, UInt r1, UInt r2, RPn ); -EV VG_(ccall_LR_0) ( CB_F, UInt r1, UInt r2, RPn ); -EV VG_(ccall_LL_0) ( CB_F, UInt r1, UInt r2, RPn ); -EV VG_(ccall_RR_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn ); -EV VG_(ccall_RL_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn ); -EV VG_(ccall_LR_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn ); -EV VG_(ccall_LL_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn ); - -EV VG_(ccall_RRR_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn ); -EV VG_(ccall_RLL_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn ); -EV VG_(ccall_LLR_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn ); -EV VG_(ccall_LLL_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn ); +EV VG_(ccall_R_0) ( CB_F, UInt R1, RPn ); +EV VG_(ccall_L_0) ( CB_F, UInt L1, RPn ); +EV VG_(ccall_R_R) ( CB_F, UInt R1, UInt R_ret, RPn ); +EV VG_(ccall_L_R) ( CB_F, UInt L1, UInt R_ret, RPn ); + +EV VG_(ccall_RR_0) ( CB_F, UInt R1, UInt R2, RPn ); +EV VG_(ccall_RL_0) ( CB_F, UInt R1, UInt RL, RPn ); +EV VG_(ccall_LR_0) ( CB_F, UInt L1, UInt R2, RPn ); +EV VG_(ccall_LL_0) ( CB_F, UInt L1, UInt L2, RPn ); +EV VG_(ccall_RR_R) ( CB_F, UInt R1, UInt R2, UInt R_ret, RPn ); +EV VG_(ccall_RL_R) ( CB_F, UInt R1, UInt L2, UInt R_ret, RPn ); +EV VG_(ccall_LR_R) ( CB_F, UInt L1, UInt R2, UInt R_ret, RPn ); +EV VG_(ccall_LL_R) ( CB_F, UInt L1, UInt L2, UInt R_ret, RPn ); + +EV VG_(ccall_RRR_0) ( CB_F, UInt R1, UInt R2, UInt R3, RPn ); +EV VG_(ccall_RLL_0) ( CB_F, UInt R1, UInt L2, UInt L3, RPn ); +EV VG_(ccall_LLR_0) ( CB_F, UInt L1, UInt L2, UInt R3, RPn ); +EV VG_(ccall_LLL_0) ( CB_F, UInt L1, UInt L2, UInt L3, RPn ); #undef CB_F |
|
From: Tom H. <th...@cy...> - 2004-02-23 20:02:44
|
In message <E1A...@al...>
Tom Hughes <th...@cy...> wrote:
> insn_basic.c: In function `xorl_7':
> insn_basic.c:44375: array index in non-array initializer
> insn_basic.c:44375: (near initialization for `arg0')
> insn_basic.c:44375: warning: missing braces around initializer
> insn_basic.c:44375: warning: (near initialization for `arg0.ud')
> insn_basic.c:44376: array index in non-array initializer
> insn_basic.c:44376: (near initialization for `arg1')
> insn_basic.c:44376: warning: missing braces around initializer
> insn_basic.c:44376: warning: (near initialization for `arg1.ud')
> insn_basic.c:44389: parse error before `['
> insn_basic.c:44378: warning: unused variable `state'
> insn_basic.c:44376: warning: unused variable `arg1'
> insn_basic.c:44375: warning: unused variable `arg0'
This is caused by my instruction test code using a couple of
constructs which are gcc 3 specific, and the RedHat 7.3 test
box this was run on only having 2.96 available.
Attached is a patch to generate code that older versions of gcc
can understand.
Tom
--
Tom Hughes (th...@cy...)
Software Engineer, Cyberscience Corporation
http://www.cyberscience.com/
|
|
From: Jeremy F. <je...@go...> - 2004-02-23 20:02:08
|
On Mon, 2004-02-23 at 06:11, Nicholas Nethercote wrote: > On Mon, 23 Feb 2004, Dirk Mueller wrote: > > > BTW, do we plan to try to include the freebsd port into 2.1.1 or 2.1.2 ? > > I would suggest 2.1.2 -- 2.1.1 already has plenty of changes, esp. FV. I agree. I think we should fix any little bugs which are show-stoppers, and then release it. > > and regarding i386 vs x86 vs ia32: > > > > http://www.ussg.iu.edu/hypermail/linux/kernel/0402.2/0795.html > > Woo, I like 'x86' the best too. Except that Linux uses i386 everywhere for ia32... J |
|
From: Nicholas N. <nj...@ca...> - 2004-02-23 16:18:20
|
CVS commit by nethercote:
Added various functions that make instrumentation easier, particularly
doing C calls.
M +185 -30 coregrind/vg_instrument.c 1.11
M +45 -6 include/vg_skin.h.base 1.14
--- valgrind/coregrind/vg_instrument.c #1.10:1.11
@@ -37,55 +37,209 @@
-void VG_(call_helper_0_0)(UCodeBlock* cb, Addr f)
+void VG_(lit_to_reg)(UCodeBlock* cb, UInt lit, UInt t)
{
- uInstr0(cb, CCALL, 0);
- uCCall(cb, f, 0, 0, 0);
+ uInstr2 (cb, MOV, 4, Literal, 0, TempReg, t);
+ uLiteral(cb, lit);
}
-void VG_(call_helper_1_0)(UCodeBlock* cb, Addr f, UInt arg1, UInt regparms_n)
+UInt VG_(lit_to_newreg)(UCodeBlock* cb, UInt lit)
{
- UInt t1 = newTemp(cb);
+ UInt t = newTemp(cb);
+ uInstr2 (cb, MOV, 4, Literal, 0, TempReg, t);
+ uLiteral(cb, lit);
+ return t;
+}
+// f()
+void VG_(ccall_0_0)(UCodeBlock* cb, Addr f)
+{
+ uInstr0(cb, CCALL, 0);
+ uCCall(cb, f, 0, 0, /*retval*/False);
+}
+
+// f(reg)
+void VG_(ccall_R_0)(UCodeBlock* cb, Addr f, UInt t1, UInt regparms_n)
+{
sk_assert(regparms_n <= 1);
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t1);
- uLiteral(cb, arg1);
uInstr1(cb, CCALL, 0, TempReg, t1);
- uCCall(cb, f, 1, regparms_n, 0);
+ uCCall(cb, f, 1, regparms_n, /*retval*/False);
}
-void VG_(call_helper_2_0)(UCodeBlock* cb, Addr f, UInt arg1, UInt arg2,
+// f(lit)
+void VG_(ccall_L_0)(UCodeBlock* cb, Addr f, UInt lit1, UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ VG_(ccall_R_0)(cb, f, t1, regparms_n);
+}
+
+// reg = f(reg)
+void VG_(ccall_R_R)(UCodeBlock* cb, Addr f, UInt t1, UInt t_ret,
UInt regparms_n)
{
- UInt t1 = newTemp(cb);
- UInt t2 = newTemp(cb);
+ sk_assert(regparms_n <= 1);
+ sk_assert(t1 < VG_(get_num_temps)(cb)); // help catch lits accidentally passed in
+ uInstr3(cb, CCALL, 0, TempReg, t1, NoValue, 0, TempReg, t_ret);
+ uCCall(cb, f, 1, regparms_n, /*retval*/True);
+}
+// reg = f(lit)
+void VG_(ccall_L_R)(UCodeBlock* cb, Addr f, UInt lit1, UInt t_ret,
+ UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ VG_(ccall_R_R)(cb, f, t1, t_ret, regparms_n);
+}
+
+// f(reg, reg)
+void VG_(ccall_RR_0)(UCodeBlock* cb, Addr f, UInt t1, UInt t2, UInt regparms_n)
+{
sk_assert(regparms_n <= 2);
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t1);
- uLiteral(cb, arg1);
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t2);
- uLiteral(cb, arg2);
+ sk_assert(t1 < VG_(get_num_temps)(cb));
+ sk_assert(t2 < VG_(get_num_temps)(cb));
uInstr2(cb, CCALL, 0, TempReg, t1, TempReg, t2);
- uCCall(cb, f, 2, regparms_n, 0);
+ uCCall(cb, f, 2, regparms_n, /*retval*/False);
}
-void VG_(set_global_var)(UCodeBlock* cb, Addr globvar_ptr, UInt val)
+// f(reg, lit)
+void VG_(ccall_RL_0)(UCodeBlock* cb, Addr f, UInt t1, UInt lit2,
+ UInt regparms_n)
{
- Int t_gv = newTemp(cb);
- Int t_val = newTemp(cb);
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ VG_(ccall_RR_0)(cb, f, t1, t2, regparms_n);
+}
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t_val);
- uLiteral(cb, val);
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t_gv);
- uLiteral(cb, globvar_ptr);
- uInstr2(cb, STORE, 4, TempReg, t_val, TempReg, t_gv);
+// f(lit, reg)
+void VG_(ccall_LR_0)(UCodeBlock* cb, Addr f, UInt lit1, UInt t2,
+ UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ VG_(ccall_RR_0)(cb, f, t1, t2, regparms_n);
}
-void VG_(set_global_var_tempreg)(UCodeBlock* cb, Addr globvar_ptr, UInt t_val)
+// f(lit, lit)
+void VG_(ccall_LL_0)(UCodeBlock* cb, Addr f, UInt lit1, UInt lit2,
+ UInt regparms_n)
{
- Int t_gv = newTemp(cb);
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ VG_(ccall_RR_0)(cb, f, t1, t2, regparms_n);
+}
- uInstr2(cb, MOV, 4, Literal, 0, TempReg, t_gv);
- uLiteral(cb, globvar_ptr);
- uInstr2(cb, STORE, 4, TempReg, t_val, TempReg, t_gv);
+// reg = f(reg, reg)
+void VG_(ccall_RR_R)(UCodeBlock* cb, Addr f, UInt t1, UInt t2, UInt t_ret,
+ UInt regparms_n)
+{
+ sk_assert(regparms_n <= 2);
+ sk_assert(t1 < VG_(get_num_temps)(cb));
+ sk_assert(t2 < VG_(get_num_temps)(cb));
+ uInstr3(cb, CCALL, 0, TempReg, t1, TempReg, t2, TempReg, t_ret);
+ uCCall(cb, f, 2, regparms_n, /*retval*/True);
+}
+
+// reg = f(reg, lit)
+void VG_(ccall_RL_R)(UCodeBlock* cb, Addr f, UInt t1, UInt lit2, UInt t_ret,
+ UInt regparms_n)
+{
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ VG_(ccall_RR_R)(cb, f, t1, t2, t_ret, regparms_n);
+}
+
+// reg = f(lit, reg)
+void VG_(ccall_LR_R)(UCodeBlock* cb, Addr f, UInt lit1, UInt t2, UInt t_ret,
+ UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ VG_(ccall_RR_R)(cb, f, t1, t2, t_ret, regparms_n);
+}
+
+// reg = f(lit, lit)
+void VG_(ccall_LL_R)(UCodeBlock* cb, Addr f, UInt lit1, UInt lit2, UInt t_ret,
+ UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit2);
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ VG_(ccall_RR_R)(cb, f, t1, t2, t_ret, regparms_n);
+}
+
+// f(reg, reg, reg)
+void VG_(ccall_RRR_0)(UCodeBlock* cb, Addr f, UInt t1, UInt t2,
+ UInt t3, UInt regparms_n)
+{
+ sk_assert(regparms_n <= 3);
+ sk_assert(t1 < VG_(get_num_temps)(cb));
+ sk_assert(t2 < VG_(get_num_temps)(cb));
+ sk_assert(t3 < VG_(get_num_temps)(cb));
+ uInstr3(cb, CCALL, 0, TempReg, t1, TempReg, t2, TempReg, t3);
+ uCCall(cb, f, 3, regparms_n, /*retval*/False);
+}
+
+// f(reg, lit, lit)
+void VG_(ccall_RLL_0)(UCodeBlock* cb, Addr f, UInt t1, UInt lit2,
+ UInt lit3, UInt regparms_n)
+{
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ UInt t3 = VG_(lit_to_newreg)(cb, lit3);
+ VG_(ccall_RRR_0)(cb, f, t1, t2, t3, regparms_n);
+}
+
+// f(lit, lit, reg)
+void VG_(ccall_LLR_0)(UCodeBlock* cb, Addr f, UInt lit1, UInt lit2,
+ UInt t3, UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ VG_(ccall_RRR_0)(cb, f, t1, t2, t3, regparms_n);
+}
+
+// f(lit, lit, lit)
+void VG_(ccall_LLL_0)(UCodeBlock* cb, Addr f, UInt lit1, UInt lit2,
+ UInt lit3, UInt regparms_n)
+{
+ UInt t1 = VG_(lit_to_newreg)(cb, lit1);
+ UInt t2 = VG_(lit_to_newreg)(cb, lit2);
+ UInt t3 = VG_(lit_to_newreg)(cb, lit3);
+ VG_(ccall_RRR_0)(cb, f, t1, t2, t3, regparms_n);
+}
+
+void VG_(reg_to_globvar)(UCodeBlock* cb, UInt t, UInt* globvar_ptr)
+{
+ Int t_gv = VG_(lit_to_newreg)(cb, (UInt)globvar_ptr);
+ uInstr2(cb, STORE, 4, TempReg, t, TempReg, t_gv);
+}
+
+void VG_(lit_to_globvar)(UCodeBlock* cb, UInt lit, UInt* globvar_ptr)
+{
+ Int t_lit = VG_(lit_to_newreg)(cb, lit);
+ VG_(reg_to_globvar)(cb, t_lit, globvar_ptr);
+}
+
+/*--------------------------------------------------------------------
+ Old versions of these functions, for backwards compatibility
+ --------------------------------------------------------------------*/
+
+void VG_(call_helper_0_0)(UCodeBlock* cb, Addr f)
+{
+ VG_(ccall_0_0)(cb, f);
+}
+
+void VG_(call_helper_1_0)(UCodeBlock* cb, Addr f, UInt arg1, UInt regparms_n)
+{
+ VG_(ccall_L_0)(cb, f, arg1, regparms_n);
+}
+
+void VG_(call_helper_2_0)(UCodeBlock* cb, Addr f, UInt arg1, UInt arg2,
+ UInt regparms_n)
+{
+ VG_(ccall_LL_0)(cb, f, arg1, arg2, regparms_n);
+}
+
+void VG_(set_global_var)(UCodeBlock* cb, Addr globvar_ptr, UInt val)
+{
+ VG_(lit_to_globvar)(cb, val, (UInt*)globvar_ptr);
+}
+
+void VG_(set_global_var_tempreg)(UCodeBlock* cb, Addr globvar_ptr, UInt t_val)
+{
+ VG_(reg_to_globvar)(cb, t_val, (UInt*)globvar_ptr);
}
--- valgrind/include/vg_skin.h.base #1.13:1.14
@@ -846,5 +846,5 @@
up to three arguments (or two if the functions has a return value).
Arguments and return value must be word-sized. More arguments can
- be faked with global variables (eg. use VG_(set_global_var)()).
+ be faked with global variables (eg. use VG_(lit_to_globvar)()).
Seven possibilities: 'arg[123]' show where args go, 'ret' shows
@@ -1117,4 +1117,48 @@
/* ------------------------------------------------------------------ */
/* Higher-level UInstr sequence builders */
+
+extern void VG_(lit_to_reg) ( UCodeBlock* cb, UInt lit, UInt t );
+extern UInt VG_(lit_to_newreg) ( UCodeBlock* cb, UInt lit );
+
+#define CB_F UCodeBlock* cb, Addr f
+#define EV extern void
+#define RPn UInt regparms_n
+
+/* Various CCALL builders, of the form "ccall_<args>_<retval>". 'R'
+ represents a TempReg, 'L' represents a literal, '0' represents nothing
+ (ie. no args, or no return value). */
+
+EV VG_(ccall_0_0) ( CB_F );
+
+EV VG_(ccall_R_0) ( CB_F, UInt r1, RPn );
+EV VG_(ccall_L_0) ( CB_F, UInt r1, RPn );
+EV VG_(ccall_R_R) ( CB_F, UInt r1, UInt r_ret, RPn );
+EV VG_(ccall_L_R) ( CB_F, UInt r1, UInt r_ret, RPn );
+
+EV VG_(ccall_RR_0) ( CB_F, UInt r1, UInt r2, RPn );
+EV VG_(ccall_RL_0) ( CB_F, UInt r1, UInt r2, RPn );
+EV VG_(ccall_LR_0) ( CB_F, UInt r1, UInt r2, RPn );
+EV VG_(ccall_LL_0) ( CB_F, UInt r1, UInt r2, RPn );
+EV VG_(ccall_RR_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn );
+EV VG_(ccall_RL_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn );
+EV VG_(ccall_LR_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn );
+EV VG_(ccall_LL_R) ( CB_F, UInt r1, UInt r2, UInt r_ret, RPn );
+
+EV VG_(ccall_RRR_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn );
+EV VG_(ccall_RLL_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn );
+EV VG_(ccall_LLR_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn );
+EV VG_(ccall_LLL_0) ( CB_F, UInt r1, UInt r2, UInt r3, RPn );
+
+#undef CB_F
+#undef EV
+#undef RPn
+
+/* One way around the 3-arg C function limit is to pass args via global
+ * variables... ugly, but it works. */
+void VG_(reg_to_globvar)(UCodeBlock* cb, UInt t, UInt* globvar_ptr);
+void VG_(lit_to_globvar)(UCodeBlock* cb, UInt lit, UInt* globvar_ptr);
+
+
+/* Old, deprecated versions of some of the helpers (DO NOT USE) */
extern void VG_(call_helper_0_0) ( UCodeBlock* cb, Addr f);
extern void VG_(call_helper_1_0) ( UCodeBlock* cb, Addr f, UInt arg1,
@@ -1122,10 +1166,5 @@
extern void VG_(call_helper_2_0) ( UCodeBlock* cb, Addr f, UInt arg1, UInt arg2,
UInt regparms_n);
-
-/* One way around the 3-arg C function limit is to pass args via global
- * variables... ugly, but it works. This one puts a literal in there. */
extern void VG_(set_global_var) ( UCodeBlock* cb, Addr globvar_ptr, UInt val);
-
-/* This one puts the contents of a TempReg in the global variable. */
extern void VG_(set_global_var_tempreg) ( UCodeBlock* cb, Addr globvar_ptr,
UInt t_val);
|
|
From: Tom H. <to...@co...> - 2004-02-23 16:10:56
|
Nightly build on dunsmere ( Fedora Core 1 ) started at 2004-02-23 16:00:22 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow -- Finished tests in none/tests ---------------------------------------- == 126 tests, 15 stderr failures, 1 stdout failure ================= corecheck/tests/fdleak_cmsg (stderr) corecheck/tests/fdleak_creat (stderr) corecheck/tests/fdleak_dup (stderr) corecheck/tests/fdleak_dup2 (stderr) corecheck/tests/fdleak_fcntl (stderr) corecheck/tests/fdleak_ipv4 (stderr) corecheck/tests/fdleak_open (stderr) corecheck/tests/fdleak_pipe (stderr) corecheck/tests/fdleak_socketpair (stderr) helgrind/tests/inherit (stderr) memcheck/tests/buflen_check (stderr) memcheck/tests/execve (stderr) memcheck/tests/fwrite (stderr) memcheck/tests/weirdioctl (stderr) memcheck/tests/writev (stderr) none/tests/exec-sigmask (stdout) |
|
From: Tom H. <th...@cy...> - 2004-02-23 16:10:42
|
Nightly build on audi ( Red Hat 9 ) started at 2004-02-23 16:00:18 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow munmap_exe: valgrind ./munmap_exe pth_blockedsig: valgrind ./pth_blockedsig rcl_assert: valgrind ./rcl_assert rcrl: valgrind ./rcrl readline1: valgrind ./readline1 resolv: valgrind ./resolv seg_override: valgrind ./seg_override sha1_test: valgrind ./sha1_test shortpush: valgrind ./shortpush shorts: valgrind ./shorts smc1: valgrind ./smc1 syscall-restart1: valgrind ./syscall-restart1 syscall-restart2: valgrind ./syscall-restart2 system: valgrind ./system yield: valgrind ./yield -- Finished tests in none/tests ---------------------------------------- == 126 tests, 1 stderr failure, 0 stdout failures ================= helgrind/tests/inherit (stderr) |
|
From: Tom H. <th...@cy...> - 2004-02-23 16:10:26
|
Nightly build on ginetta ( Red Hat 8.0 ) started at 2004-02-23 16:00:32 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow none/tests/rcl_assert (stderr) none/tests/rcrl (stdout) none/tests/rcrl (stderr) none/tests/readline1 (stdout) none/tests/readline1 (stderr) none/tests/resolv (stdout) none/tests/resolv (stderr) none/tests/seg_override (stdout) none/tests/seg_override (stderr) none/tests/sha1_test (stderr) none/tests/shortpush (stderr) none/tests/shorts (stderr) none/tests/smc1 (stdout) none/tests/smc1 (stderr) none/tests/syscall-restart1 (stderr) none/tests/syscall-restart2 (stderr) none/tests/system (stderr) none/tests/yield (stdout) none/tests/yield (stderr) |
|
From: Tom H. <th...@cy...> - 2004-02-23 16:09:55
|
Nightly build on alvis ( Red Hat 7.3 ) started at 2004-02-23 16:00:29 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow insn_basic.c: In function `xorl_7': insn_basic.c:44375: array index in non-array initializer insn_basic.c:44375: (near initialization for `arg0') insn_basic.c:44375: warning: missing braces around initializer insn_basic.c:44375: warning: (near initialization for `arg0.ud') insn_basic.c:44376: array index in non-array initializer insn_basic.c:44376: (near initialization for `arg1') insn_basic.c:44376: warning: missing braces around initializer insn_basic.c:44376: warning: (near initialization for `arg1.ud') insn_basic.c:44389: parse error before `[' insn_basic.c:44378: warning: unused variable `state' insn_basic.c:44376: warning: unused variable `arg1' insn_basic.c:44375: warning: unused variable `arg0' make[3]: *** [insn_basic.o] Error 1 make[3]: Leaving directory `/tmp/valgrind.16691/valgrind/none/tests' make[2]: *** [check-am] Error 2 make[2]: Leaving directory `/tmp/valgrind.16691/valgrind/none/tests' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/tmp/valgrind.16691/valgrind/none' make: *** [check-recursive] Error 1 |
|
From: Tom H. <th...@cy...> - 2004-02-23 16:09:16
|
Nightly build on standard ( Red Hat 7.2 ) started at 2004-02-23 16:00:25 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow make[3]: Entering directory `/tmp/valgrind.23915/valgrind/coregrind/arch' make[3]: Nothing to be done for `check-am'. make[3]: Leaving directory `/tmp/valgrind.23915/valgrind/coregrind/arch' make[2]: Leaving directory `/tmp/valgrind.23915/valgrind/coregrind/arch' Making check in . make[2]: Entering directory `/tmp/valgrind.23915/valgrind/coregrind' source='vg_scheduler.c' object='vg_scheduler.o' libtool=no \ depfile='.deps/vg_scheduler.Po' tmpdepfile='.deps/vg_scheduler.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./demangle -I../include -I./x86 -DVG_LIBDIR="\"/usr/local/lib/valgrind"\" -Winline -Wall -Wshadow -O -fno-omit-frame-pointer -mpreferred-stack-boundary=2 -g -DELFSZ=32 -c `test -f 'vg_scheduler.c' || echo './'`vg_scheduler.c In file included from vg_scheduler.c:1286: /usr/include/pthread.h:163: parse error before "__thread" /usr/include/pthread.h:165: `pthread_create' declared as function returning a function /usr/include/pthread.h:166: parse error before "void" /usr/include/pthread.h:591: storage class specified for parameter `type name' make[2]: *** [vg_scheduler.o] Error 1 make[2]: Leaving directory `/tmp/valgrind.23915/valgrind/coregrind' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/tmp/valgrind.23915/valgrind/coregrind' make: *** [check-recursive] Error 1 |
|
From: Nicholas N. <nj...@ca...> - 2004-02-23 15:41:43
|
CVS commit by nethercote:
Changed bug_reports_to.
M +1 -1 ms_main.c 1.2
--- valgrind/massif/ms_main.c #1.1:1.2
@@ -1178,5 +1178,5 @@ void SK_(pre_clo_init)()
VG_(details_description) ("a space profiler");
VG_(details_copyright_author)("Copyright (C) 2003, Nicholas Nethercote");
- VG_(details_bug_reports_to) ("nj...@ca...");
+ VG_(details_bug_reports_to) (VG_BUGS_TO);
// Needs
|
|
From: Tom H. <th...@cy...> - 2004-02-23 14:59:02
|
In message <Pin...@re...>
Nicholas Nethercote <nj...@ca...> wrote:
> It looks like upcoming glibc 2.3.3 will use a different version of
> pthreadtypes.h. This caused 69616 for Gentoo users who get a cutting-edge
> version, which breaks Valgrind. Note that this bug has 165 votes; the
> next highest one has 28 votes.
>
> I wrote a patch that seems to fix the problem. Basically, we were using
> the LinuxThreads pthread structures, so when glibc changed the structures,
> things broke. I've just introduced a level of indirection -- the patch
> uses the LinuxThreads structure layouts, but gives them a different name,
> and all the original types get cast to these differently-named types
> before doing anything.
>
> But I'm not totally certain about it. For example, for some structure
> fields I've used slightly different types to the LinuxThread structures.
> And I'm not very familiar with the pthreads code in general. I'd
> appreciate someone else looking at the patch. Thanks.
I'm not hugely familiar with LinuxThreads or NPTL but the changes look
right to me, and the structures all seem to match sufficiently to work
correctly.
Tom
--
Tom Hughes (th...@cy...)
Software Engineer, Cyberscience Corporation
http://www.cyberscience.com/
|
|
From: Nicholas N. <nj...@ca...> - 2004-02-23 14:19:57
|
On Mon, 23 Feb 2004, Dirk Mueller wrote: > BTW, do we plan to try to include the freebsd port into 2.1.1 or 2.1.2 ? I would suggest 2.1.2 -- 2.1.1 already has plenty of changes, esp. FV. > and regarding i386 vs x86 vs ia32: > > http://www.ussg.iu.edu/hypermail/linux/kernel/0402.2/0795.html Woo, I like 'x86' the best too. N |
|
From: Nicholas N. <nj...@ca...> - 2004-02-23 14:08:44
|
On Sun, 22 Feb 2004, Nicholas Nethercote wrote: > > It looks like upcoming glibc 2.3.3 will use a different version of > pthreadtypes.h. This caused 69616 for Gentoo users who get a cutting-edge > version, which breaks Valgrind. Note that this bug has 165 votes; the > next highest one has 28 votes. > > I wrote a patch that seems to fix the problem. Basically, we were using > [...] > I'd appreciate someone else looking at the patch. Thanks. I didn't make it clear that the patch is in Bugzilla, see bugs.kde.org/attachment.cgi?id=4618&action=view N |
|
From: <js...@ac...> - 2004-02-23 04:15:04
|
Nightly build on phoenix ( SuSE 8.2 ) started at 2004-02-23 04:00:00 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow syscall-restart2: valgrind ./syscall-restart2 system: valgrind ./system yield: valgrind ./yield -- Finished tests in none/tests ---------------------------------------- == 125 tests, 13 stderr failures, 0 stdout failures ================= corecheck/tests/as_mmap (stderr) corecheck/tests/fdleak_cmsg (stderr) corecheck/tests/fdleak_creat (stderr) corecheck/tests/fdleak_dup (stderr) corecheck/tests/fdleak_dup2 (stderr) corecheck/tests/fdleak_fcntl (stderr) corecheck/tests/fdleak_ipv4 (stderr) corecheck/tests/fdleak_open (stderr) corecheck/tests/fdleak_pipe (stderr) corecheck/tests/fdleak_socketpair (stderr) helgrind/tests/inherit (stderr) memcheck/tests/writev (stderr) memcheck/tests/zeropage (stderr) |
|
From: <js...@ac...> - 2004-02-23 04:08:34
|
Nightly build on nemesis ( SuSE 9.0 ) started at 2004-02-23 03:50:01 GMT Checking out source tree ... done Configuring ... done Building ... done Running regression tests ... done Last 20 lines of log.verbose follow syscall-restart2: valgrind ./syscall-restart2 system: valgrind ./system yield: valgrind ./yield -- Finished tests in none/tests ---------------------------------------- == 125 tests, 13 stderr failures, 0 stdout failures ================= corecheck/tests/as_mmap (stderr) corecheck/tests/fdleak_cmsg (stderr) corecheck/tests/fdleak_creat (stderr) corecheck/tests/fdleak_dup (stderr) corecheck/tests/fdleak_dup2 (stderr) corecheck/tests/fdleak_fcntl (stderr) corecheck/tests/fdleak_ipv4 (stderr) corecheck/tests/fdleak_open (stderr) corecheck/tests/fdleak_pipe (stderr) corecheck/tests/fdleak_socketpair (stderr) helgrind/tests/inherit (stderr) memcheck/tests/writev (stderr) memcheck/tests/zeropage (stderr) |
|
From: Dirk M. <dm...@gm...> - 2004-02-23 02:33:20
|
On Sunday 22 February 2004 20:19, Dirk Mueller wrote: > Also, as you correctly mentioned, valgrind does not compile with newer > glibc releases, so it would be a good idea to solve #69616 first. BTW, do we plan to try to include the freebsd port into 2.1.1 or 2.1.2 ? I think we can go with the additional x86-common subdirectory, and I'd like to hide it in an arch subdir to avoid the cluttering of the coregrind directory. and regarding i386 vs x86 vs ia32: http://www.ussg.iu.edu/hypermail/linux/kernel/0402.2/0795.html :) |
|
From: Dirk M. <mu...@kd...> - 2004-02-23 00:01:31
|
CVS commit by mueller: KURL handling fixlets M +3 -3 buildtools/autotools/addexistingdirectoriesdlg.cpp 1.10 M +3 -3 buildtools/autotools/addexistingfilesdlg.cpp 1.11 M +1 -1 buildtools/autotools/fileselectorwidget.cpp 1.7 M +3 -3 editors/qeditor/qeditor_part.cpp 1.60 M +3 -3 editors/qeditor/qeditor_view.cpp 1.50 M +1 -1 languages/cpp/addattributedialog.cpp 1.14 M +2 -2 languages/cpp/addmethoddialog.cpp 1.22 M +3 -3 languages/cpp/cppsupportpart.cpp 1.251 M +2 -2 languages/cpp/debugger/debuggerpart.cpp 1.91 M +2 -2 languages/java/debugger/javadebuggerpart.cpp 1.28 M +1 -1 languages/pascal/pascalsupport_part.cpp 1.14 M +1 -1 languages/php/phpsupportpart.cpp 1.55 M +2 -2 lib/project/runoptionswidget.cpp 1.23 M +2 -1 parts/distpart/distpart_widget.cpp 1.20 M +1 -1 parts/fileselector/fileselector_widget.cpp 1.13 M +2 -2 parts/fileselector/kbookmarkhandler.cpp 1.4 M +1 -1 parts/grepview/grepviewwidget.cpp 1.29 M +2 -2 parts/outputviews/appoutputwidget.cpp 1.10 M +4 -4 parts/outputviews/makewidget.cpp 1.101 M +1 -1 parts/quickopen/quickopenclassdialog.cpp 1.5 M +2 -2 parts/quickopen/quickopenfiledialog.cpp 1.2 M +1 -1 parts/replace/replace_widget.cpp 1.13 M +1 -1 parts/valgrind/valgrind_widget.cpp 1.7 M +1 -1 src/core.cpp 1.90 M +1 -1 src/partcontroller.cpp 1.115 M +1 -1 src/projectmanager.cpp 1.69 M +1 -1 vcs/cvsclient/cvswidget.cpp 1.8 M +1 -1 vcs/cvsservice/diffwidget.cpp 1.3 M +1 -1 vcs/subversion/subversion_part.cpp 1.16 |