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
(15) |
|
2
(24) |
3
(16) |
4
(17) |
5
(11) |
6
(20) |
7
(11) |
8
(15) |
|
9
(10) |
10
(9) |
11
(10) |
12
(24) |
13
(16) |
14
(15) |
15
(8) |
|
16
(13) |
17
(15) |
18
(35) |
19
(11) |
20
(10) |
21
(11) |
22
(9) |
|
23
(10) |
24
(9) |
25
(9) |
26
(9) |
27
(9) |
28
(12) |
29
(16) |
|
30
(12) |
|
|
|
|
|
|
|
From: L. D. B. <db...@db...> - 2006-04-08 17:38:05
|
On Thursday 2006-04-06 19:35 +0200, Josef Weidendorfer wrote:
> On Thursday 06 April 2006 08:28, L. David Baron wrote:
> > So I'm hoping that the uses of VG_(seginfo_sym_offset) can be replaced
> > by VG_(seginfo_start). The result of the latter (which I'll call start,
> > since that's the name of the member of struct _obj_node) gives the
> > address in memory at which the library is mapped; the result of the
> > former (which I'll call offset, for the same reason) gives the
> > difference between the address at which the library is mapped and the
> > base address of the internal addresses used within the library.
>=20
> So using this definition, callgrind did the right thing: I wanted
> code addresses in memory mapped to the internal addresses used within
> the library...
>=20
> > For a=20
> > non-prelinked library, that base address is typically zero,
>=20
> Are there other cases than prelink, where this base address is !=3D 0 ?
I don't know.
> > so start =3D=3D=20
> > offset. For a prelinked library loaded at the address for which it was
> > prelinked, start is equal to the target base address and offset is zero.
>=20
> Hmmm... So subtracting the offset "0", as done in callgrind previously,
> seemed to be wrong?
>=20
> As far as I see it, objdumps --start-addr option always wants file offset=
s,
> starting at 0 (what my check from the last mail revealed).
Actually, at least for the prelinked libraries on my FC5 system, it
doesn't. On a profile generated without my patch, kcachegrind (the one
that shipped with FC5; I didn't rebuild it) issues the command
objdump -C -d --start-address=3D0xC16C3C --stop-address=3D0xC16EF7 "/usr/=
lib/libfontconfig.so.1.0.4"
which works correctly, but with my patch it issues the command
objdump -C -d --start-address=3D0x1DC3C --stop-address=3D0x1DEF7 "/usr/li=
b/libfontconfig.so.1.0.4"
The difference between these two exactly matches the prelinked base
address, which is 0x00bf9000:
$ readelf -l /usr/lib/libfontconfig.so.1.0.4 | grep "^ LOAD" | head -1
LOAD 0x000000 0x00bf9000 0x00bf9000 0x37d0c 0x37d0c R E 0x1000
(At least objdump is consistent; addr2line wants absolute addresses for
executables but library-relative addresses for shared libraries.)
So in this case what cachegrind does want what it was currently getting,
and it wants the offset for the library and not for any external
debuginfo.
I'll attach a new patch (sometime later today) that restores
seginfo_sym_offset.
-David
--=20
L. David Baron <URL: http://dbaron.org/ >
Technical Lead, Layout & CSS, Mozilla Corporation
|
|
From: <sv...@va...> - 2006-04-08 16:52:48
|
Author: sewardj Date: 2006-04-08 17:52:42 +0100 (Sat, 08 Apr 2006) New Revision: 5839 Log: Re-enable amd64 test for pmaddwd. Modified: trunk/none/tests/amd64/insn_sse2.def trunk/none/tests/amd64/insn_sse2.stdout.exp Modified: trunk/none/tests/amd64/insn_sse2.def =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/none/tests/amd64/insn_sse2.def 2006-04-08 16:22:53 UTC (rev 583= 8) +++ trunk/none/tests/amd64/insn_sse2.def 2006-04-08 16:52:42 UTC (rev 583= 9) @@ -194,8 +194,8 @@ pinsrw imm8[5] m16.uw[0xffff] xmm.uw[1234,5678,4321,8765,1111,2222,3333,= 4444] =3D> 2.uw[1234,5678,4321,8765,1111,65535,3333,4444] pinsrw imm8[6] m16.uw[0xffff] xmm.uw[1234,5678,4321,8765,1111,2222,3333,= 4444] =3D> 2.uw[1234,5678,4321,8765,1111,2222,65535,4444] pinsrw imm8[7] m16.uw[0xffff] xmm.uw[1234,5678,4321,8765,1111,2222,3333,= 4444] =3D> 2.uw[1234,5678,4321,8765,1111,2222,3333,65535] -#####pmaddwd xmm.sw[1234,5678,-4321,-8765,999,888,777,666] xmm.sw[1111,-= 2222,3333,-4444,-987,-31111,-14142,-31416] =3D> 1.sd[-11245542,24549767,-= 28612581,-31911390] -#####pmaddwd m128.sw[1234,5678,-4321,-8765,999,888,777,666] xmm.sw[1111,= -2222,3333,-4444,-987,-31111,-14142,-31416] =3D> 1.sd[-11245542,24549767,= -28612581,-31911390] +pmaddwd xmm.sw[1234,5678,-4321,-8765,999,888,777,666] xmm.sw[1111,-2222,= 3333,-4444,-987,-31111,-14142,-31416] =3D> 1.sd[-11245542,24549767,-28612= 581,-31911390] +pmaddwd m128.sw[1234,5678,-4321,-8765,999,888,777,666] xmm.sw[1111,-2222= ,3333,-4444,-987,-31111,-14142,-31416] =3D> 1.sd[-11245542,24549767,-2861= 2581,-31911390] pmaxsw xmm.sw[-1,2,-3,4,-5,6,-7,8] xmm.sw[2,-3,4,-5,6,-7,8,-9] =3D> 1.sw= [2,2,4,4,6,6,8,8] pmaxsw m128.sw[-1,2,-3,4,-5,6,-7,8] xmm.sw[2,-3,4,-5,6,-7,8,-9] =3D> 1.s= w[2,2,4,4,6,6,8,8] pmaxub xmm.ub[10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25] xmm.ub[25= ,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10] =3D> 1.ub[25,24,23,22,21,2= 0,19,18,18,19,20,21,22,23,24,25] Modified: trunk/none/tests/amd64/insn_sse2.stdout.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/none/tests/amd64/insn_sse2.stdout.exp 2006-04-08 16:22:53 UTC (= rev 5838) +++ trunk/none/tests/amd64/insn_sse2.stdout.exp 2006-04-08 16:52:42 UTC (= rev 5839) @@ -194,6 +194,8 @@ pinsrw_14 ... ok pinsrw_15 ... ok pinsrw_16 ... ok +pmaddwd_1 ... ok +pmaddwd_2 ... ok pmaxsw_1 ... ok pmaxsw_2 ... ok pmaxub_1 ... ok |
|
From: Oswald B. <os...@kd...> - 2006-04-08 16:36:09
|
On Sat, Apr 08, 2006 at 05:22:55PM +0100, sv...@va... wrote: > Why didn't Red Hat push this patch upstream? I don't know. > because it is common practice. "no time", you know ... -- Hi! I'm a .signature virus! Copy me into your ~/.signature, please! -- Chaos, panic, and disorder - my work here is done. |
|
From: <sv...@va...> - 2006-04-08 16:22:58
|
Author: sewardj
Date: 2006-04-08 17:22:53 +0100 (Sat, 08 Apr 2006)
New Revision: 5838
Log:
Fold in a patch which appeared in FC5's default valgrind build, which
causes V to ignore more DWARF3 CFA expressions on amd64 and so gets
rid of complaints from the CFA reader. Why didn't Red Hat push this
patch upstream? I don't know.
Modified:
trunk/coregrind/m_debuginfo/readdwarf.c
Modified: trunk/coregrind/m_debuginfo/readdwarf.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_debuginfo/readdwarf.c 2006-04-08 13:17:25 UTC (rev =
5837)
+++ trunk/coregrind/m_debuginfo/readdwarf.c 2006-04-08 16:22:53 UTC (rev =
5838)
@@ -1349,8 +1349,8 @@
8 is the return address (EIP) */
=20
/* Note that we don't support DWARF3 expressions (DW_CFA_expression,
- DW_CFA_def_cfa_expression). The code just reads over them and
- ignores them.=20
+ DW_CFA_def_cfa_expression, DW_CFA_val_expression). The code just=20
+ reads over them and ignores them.=20
=20
Note also, does not support the 64-bit DWARF format (only known
compiler that generates it so far is IBM's xlc/xlC/xlf suite).
@@ -1411,10 +1411,15 @@
DW_CFA_def_cfa_expression =3D 0x0f, /* DWARF3 only */
DW_CFA_expression =3D 0x10, /* DWARF3 only */
DW_CFA_offset_extended_sf =3D 0x11, /* DWARF3 only */
+ DW_CFA_def_cfa_sf =3D 0x12, /* DWARF3 only */
DW_CFA_def_cfa_offset_sf =3D 0x13, /* DWARF3 only */
+ DW_CFA_val_offset =3D 0x14, /* DWARF3 only */
+ DW_CFA_val_offset_sf =3D 0x15, /* DWARF3 only */
+ DW_CFA_val_expression =3D 0x16, /* DWARF3 only */
DW_CFA_lo_user =3D 0x1c,
DW_CFA_GNU_window_save =3D 0x2d, /* GNU extension */
DW_CFA_GNU_args_size =3D 0x2e, /* GNU extension */
+ DW_CFA_GNU_negative_offset_extended =3D 0x2f, /* GNU extension */
DW_CFA_hi_user =3D 0x3f
};
=20
@@ -1447,7 +1452,8 @@
*/
typedef
struct {
- enum { RR_Undef, RR_Same, RR_CFAoff, RR_Reg, RR_Arch, RR_Expr } ta=
g;
+ enum { RR_Undef, RR_Same, RR_CFAoff, RR_Reg, RR_Arch, RR_Expr,
+ RR_CFAValoff, RR_ValExpr } tag;
=20
/* Note, .coff and .reg are never both in use. Therefore could
merge them into one. */
@@ -1466,9 +1472,11 @@
case RR_Undef: VG_(printf)("u "); break;
case RR_Same: VG_(printf)("s "); break;
case RR_CFAoff: VG_(printf)("c%d ", reg->coff); break;
+ case RR_CFAValoff: VG_(printf)("v%d ", reg->coff); break;
case RR_Reg: VG_(printf)("r%d ", reg->reg); break;
case RR_Arch: VG_(printf)("a "); break;
case RR_Expr: VG_(printf)("e "); break;
+ case RR_ValExpr: VG_(printf)("ve "); break;
default: VG_(core_panic)("ppRegRule");
}
}
@@ -1576,6 +1584,7 @@
case RR_Undef: _how =3D CFIR_UNKNOWN; _off =3D 0; break; =
\
case RR_Same: _how =3D CFIR_SAME; _off =3D 0; break; =
\
case RR_CFAoff: _how =3D CFIR_MEMCFAREL; _off =3D _ctxreg.coff; br=
eak; \
+ case RR_CFAValoff: _how =3D CFIR_CFAREL; _off =3D _ctxreg.coff; br=
eak; \
default: { why =3D 2; goto failed; } /* otherwise give up *=
/ \
}
=20
@@ -1902,6 +1911,17 @@
ctx->cfa_offset =3D off;
break;
=20
+ case DW_CFA_def_cfa_sf:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 1 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->cfa_reg =3D reg;
+ ctx->cfa_offset =3D off;
+ break;
+
case DW_CFA_register:
reg =3D read_leb128( &instr[i], &nleb, 0);
i +=3D nleb;
@@ -1915,6 +1935,17 @@
ctx->reg[reg].reg =3D reg2;
break;
=20
+ case DW_CFA_offset_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag =3D RR_CFAoff;
+ ctx->reg[reg].coff =3D off * ctx->data_a_f;
+ break;
+
case DW_CFA_offset_extended_sf:
reg =3D read_leb128( &instr[i], &nleb, 0 );
i +=3D nleb;
@@ -1926,6 +1957,49 @@
ctx->reg[reg].coff =3D off * ctx->data_a_f;
break; =20
=20
+ case DW_CFA_GNU_negative_offset_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag =3D RR_CFAoff;
+ ctx->reg[reg].coff =3D -off * ctx->data_a_f;
+ break;
+
+ case DW_CFA_restore_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ if (restore_ctx =3D=3D NULL)
+ return 0; /* fail */
+ ctx->reg[reg] =3D restore_ctx->reg[reg];
+ break;
+
+ case DW_CFA_val_offset:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag =3D RR_CFAValoff;
+ ctx->reg[reg].coff =3D off * ctx->data_a_f;
+ break;
+
+ case DW_CFA_val_offset_sf:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 1 );
+ i +=3D nleb;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag =3D RR_CFAValoff;
+ ctx->reg[reg].coff =3D off * ctx->data_a_f;
+ break;
+
case DW_CFA_def_cfa_register:
reg =3D read_leb128( &instr[i], &nleb, 0);
i +=3D nleb;
@@ -1969,6 +2043,22 @@
ctx->reg[reg].tag =3D RR_Expr;
break;
=20
+ case DW_CFA_val_expression:
+ /* Too difficult to really handle; just skip over it and say
+ that we don't know what do to with the register. */
+ if (VG_(clo_trace_cfi))
+ VG_(printf)("DWARF2 CFI reader: "
+ "ignoring DW_CFA_val_expression\n");
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ len =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ i +=3D len;
+ if (reg < 0 || reg >=3D N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag =3D RR_ValExpr;
+ break;
+
case DW_CFA_def_cfa_expression:
if (VG_(clo_trace_cfi))
VG_(printf)("DWARF2 CFI reader: "
@@ -2025,7 +2115,7 @@
}
=20
if (hi2 =3D=3D DW_CFA_restore) {
- VG_(printf)("DW_CFA_restore(%d)\n", (Int)lo6);
+ VG_(printf)("DW_CFA_restore(r%d)\n", (Int)lo6);
return i;
}
=20
@@ -2065,6 +2155,14 @@
VG_(printf)("DW_CFA_def_cfa(r%d, off %d)\n", reg, off);=20
break;
=20
+ case DW_CFA_def_cfa_sf:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 1 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_def_cfa_sf(r%d, off %d)\n", reg, off);
+ break;
+
case DW_CFA_register:
reg =3D read_leb128( &instr[i], &nleb, 0);
i +=3D nleb;
@@ -2085,6 +2183,38 @@
VG_(printf)("DW_CFA_def_cfa_offset(%d)\n", off);=20
break;
=20
+ case DW_CFA_def_cfa_offset_sf:
+ off =3D read_leb128( &instr[i], &nleb, 1);
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_def_cfa_offset_sf(%d)\n", off);
+ break;
+
+ case DW_CFA_restore_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0);
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_restore_extended(r%d)\n", reg);
+ break;
+
+ case DW_CFA_undefined:
+ reg =3D read_leb128( &instr[i], &nleb, 0);
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_undefined(r%d)\n", reg);
+ break;
+
+ case DW_CFA_same_value:
+ reg =3D read_leb128( &instr[i], &nleb, 0);
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_same_value(r%d)\n", reg);
+ break;
+
+ case DW_CFA_remember_state:
+ VG_(printf)("DW_CFA_remember_state\n");
+ break;
+
+ case DW_CFA_restore_state:
+ VG_(printf)("DW_CFA_restore_state\n");
+ break;
+
case DW_CFA_GNU_args_size:
off =3D read_leb128( &instr[i], &nleb, 0 );
i +=3D nleb;
@@ -2107,6 +2237,55 @@
VG_(printf)("DW_CFA_expression(r%d, length %d)\n", reg, len);
break;
=20
+ case DW_CFA_val_expression:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ len =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ i +=3D len;
+ VG_(printf)("DW_CFA_val_expression(r%d, length %d)\n", reg, len=
);
+ break;
+
+ case DW_CFA_offset_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_offset_extended(r%d, off %d x data_af)\n", =
reg, off);
+ break;
+
+ case DW_CFA_offset_extended_sf:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 1 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_offset_extended_sf(r%d, off %d x data_af)\n=
", reg, off);
+ break;
+
+ case DW_CFA_GNU_negative_offset_extended:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_GNU_negative_offset_extended(r%d, off %d x =
data_af)\n", reg, -off);
+ break;
+
+ case DW_CFA_val_offset:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_val_offset(r%d, off %d x data_af)\n", reg, =
off);
+ break;
+
+ case DW_CFA_val_offset_sf:
+ reg =3D read_leb128( &instr[i], &nleb, 0 );
+ i +=3D nleb;
+ off =3D read_leb128( &instr[i], &nleb, 1 );
+ i +=3D nleb;
+ VG_(printf)("DW_CFA_val_offset_sf(r%d, off %d x data_af)\n", re=
g, off);
+ break;
+
case DW_CFA_GNU_window_save:
VG_(printf)("DW_CFA_GNU_window_save\n");
break;
@@ -2397,6 +2576,9 @@
data++;
cie_augmentation++;
break;
+ case 'S':
+ cie_augmentation++;
+ break;
default:
if (the_CIEs[this_CIE].instrs =3D=3D NULL) {
how =3D "unhandled cie.augmentation";
|
|
From: <sv...@va...> - 2006-04-08 16:16:00
|
Author: sewardj
Date: 2006-04-08 17:15:53 +0100 (Sat, 08 Apr 2006)
New Revision: 1602
Log:
Implement amd64 pmaddwd for SSE2.
Modified:
trunk/priv/guest-amd64/toIR.c
Modified: trunk/priv/guest-amd64/toIR.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/guest-amd64/toIR.c 2006-03-20 12:05:42 UTC (rev 1601)
+++ trunk/priv/guest-amd64/toIR.c 2006-04-08 16:15:53 UTC (rev 1602)
@@ -10883,6 +10883,54 @@
goto decode_success;
}
=20
+ /* 66 0F F5 =3D PMADDWD -- Multiply and add packed integers from
+ E(xmm or mem) to G(xmm) */
+ if (have66noF2noF3(pfx) && sz =3D=3D 2=20
+ && insn[0] =3D=3D 0x0F && insn[1] =3D=3D 0xF5) {
+ IRTemp s1V =3D newTemp(Ity_V128);
+ IRTemp s2V =3D newTemp(Ity_V128);
+ IRTemp dV =3D newTemp(Ity_V128);
+ IRTemp s1Hi =3D newTemp(Ity_I64);
+ IRTemp s1Lo =3D newTemp(Ity_I64);
+ IRTemp s2Hi =3D newTemp(Ity_I64);
+ IRTemp s2Lo =3D newTemp(Ity_I64);
+ IRTemp dHi =3D newTemp(Ity_I64);
+ IRTemp dLo =3D newTemp(Ity_I64);
+ modrm =3D insn[2];
+ if (epartIsReg(modrm)) {
+ assign( s1V, getXMMReg(eregOfRexRM(pfx,modrm)) );
+ delta +=3D 2+1;
+ DIP("pmaddwd %s,%s\n", nameXMMReg(eregOfRexRM(pfx,modrm)),
+ nameXMMReg(gregOfRexRM(pfx,modrm)));
+ } else {
+ addr =3D disAMode ( &alen, pfx, delta+2, dis_buf, 0 );
+ assign( s1V, loadLE(Ity_V128, mkexpr(addr)) );
+ delta +=3D 2+alen;
+ DIP("pmaddwd %s,%s\n", dis_buf,
+ nameXMMReg(gregOfRexRM(pfx,modrm)));
+ }
+ assign( s2V, getXMMReg(gregOfRexRM(pfx,modrm)) );
+ assign( s1Hi, unop(Iop_V128HIto64, mkexpr(s1V)) );
+ assign( s1Lo, unop(Iop_V128to64, mkexpr(s1V)) );
+ assign( s2Hi, unop(Iop_V128HIto64, mkexpr(s2V)) );
+ assign( s2Lo, unop(Iop_V128to64, mkexpr(s2V)) );
+ assign( dHi, mkIRExprCCall(
+ Ity_I64, 0/*regparms*/,
+ "amd64g_calculate_mmx_pmaddwd",=20
+ &amd64g_calculate_mmx_pmaddwd,
+ mkIRExprVec_2( mkexpr(s1Hi), mkexpr(s2Hi))
+ ));
+ assign( dLo, mkIRExprCCall(
+ Ity_I64, 0/*regparms*/,
+ "amd64g_calculate_mmx_pmaddwd",=20
+ &amd64g_calculate_mmx_pmaddwd,
+ mkIRExprVec_2( mkexpr(s1Lo), mkexpr(s2Lo))
+ ));
+ assign( dV, binop(Iop_64HLtoV128, mkexpr(dHi), mkexpr(dLo))) ;
+ putXMMReg(gregOfRexRM(pfx,modrm), mkexpr(dV));
+ goto decode_success;
+ }
+
/* 66 0F EE =3D PMAXSW -- 16x8 signed max */
if (have66noF2noF3(pfx) && sz =3D=3D 2=20
&& insn[0] =3D=3D 0x0F && insn[1] =3D=3D 0xEE) {
|
|
From: <sv...@va...> - 2006-04-08 13:17:33
|
Author: sewardj
Date: 2006-04-08 14:17:25 +0100 (Sat, 08 Apr 2006)
New Revision: 5837
Log:
Include missing files in tarball (=3D=3D unbreak from-tarball builds)
Modified:
trunk/callgrind/Makefile.am
trunk/callgrind/tests/Makefile.am
Modified: trunk/callgrind/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/Makefile.am 2006-04-08 13:16:36 UTC (rev 5836)
+++ trunk/callgrind/Makefile.am 2006-04-08 13:17:25 UTC (rev 5837)
@@ -56,4 +56,9 @@
callgrind_ppc64_linux_CFLAGS =3D $(CALLGRIND_CFLAGS_COMMON) $(AM_C=
FLAGS_PPC64_LINUX)
callgrind_ppc64_linux_DEPENDENCIES =3D $(COREGRIND_LIBS_PPC64_LINUX)
callgrind_ppc64_linux_LDADD =3D $(TOOL_LDADD_PPC64_LINUX)
-callgrind_ppc64_linux_LDFLAGS =3D $(TOOL_LDFLAGS_PPC64_LINUX)
\ No newline at end of file
+callgrind_ppc64_linux_LDFLAGS =3D $(TOOL_LDFLAGS_PPC64_LINUX)
+
+clincludedir =3D $(includedir)/callgrind
+
+clinclude_HEADERS =3D \
+ callgrind.h
Modified: trunk/callgrind/tests/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/callgrind/tests/Makefile.am 2006-04-08 13:16:36 UTC (rev 5836)
+++ trunk/callgrind/tests/Makefile.am 2006-04-08 13:17:25 UTC (rev 5837)
@@ -6,7 +6,8 @@
=20
noinst_SCRIPTS =3D filter_stderr
=20
-EXTRA_DIST =3D clreq.vgtest clreq.stderr.exp \
+EXTRA_DIST =3D $(noinst_SCRIPTS) \
+ clreq.vgtest clreq.stderr.exp \
simwork1.vgtest simwork1.stdout.exp simwork1.stderr.exp \
simwork2.vgtest simwork2.stdout.exp simwork2.stderr.exp \
simwork3.vgtest simwork3.stdout.exp simwork3.stderr.exp \
|
|
From: <sv...@va...> - 2006-04-08 13:16:50
|
Author: sewardj Date: 2006-04-08 14:16:36 +0100 (Sat, 08 Apr 2006) New Revision: 5836 Log: Update Modified: trunk/NEWS Modified: trunk/NEWS =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/NEWS 2006-04-07 12:47:05 UTC (rev 5835) +++ trunk/NEWS 2006-04-08 13:16:36 UTC (rev 5836) @@ -30,6 +30,16 @@ =20 Other user-visible changes: =20 +- Callgrind has been folded in. [XXX: more details] + +- Valgrind now has the ability to intercept and wrap arbitrary functions= . + +- MPI support: partial support for debugging distributed applications + using the MPI library specification has been added. Valgrind is=20 + aware of the memory state changes caused by a subset of the MPI + functions, and will carefully check data passed to the (P)MPI_ + interface. + - There are some changes to Memcheck's client requests. Some of them ha= ve changed names: =20 |
|
From: <js...@ac...> - 2006-04-08 11:48:06
|
Nightly build on minnie ( SuSE 10.0, ppc32 ) started at 2006-04-08 02:00:01 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 203 tests, 11 stderr failures, 5 stdout failures, 0 posttest failures == memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/leakotron (stdout) memcheck/tests/mempool (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/sigaltstack (stderr) memcheck/tests/stack_changes (stdout) memcheck/tests/stack_changes (stderr) memcheck/tests/xml1 (stderr) none/tests/faultstatus (stderr) none/tests/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-fp (stderr) none/tests/ppc32/test_fx (stdout) none/tests/ppc32/test_fx (stderr) none/tests/ppc32/test_gx (stdout) |
|
From: <js...@ac...> - 2006-04-08 03:13:17
|
Nightly build on phoenix ( SuSE 10.0 ) started at 2006-04-08 03:30:01 BST Checking out vex source tree ... done Building vex ... done Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 234 tests, 6 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/leak-tree (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/tls (stdout) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out vex source tree ... done Building vex ... done Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 234 tests, 6 stderr failures, 0 stdout failures, 0 posttest failures == memcheck/tests/leak-tree (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Sat Apr 8 03:51:02 2006 --- new.short Sat Apr 8 04:13:04 2006 *************** *** 10,12 **** ! == 234 tests, 6 stderr failures, 0 stdout failures, 0 posttest failures == memcheck/tests/leak-tree (stderr) --- 10,12 ---- ! == 234 tests, 6 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/leak-tree (stderr) *************** *** 15,16 **** --- 15,17 ---- memcheck/tests/x86/scalar_supp (stderr) + none/tests/tls (stdout) none/tests/x86/faultstatus (stderr) |
|
From: <js...@ac...> - 2006-04-08 02:55:50
|
Nightly build on g5 ( YDL 4.0, ppc970 ) started at 2006-04-08 04:40:00 CEST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 208 tests, 6 stderr failures, 3 stdout failures, 0 posttest failures == memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/leakotron (stdout) memcheck/tests/pointer-trace (stderr) none/tests/faultstatus (stderr) none/tests/fdleak_fcntl (stderr) none/tests/mremap (stderr) none/tests/ppc32/mftocrf (stdout) |
|
From: Tom H. <to...@co...> - 2006-04-08 02:46:11
|
Nightly build on dunsmere ( athlon, Fedora Core 4 ) started at 2006-04-08 03:30:07 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 236 tests, 22 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/badjump (stderr) memcheck/tests/badjump2 (stderr) memcheck/tests/buflen_check (stderr) memcheck/tests/execve (stderr) memcheck/tests/execve2 (stderr) memcheck/tests/fwrite (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/supp_unknown (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_exit_group (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) memcheck/tests/xml1 (stderr) none/tests/fdleak_creat (stderr) none/tests/fdleak_dup (stderr) none/tests/fdleak_dup2 (stderr) none/tests/fdleak_fcntl (stderr) none/tests/fdleak_open (stderr) none/tests/fdleak_pipe (stderr) none/tests/fdleak_socketpair (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) |
|
From: Tom H. <th...@cy...> - 2006-04-08 02:32:57
|
Nightly build on alvis ( i686, Red Hat 7.3 ) started at 2006-04-08 03:15:02 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 235 tests, 22 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/addressable (stderr) memcheck/tests/badjump (stderr) memcheck/tests/describe-block (stderr) memcheck/tests/erringfds (stderr) memcheck/tests/leak-0 (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-regroot (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/match-overrun (stderr) memcheck/tests/mempool (stderr) memcheck/tests/partial_load_dflt (stderr) memcheck/tests/partial_load_ok (stderr) memcheck/tests/partiallydefinedeq (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/sh-mem-random (stdout) memcheck/tests/sh-mem-random (stderr) memcheck/tests/sigkill (stderr) memcheck/tests/stack_changes (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) memcheck/tests/xml1 (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) |
|
From: Tom H. <th...@cy...> - 2006-04-08 02:30:22
|
Nightly build on gill ( x86_64, Fedora Core 2 ) started at 2006-04-08 03:00:03 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 258 tests, 7 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) none/tests/amd64/faultstatus (stderr) none/tests/fdleak_fcntl (stderr) none/tests/tls (stdout) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) |
|
From: Tom H. <th...@cy...> - 2006-04-08 02:25:18
|
Nightly build on dellow ( x86_64, Fedora Core 4 ) started at 2006-04-08 03:10:05 BST 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 == 258 tests, 5 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) none/tests/amd64/faultstatus (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (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 == 258 tests, 6 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/leakotron (stdout) memcheck/tests/pointer-trace (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) none/tests/amd64/faultstatus (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Sat Apr 8 03:18:25 2006 --- new.short Sat Apr 8 03:25:12 2006 *************** *** 8,12 **** ! == 258 tests, 6 stderr failures, 2 stdout failures, 0 posttest failures == ! memcheck/tests/leakotron (stdout) ! memcheck/tests/pointer-trace (stderr) memcheck/tests/x86/scalar (stderr) --- 8,10 ---- ! == 258 tests, 5 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/x86/scalar (stderr) |
|
From: Tom H. <th...@cy...> - 2006-04-08 02:24:31
|
Nightly build on aston ( x86_64, Fedora Core 3 ) started at 2006-04-08 03:05:10 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 258 tests, 6 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/sse1_memory (stdout) none/tests/amd64/faultstatus (stderr) none/tests/x86/faultstatus (stderr) none/tests/x86/int (stderr) |