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
(21) |
2
(18) |
3
(19) |
4
(16) |
5
(20) |
6
(22) |
7
(17) |
|
8
(13) |
9
(1) |
10
(3) |
11
(28) |
12
(13) |
13
(12) |
14
(25) |
|
15
(15) |
16
(29) |
17
(19) |
18
(15) |
19
(27) |
20
(29) |
21
(21) |
|
22
(16) |
23
(24) |
24
(18) |
25
(26) |
26
(27) |
27
(21) |
28
(30) |
|
29
(23) |
30
(3) |
31
(19) |
|
|
|
|
|
From: <sv...@va...> - 2012-07-14 19:47:39
|
sewardj 2012-07-14 20:47:32 +0100 (Sat, 14 Jul 2012)
New Revision: 12748
Log:
Add expected outputs for VCMPNGESS. Should have been included in r12745.
Modified files:
trunk/none/tests/amd64/avx-1.stdout.exp
Modified: trunk/none/tests/amd64/avx-1.stdout.exp (+81 -0)
===================================================================
--- trunk/none/tests/amd64/avx-1.stdout.exp 2012-07-14 15:58:19 +01:00 (rev 12747)
+++ trunk/none/tests/amd64/avx-1.stdout.exp 2012-07-14 20:47:32 +01:00 (rev 12748)
@@ -42712,3 +42712,84 @@
cf9eae970e7a87e5.23819cd370fdbeb3.ba0b772d8e402060.84bad1595f8430ee
28fcc669eb2cc83c
+VCMPSS_128_0x9(reg)
+ before
+ b1d750c08c0f920f.ca9037165e7d22b3.eec55db97311674e.bb086ea0ccfe5b04
+ 79966ccadcb9c915.dd03435da8140d77.8b8970dc98e62005.27e0692636094647
+ de8715f37ab6aaf7.e6c44d59084c015f.5618d3a87c082484.da61e4aae86f9e58
+ 3af447a800937064.c09fd1f49930bd95.abbd8189ba04b076.af555c18fd3b1f61
+ 848a4b5b917a848f
+ after
+ 0000000000000000.0000000000000000.8b8970dc98e62005.27e0692600000000
+ 79966ccadcb9c915.dd03435da8140d77.8b8970dc98e62005.27e0692636094647
+ de8715f37ab6aaf7.e6c44d59084c015f.5618d3a87c082484.da61e4aae86f9e58
+ 3af447a800937064.c09fd1f49930bd95.abbd8189ba04b076.af555c18fd3b1f61
+ 848a4b5b917a848f
+VCMPSS_128_0x9(mem)
+ before
+ 34ca2f61c1378a0d.eb2afe530adc5806.47604b1b78ccfb45.e6c576ecef650087
+ 9be28316a87fed08.4b753662351b9e8a.57d237bbc02d789c.637cae3bb6b85065
+ 949ec464635c68ac.b721ec3f1cde7e9b.cbc312bf8d5ef0c6.7e2e26e4ab88dbba
+ fdc96c380ddcb924.8b791b585cb134e6.81fd5712fc6b1eee.9327d8516b61de32
+ fdb2c2f092cf957a
+ after
+ 34ca2f61c1378a0d.eb2afe530adc5806.47604b1b78ccfb45.e6c576ecef650087
+ 9be28316a87fed08.4b753662351b9e8a.57d237bbc02d789c.637cae3bb6b85065
+ 0000000000000000.0000000000000000.57d237bbc02d789c.637cae3b00000000
+ fdc96c380ddcb924.8b791b585cb134e6.81fd5712fc6b1eee.9327d8516b61de32
+ fdb2c2f092cf957a
+
+VCMPSS_128_0x9(reg)
+ before
+ 1a1ce02cbb5f3c3e.b031f97ec30b9a9d.24cbbf17901efb16.544d82a22961bf41
+ 45b22c71829c0e2a.8ba0e623a0f3c742.dc61d4ea55b310d8.1f7f105a2f4b8feb
+ d9bea42b841348e8.69e4af11c1a3fe40.1088573c46fcaed8.c05f7b262a354a17
+ 348d43c65c4f2627.25c7d1364124f9c2.1c8c4379008313c1.11b841f2372cabf2
+ f058ddaa713b6fa7
+ after
+ 0000000000000000.0000000000000000.dc61d4ea55b310d8.1f7f105a00000000
+ 45b22c71829c0e2a.8ba0e623a0f3c742.dc61d4ea55b310d8.1f7f105a2f4b8feb
+ d9bea42b841348e8.69e4af11c1a3fe40.1088573c46fcaed8.c05f7b262a354a17
+ 348d43c65c4f2627.25c7d1364124f9c2.1c8c4379008313c1.11b841f2372cabf2
+ f058ddaa713b6fa7
+VCMPSS_128_0x9(mem)
+ before
+ 3709cc3bf56f5263.b16a05aea7dce391.9d16c67d3c8475f5.5cb9940d1ed77940
+ c498888fdfd30f51.aba3e64f0047bcd3.ab9c0cd2d0ce2d05.2c5a46643c811d00
+ 71d18f944973639e.8082e315041bed98.2c271e21160edf1d.e9bd55ebf70f3aae
+ 1b805c34525b0a76.8a55f66d4ee4b28d.fd8179562c51456a.ed2cbe0ceb0c0df6
+ 95f57c35b304d283
+ after
+ 3709cc3bf56f5263.b16a05aea7dce391.9d16c67d3c8475f5.5cb9940d1ed77940
+ c498888fdfd30f51.aba3e64f0047bcd3.ab9c0cd2d0ce2d05.2c5a46643c811d00
+ 0000000000000000.0000000000000000.ab9c0cd2d0ce2d05.2c5a466400000000
+ 1b805c34525b0a76.8a55f66d4ee4b28d.fd8179562c51456a.ed2cbe0ceb0c0df6
+ 95f57c35b304d283
+
+VCMPSS_128_0x9(reg)
+ before
+ 3d628bd0eb84c502.9f716b5d1398c004.27661dc17b2e465d.f878975d2da21b18
+ 40bfe74b3017211e.d77038faaa354075.b102547f2686e6b6.fbd6f622360e1f52
+ fc5a8d111d4a2384.a04840f7333f47f5.86749512ec78ce41.e068119163a00b44
+ cc7e778d4fa707e0.d7c6fe3fc9c091af.000adee5688e39ac.84fa6497cf649c1c
+ c3576c1e96668e03
+ after
+ 0000000000000000.0000000000000000.b102547f2686e6b6.fbd6f622ffffffff
+ 40bfe74b3017211e.d77038faaa354075.b102547f2686e6b6.fbd6f622360e1f52
+ fc5a8d111d4a2384.a04840f7333f47f5.86749512ec78ce41.e068119163a00b44
+ cc7e778d4fa707e0.d7c6fe3fc9c091af.000adee5688e39ac.84fa6497cf649c1c
+ c3576c1e96668e03
+VCMPSS_128_0x9(mem)
+ before
+ 7a4da314d5b39c28.0c76a32d62bd09dd.56b6eec189c7d9cf.7c0f2966375664a3
+ 83a68764a75683b5.188f0c5cf0156428.fae48c668e5ddd82.57ce7400f45c8bd2
+ bb2f93f9295cffd6.4c16af87983d556c.9f1c541bf49056f4.eb94bb1f3b2aeae4
+ feb443c176d0cbb9.03548618f3c01756.212ac3ccd86b0351.95adf830a94ebc85
+ b165299dda543e63
+ after
+ 7a4da314d5b39c28.0c76a32d62bd09dd.56b6eec189c7d9cf.7c0f2966375664a3
+ 83a68764a75683b5.188f0c5cf0156428.fae48c668e5ddd82.57ce7400f45c8bd2
+ 0000000000000000.0000000000000000.fae48c668e5ddd82.57ce7400ffffffff
+ feb443c176d0cbb9.03548618f3c01756.212ac3ccd86b0351.95adf830a94ebc85
+ b165299dda543e63
+
|
|
From: <sv...@va...> - 2012-07-14 14:58:25
|
florian 2012-07-14 15:58:19 +0100 (Sat, 14 Jul 2012)
New Revision: 12747
Log:
Update list of ignored files.
Modified directories:
trunk/none/tests/mips32/
Modified: trunk/none/tests/mips32/
Property changed: trunk/none/tests/mips32 (+0 -0)
___________________________________________________________________
Name: svn:ignore
- Makefile
Makefile.in
+ Makefile
Makefile.in
.deps
|
|
From: <sv...@va...> - 2012-07-14 14:51:08
|
florian 2012-07-14 15:51:01 +0100 (Sat, 14 Jul 2012)
New Revision: 12746
Log:
Update list of ignore files.
Modified directories:
trunk/helgrind/tests/
Modified: trunk/helgrind/tests/
Property changed: trunk/helgrind/tests (+0 -0)
___________________________________________________________________
Name: svn:ignore
- *.dSYM
*.stderr.diff*
*.stderr.out
*.stdout.diff*
*.stdout.out
.deps
annotate_hbefore
annotate_rwlock
bar_bad
bar_trivial
cond_timedwait_invalid
free_is_write
hg01_all_ok
hg02_deadlock
hg03_inherit
hg04_race
hg05_race2
hg06_readshared
locked_vs_unlocked1
locked_vs_unlocked2
locked_vs_unlocked3
Makefile
Makefile.in
pth_barrier
rwlock_race
rwlock_test
tc01_simple_race
tc02_simple_tls
tc03_re_excl
tc04_free_lock
tc05_simple_race
tc06_two_races
tc07_hbl1
tc08_hbl2
tc09_bad_unlock
tc10_rec_lock
tc11_XCHG
tc12_rwl_trivial
tc13_laog1
tc14_laog_dinphils
tc15_laog_lockdel
tc16_byterace
tc17_sembar
tc18_semabuse
tc19_shadowmem
tc20_verifywrap
tc21_pthonce
tc22_exit_w_lock
tc23_bogus_condwait
tc24_nonzero_sem
t2t
+ *.dSYM
*.stderr.diff*
*.stderr.out
*.stdout.diff*
*.stdout.out
.deps
annotate_hbefore
annotate_rwlock
bar_bad
bar_trivial
cond_timedwait_invalid
free_is_write
hg01_all_ok
hg02_deadlock
hg03_inherit
hg04_race
hg05_race2
hg06_readshared
locked_vs_unlocked1
locked_vs_unlocked2
locked_vs_unlocked3
Makefile
Makefile.in
pth_barrier
pth_destroy_cond
rwlock_race
rwlock_test
tc01_simple_race
tc02_simple_tls
tc03_re_excl
tc04_free_lock
tc05_simple_race
tc06_two_races
tc07_hbl1
tc08_hbl2
tc09_bad_unlock
tc10_rec_lock
tc11_XCHG
tc12_rwl_trivial
tc13_laog1
tc14_laog_dinphils
tc15_laog_lockdel
tc16_byterace
tc17_sembar
tc18_semabuse
tc19_shadowmem
tc20_verifywrap
tc21_pthonce
tc22_exit_w_lock
tc23_bogus_condwait
tc24_nonzero_sem
t2t
|
|
From: <sv...@va...> - 2012-07-14 14:31:50
|
sewardj 2012-07-14 15:31:44 +0100 (Sat, 14 Jul 2012)
New Revision: 12745
Log:
Add test case for VCMPNGESS.
Modified files:
trunk/none/tests/amd64/avx-1.c
Modified: trunk/none/tests/amd64/avx-1.c (+5 -0)
===================================================================
--- trunk/none/tests/amd64/avx-1.c 2012-07-14 11:08:40 +01:00 (rev 12744)
+++ trunk/none/tests/amd64/avx-1.c 2012-07-14 15:31:44 +01:00 (rev 12745)
@@ -2125,6 +2125,10 @@
"vpclmulqdq $0xFF, %%xmm6, %%xmm8, %%xmm7",
"vpclmulqdq $0xFF, (%%rax), %%xmm8, %%xmm7")
+GEN_test_RandM(VCMPSS_128_0x9,
+ "vcmpss $0x9, %%xmm6, %%xmm8, %%xmm7",
+ "vcmpss $0x9, (%%rax), %%xmm8, %%xmm7")
+
/* Comment duplicated above, for convenient reference:
Allowed operands in test insns:
Reg form: %ymm6, %ymm7, %ymm8, %ymm9 and %r14.
@@ -2664,6 +2668,7 @@
DO_D( VPCLMULQDQ_0x10 );
DO_D( VPCLMULQDQ_0x11 );
DO_D( VPCLMULQDQ_0xFF );
+ DO_D( VCMPSS_128_0x9 );
return 0;
}
|
|
From: <sv...@va...> - 2012-07-14 14:31:23
|
sewardj 2012-07-14 15:31:17 +0100 (Sat, 14 Jul 2012)
New Revision: 2433
Log:
Handle UD2 a bit better. This change causes Vex to decode UD2 like
any other instruction -- so it doesn't complain -- but Valgrind still
complains when synthesising the SIGILL for the guest. Marginally less
confusing than it was before.
Modified files:
trunk/priv/guest_amd64_toIR.c
Modified: trunk/priv/guest_amd64_toIR.c (+7 -0)
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2012-07-14 15:21:56 +01:00 (rev 2432)
+++ trunk/priv/guest_amd64_toIR.c 2012-07-14 15:31:17 +01:00 (rev 2433)
@@ -19653,6 +19653,13 @@
DIP("syscall\n");
return delta;
+ case 0x0B: /* UD2 */
+ stmt( IRStmt_Put( OFFB_RIP, mkU64(guest_RIP_curr_instr) ) );
+ jmp_lit(dres, Ijk_NoDecode, guest_RIP_curr_instr);
+ vassert(dres->whatNext == Dis_StopHere);
+ DIP("ud2\n");
+ return delta;
+
case 0x1F:
if (haveF2orF3(pfx)) goto decode_failure;
modrm = getUChar(delta);
|
|
From: <sv...@va...> - 2012-07-14 14:22:03
|
sewardj 2012-07-14 15:21:56 +0100 (Sat, 14 Jul 2012)
New Revision: 2432
Log:
Get rid of gcc warnings about uninitialised variables in the arm front end.
Modified files:
trunk/priv/guest_arm_toIR.c
Modified: trunk/priv/guest_arm_toIR.c (+14 -5)
===================================================================
--- trunk/priv/guest_arm_toIR.c 2012-07-14 15:20:00 +01:00 (rev 2431)
+++ trunk/priv/guest_arm_toIR.c 2012-07-14 15:21:56 +01:00 (rev 2432)
@@ -14417,7 +14417,8 @@
# define INSN0(_bMax,_bMin) SLICE_UInt(((UInt)insn0), (_bMax), (_bMin))
DisResult dres;
- UShort insn0; /* first 16 bits of the insn */
+ UShort insn0; /* first 16 bits of the insn */
+ UShort insn1; /* second 16 bits of the insn */
//Bool allow_VFP = False;
//UInt hwcaps = archinfo->hwcaps;
HChar dis_buf[128]; // big enough to hold LDMIA etc text
@@ -14448,7 +14449,11 @@
unlikely, but ..) if the second 16 bits aren't actually
necessary. */
insn0 = getUShortLittleEndianly( guest_instr );
+ insn1 = 0; /* We'll get it later, once we know we need it. */
+ /* Similarly, will set this later. */
+ IRTemp old_itstate = IRTemp_INVALID;
+
if (0) vex_printf("insn: 0x%x\n", insn0);
DIP("\t(thumb) 0x%x: ", (UInt)guest_R15_curr_instr_notENC);
@@ -14627,10 +14632,11 @@
that through the full preamble (which completely disappears). */
IRTemp condT = IRTemp_INVALID;
- IRTemp old_itstate = IRTemp_INVALID;
- IRTemp new_itstate = IRTemp_INVALID;
IRTemp cond_AND_notInIT_T = IRTemp_INVALID;
+ IRTemp new_itstate = IRTemp_INVALID;
+ vassert(old_itstate == IRTemp_INVALID);
+
if (guaranteedUnconditional) {
/* BEGIN "partial eval { ITSTATE = 0; STANDARD_PREAMBLE; }" */
@@ -16118,7 +16124,8 @@
# define INSN1(_bMax,_bMin) SLICE_UInt(((UInt)insn1), (_bMax), (_bMin))
/* second 16 bits of the instruction, if any */
- UShort insn1 = getUShortLittleEndianly( guest_instr+2 );
+ vassert(insn1 == 0);
+ insn1 = getUShortLittleEndianly( guest_instr+2 );
anOp = Iop_INVALID; /* paranoia */
anOpNm = NULL; /* paranoia */
@@ -18401,7 +18408,9 @@
/* Back up ITSTATE to the initial value for this instruction.
If we don't do that, any subsequent restart of the instruction
will restart with the wrong value. */
- put_ITSTATE(old_itstate);
+ if (old_itstate != IRTemp_INVALID)
+ put_ITSTATE(old_itstate);
+
/* Tell the dispatcher that this insn cannot be decoded, and so has
not been executed, and (is currently) the next to be executed.
R15 should be up-to-date since it made so at the start of each
|
|
From: <sv...@va...> - 2012-07-14 14:20:08
|
sewardj 2012-07-14 15:20:00 +0100 (Sat, 14 Jul 2012)
New Revision: 2431
Log:
Implement VCMPNGESS (and other laneages: SD, PD, PS). Fixes #302578.
Modified files:
trunk/priv/guest_amd64_toIR.c
Modified: trunk/priv/guest_amd64_toIR.c (+9 -2)
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2012-07-14 10:18:02 +01:00 (rev 2430)
+++ trunk/priv/guest_amd64_toIR.c 2012-07-14 15:20:00 +01:00 (rev 2431)
@@ -8597,7 +8597,14 @@
// If you add a case here, add a corresponding test for both VCMPSD_128
// and VCMPSS_128 in avx-1.c.
switch (imm8) {
- // "O" = ordered, "Q" = non-signalling (quiet), "S" = signalling
+ // "O" = ordered, "U" = unordered
+ // "Q" = non-signalling (quiet), "S" = signalling
+ //
+ // swap operands?
+ // |
+ // | cmp op invert after?
+ // | | |
+ // v v v
case 0x0: XXX(False, Iop_CmpEQ32Fx4, False); break; // EQ_OQ
case 0x1: XXX(False, Iop_CmpLT32Fx4, False); break; // LT_OS
case 0x2: XXX(False, Iop_CmpLE32Fx4, False); break; // LE_OS
@@ -8607,7 +8614,7 @@
case 0x6: XXX(False, Iop_CmpLE32Fx4, True); break; // NLE_US
case 0x7: XXX(False, Iop_CmpUN32Fx4, True); break; // ORD_Q
// 0x8 EQ_UQ
- // 0x9 NGE_US
+ case 0x9: XXX(True, Iop_CmpLE32Fx4, True); break; // NGE_US
/* "Enhanced Comparison Predicate[s] for VEX-Encoded [insns] */
case 0xA: XXX(True, Iop_CmpLT32Fx4, True); break; // NGT_US
// 0xB FALSE_OQ
|
|
From: Julian S. <js...@ac...> - 2012-07-14 10:36:35
|
We are trying to wrap up bugs in preparation for a Valgrind 3.8.0 release. It appears that there are various problems on MacOSX that need to be looked at, and hopefully fixed. I have a MacOSX 10.7.4 box with XCode 4.1, so I can make sure it works reasonably well on that. However, there are a bunch of bug reports pertaining to the following combinations: * 10.7.3 with XCode 4.3 * 10.8 with XCode I-don't-know-what-version Would anybody be prepared to offer ssh access to boxes running either of these combinations, so I can at least make an initial assessment of the problems? J |
|
From: <sv...@va...> - 2012-07-14 10:08:46
|
sewardj 2012-07-14 11:08:40 +0100 (Sat, 14 Jul 2012)
New Revision: 12744
Log:
Update with recent fixes.
Modified files:
trunk/NEWS
trunk/docs/internals/3_7_BUGSTATUS.txt
Modified: trunk/docs/internals/3_7_BUGSTATUS.txt (+2 -25)
===================================================================
--- trunk/docs/internals/3_7_BUGSTATUS.txt 2012-07-14 11:07:06 +01:00 (rev 12743)
+++ trunk/docs/internals/3_7_BUGSTATUS.txt 2012-07-14 11:08:40 +01:00 (rev 12744)
@@ -255,10 +255,6 @@
302287 Unhandled movbe instruction on Atom processors
**possible 3.8.0 (should fix this, really)
-302370 The nmadd, fnmsub, fnmadds, fnmsubs instructions always negate
- the result even when the result is QNAN or SNAN.
- **possible 3.8.0 (needs land + test)
-
302578 Unrecognized isntruction 0xc5 0x32 0xc2 0xca 0x09 vcmpngess
**possible 3.8.0 (easy to fix)
@@ -266,26 +262,7 @@
'sizeof(UWord) == sizeof(UInt)' failed in m_syscall.c
configuration error, very weird
-302700 Assertion 'srcix >= 0 && srcix < VG_(sizeXA)(srcxa)' failed.
- is in 3.6.0
+303460 Killed by fatal signal at doRegisterAllocation
+ queried OP (gentoo weirdness)
-302901 Valgrind crashes with dwz optimized debuginfo
- **possible 3.8.0, has patch, should take
-
--- Thurs 5 July 2012, mid afternoon.
-
-303116] New: Add support for the POWER instruction popcntb
-
-303127] New: Power test suite fixes for frsqrte, vrefp, and vrsqrtefp
-instructions.
-
-303250] New: "Assertion `instrs_in->arr_used <= 10000' failed" on
-OpenSSL with --track-origins=yes
-
-303460] New: Killed by fatal signal at doRegisterAllocation
-
-303466] New: vex amd64->IR: unhandled instruction bytes: 0xC5 0x7A
-0x10 0x35 0x61 0x2D 0x20 0x0
-== generic avx
-
-- Friday 13 July 2012 16:02 CEST
Modified: trunk/NEWS (+7 -0)
===================================================================
--- trunk/NEWS 2012-07-14 11:07:06 +01:00 (rev 12743)
+++ trunk/NEWS 2012-07-14 11:08:40 +01:00 (rev 12744)
@@ -99,6 +99,7 @@
292841 vex amd64->IR: unhandled instruction bytes: 0xC5 0xFB 0x10 0x5 0xD0 0x7B
298227 vex amd64->IR: 0xC5 0xF8 0x57 0xC0 0x48 0xC7 0x43 0x58)
298335 vex amd64->IR: 0xC5 0xF9 0x57 0xC0 0x48 0x8B 0x35 0x3"
+303466 vex amd64->IR: 0xC5 0x7A 0x10 0x35 0x61 0x2D 0x20 0x0
== 273475 (canonical avx)
285662 Memcheck needs to replace memcpy/memmove (and most certainly others)
@@ -232,15 +233,21 @@
301229 dup of 203877, see above.
301984 configure script doesn't detect certain versions of clang
302205 Fix compiler warnings for POWER VEX code and POWER test cases
+302370 The nmadd, fnmsub, fnmadds, fnmsubs instructions always negate
+ the result even when the result is QNAN or SNAN.
302536 Fix for the POWER Valgrind regression test: memcheck-ISA2.0.
302656 Unhandled instruction (vcvtsi2ssq)
== 273475 (canonical avx)
302709 valgrind for ARM needs extra tls support for android emulator under Linux
302827 add wrapper for CDROM_GET_CAPABILITY
+302901 Valgrind crashes with dwz optimized debuginfo
302918 Enable testing of the vmaddfp and vnsubfp instructions in the testsuite
303116 Add support for the POWER instruction popcntb
303127 Power test suite fixes for frsqrte, vrefp, and vrsqrtefp instructions.
+303250 "Assertion `instrs_in->arr_used <= 10000' failed" on
+ OpenSSL with --track-origins=yes
+
Release 3.7.0 (5 November 2011)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3.7.0 is a feature release with many significant improvements and the
|
|
From: <sv...@va...> - 2012-07-14 10:07:14
|
sewardj 2012-07-14 11:07:06 +0100 (Sat, 14 Jul 2012)
New Revision: 12743
Log:
Accept glibc-2.16 as valid (UNTESTED).
Modified files:
trunk/configure.in
Modified: trunk/configure.in (+8 -1)
===================================================================
--- trunk/configure.in 2012-07-14 10:59:01 +01:00 (rev 12742)
+++ trunk/configure.in 2012-07-14 11:07:06 +01:00 (rev 12743)
@@ -893,6 +893,13 @@
DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
+ 2.16)
+ AC_MSG_RESULT(2.16 family)
+ AC_DEFINE([GLIBC_2_16], 1, [Define to 1 if you're using glibc 2.16.x])
+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ ;;
darwin)
AC_MSG_RESULT(Darwin)
AC_DEFINE([DARWIN_LIBC], 1, [Define to 1 if you're using Darwin])
@@ -906,7 +913,7 @@
*)
AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}])
- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.15])
+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.16])
AC_MSG_ERROR([or Darwin libc])
;;
esac
|
|
From: <sv...@va...> - 2012-07-14 09:59:10
|
sewardj 2012-07-14 10:59:01 +0100 (Sat, 14 Jul 2012)
New Revision: 12742
Log:
Initial support for DWZ compressed debuginfo -- don't crash, at least,
when reading it. Bug 302901 comment 3. (Jakub Jelinek, ja...@re...)
Modified files:
trunk/coregrind/m_debuginfo/d3basics.c
trunk/coregrind/m_debuginfo/debuginfo.c
trunk/coregrind/m_debuginfo/priv_d3basics.h
trunk/coregrind/m_debuginfo/priv_readdwarf.h
trunk/coregrind/m_debuginfo/priv_readdwarf3.h
trunk/coregrind/m_debuginfo/priv_readelf.h
trunk/coregrind/m_debuginfo/readdwarf.c
trunk/coregrind/m_debuginfo/readdwarf3.c
trunk/coregrind/m_debuginfo/readelf.c
Modified: trunk/coregrind/m_debuginfo/priv_readdwarf3.h (+5 -1)
===================================================================
--- trunk/coregrind/m_debuginfo/priv_readdwarf3.h 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/priv_readdwarf3.h 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -48,7 +48,11 @@
UChar* debug_line_img, SizeT debug_line_sz,
UChar* debug_str_img, SizeT debug_str_sz,
UChar* debug_ranges_img, SizeT debug_ranges_sz,
- UChar* debug_loc_img, SizeT debug_loc_sz
+ UChar* debug_loc_img, SizeT debug_loc_sz,
+ UChar* debug_info_alt_img, SizeT debug_info_alt_sz,
+ UChar* debug_abbv_alt_img, SizeT debug_abbv_alt_sz,
+ UChar* debug_line_alt_img, SizeT debug_line_alt_sz,
+ UChar* debug_str_alt_img, SizeT debug_str_alt_sz
);
#endif /* ndef __PRIV_READDWARF3_H */
Modified: trunk/coregrind/m_debuginfo/readdwarf.c (+14 -3)
===================================================================
--- trunk/coregrind/m_debuginfo/readdwarf.c 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/readdwarf.c 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -985,7 +985,8 @@
void read_unitinfo_dwarf2( /*OUT*/UnitInfo* ui,
UChar* unitblock_img,
UChar* debugabbrev_img,
- UChar* debugstr_img )
+ UChar* debugstr_img,
+ UChar* debugstr_alt_img )
{
UInt acode, abcode;
ULong atoffs, blklen;
@@ -1128,6 +1129,14 @@
case 0x18: /* FORM_exprloc */ p += read_leb128U( &p ); break;
case 0x19: /* FORM_flag_present */break;
case 0x20: /* FORM_ref_sig8 */ p += 8; break;
+ case 0x1f20: /* FORM_GNU_ref_alt */ p += ui->dw64 ? 8 : 4; break;
+ case 0x1f21: /* FORM_GNU_strp_alt */
+ if (debugstr_alt_img && !ui->dw64)
+ sval = debugstr_alt_img + ML_(read_UInt)(p);
+ if (debugstr_alt_img && ui->dw64)
+ sval = debugstr_alt_img + ML_(read_ULong)(p);
+ p += ui->dw64 ? 8 : 4;
+ break;
default:
VG_(printf)( "### unhandled dwarf2 abbrev form code 0x%x\n", form );
@@ -1169,7 +1178,8 @@
UChar* debug_types_img, Word debug_types_sz, /* .debug_types */
UChar* debug_abbv_img, Word debug_abbv_sz, /* .debug_abbrev */
UChar* debug_line_img, Word debug_line_sz, /* .debug_line */
- UChar* debug_str_img, Word debug_str_sz ) /* .debug_str */
+ UChar* debug_str_img, Word debug_str_sz, /* .debug_str */
+ UChar* debug_str_alt_img, Word debug_str_alt_sz ) /* .debug_str */
{
UnitInfo ui;
UShort ver;
@@ -1218,7 +1228,8 @@
VG_(printf)( "Reading UnitInfo at 0x%lx.....\n",
block_img - debug_info_img + 0UL );
read_unitinfo_dwarf2( &ui, block_img,
- debug_abbv_img, debug_str_img );
+ debug_abbv_img, debug_str_img,
+ debug_str_alt_img );
if (0)
VG_(printf)( " => LINES=0x%llx NAME=%s DIR=%s\n",
ui.stmt_list, ui.name, ui.compdir );
Modified: trunk/coregrind/m_debuginfo/debuginfo.c (+1 -1)
===================================================================
--- trunk/coregrind/m_debuginfo/debuginfo.c 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/debuginfo.c 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -877,7 +877,7 @@
/* We're only interested in mappings of object files. */
# if defined(VGO_linux)
- if (!ML_(is_elf_object_file)( buf1k, (SizeT)sr_Res(preadres) ))
+ if (!ML_(is_elf_object_file)( buf1k, (SizeT)sr_Res(preadres), False ))
return 0;
# elif defined(VGO_darwin)
if (!ML_(is_macho_object_file)( buf1k, (SizeT)sr_Res(preadres) ))
Modified: trunk/coregrind/m_debuginfo/priv_d3basics.h (+5 -1)
===================================================================
--- trunk/coregrind/m_debuginfo/priv_d3basics.h 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/priv_d3basics.h 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -199,7 +199,11 @@
DW_FORM_sec_offset = 0x17,
DW_FORM_exprloc = 0x18,
DW_FORM_flag_present = 0x19,
- DW_FORM_ref_sig8 = 0x20
+ DW_FORM_ref_sig8 = 0x20,
+ /* Extensions for DWZ multifile.
+ See http://www.dwarfstd.org/ShowIssue.php?issue=120604.1&type=open . */
+ DW_FORM_GNU_ref_alt = 0x1f20,
+ DW_FORM_GNU_strp_alt = 0x1f21
}
DW_FORM;
Modified: trunk/coregrind/m_debuginfo/d3basics.c (+2 -0)
===================================================================
--- trunk/coregrind/m_debuginfo/d3basics.c 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/d3basics.c 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -180,6 +180,8 @@
case DW_FORM_exprloc: return "DW_FORM_exprloc";
case DW_FORM_flag_present:return "DW_FORM_flag_present";
case DW_FORM_ref_sig8: return "DW_FORM_ref_sig8";
+ case DW_FORM_GNU_ref_alt:return "DW_FORM_GNU_ref_alt";
+ case DW_FORM_GNU_strp_alt:return "DW_FORM_GNU_strp_alt";
}
return "DW_FORM_???";
}
Modified: trunk/coregrind/m_debuginfo/readdwarf3.c (+156 -38)
===================================================================
--- trunk/coregrind/m_debuginfo/readdwarf3.c 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/readdwarf3.c 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -419,6 +419,16 @@
/* Where is .debug_types? */
UChar* debug_types_img;
UWord debug_types_sz;
+ /* Where is alternate .debug_info? */
+ UChar* debug_info_alt_img;
+ UWord debug_info_alt_sz;
+ /* Where is alternate .debug_str ? */
+ UChar* debug_str_alt_img;
+ UWord debug_str_alt_sz;
+ /* How much to add to .debug_types resp. alternate .debug_info offsets
+ in cook_die*. */
+ UWord types_cuOff_bias;
+ UWord alt_cuOff_bias;
/* --- Needed so we can add stuff to the string table. --- */
struct _DebugInfo* di;
/* --- a cache for set_abbv_Cursor --- */
@@ -439,40 +449,58 @@
/* Signatured type hash; computed once and then shared by all
CUs. */
VgHashTable signature_types;
+
+ /* True if this came from alternate .debug_info; otherwise
+ it came from normal .debug_info or .debug_types. */
+ Bool is_alt_info;
}
CUConst;
/* Return the cooked value of DIE depending on whether CC represents a
- .debug_types unit. To cook a DIE, we pretend that the .debug_info
- and .debug_types sections form a contiguous whole, so that DIEs
- coming from .debug_types are numbered starting at the end of
- .debug_info. */
+ .debug_types unit. To cook a DIE, we pretend that the .debug_info,
+ .debug_types and optional alternate .debug_info sections form
+ a contiguous whole, so that DIEs coming from .debug_types are numbered
+ starting at the end of .debug_info and DIEs coming from alternate
+ .debug_info are numbered starting at the end of .debug_types. */
static UWord cook_die( CUConst* cc, UWord die )
{
if (cc->is_type_unit)
- die += cc->debug_info_sz;
+ die += cc->types_cuOff_bias;
+ else if (cc->is_alt_info)
+ die += cc->alt_cuOff_bias;
return die;
}
/* Like cook_die, but understand that DIEs coming from a
- DW_FORM_ref_sig8 reference are already cooked. */
+ DW_FORM_ref_sig8 reference are already cooked. Also, handle
+ DW_FORM_GNU_ref_alt from within primary .debug_info or .debug_types
+ as reference to alternate .debug_info. */
static UWord cook_die_using_form( CUConst *cc, UWord die, DW_FORM form)
{
if (form == DW_FORM_ref_sig8)
return die;
+ if (form == DW_FORM_GNU_ref_alt)
+ return die + cc->alt_cuOff_bias;
return cook_die( cc, die );
}
-/* Return the uncooked offset of DIE and set *FLAG to true if the DIE
- came from the .debug_types section. */
-static UWord uncook_die( CUConst *cc, UWord die, /*OUT*/Bool *flag )
+/* Return the uncooked offset of DIE and set *TYPE_FLAG to true if the DIE
+ came from the .debug_types section and *ALT_FLAG to true if the DIE
+ came from alternate .debug_info section. */
+static UWord uncook_die( CUConst *cc, UWord die, /*OUT*/Bool *type_flag,
+ Bool *alt_flag )
{
+ *alt_flag = False;
+ *type_flag = False;
if (die >= cc->debug_info_sz) {
- *flag = True;
- die -= cc->debug_info_sz;
- } else {
- *flag = False;
+ if (die >= cc->debug_info_sz + cc->debug_types_sz) {
+ *alt_flag = True;
+ die -= cc->debug_info_sz + cc->debug_types_sz;
+ } else {
+ *type_flag = True;
+ die -= cc->debug_info_sz;
+ }
}
return die;
}
@@ -830,7 +858,8 @@
Bool td3,
Cursor* c,
UChar* debug_abbv_img, UWord debug_abbv_sz,
- Bool type_unit )
+ Bool type_unit,
+ Bool alt_info )
{
UChar address_size;
UWord debug_abbrev_offset;
@@ -869,6 +898,7 @@
TRACE_D3(" Pointer Size: %d\n", (Int)address_size );
cc->is_type_unit = type_unit;
+ cc->is_alt_info = alt_info;
if (type_unit) {
cc->type_signature = get_ULong( c );
@@ -1296,6 +1326,37 @@
(DW_FORM)get_ULEB128(c));
return;
+ case DW_FORM_GNU_ref_alt:
+ *cts = get_Dwarfish_UWord(c, cc->is_dw64);
+ *ctsSzB = cc->is_dw64 ? sizeof(ULong) : sizeof(UInt);
+ TRACE_D3("0x%lx", (UWord)*cts);
+ if (0) VG_(printf)("DW_FORM_GNU_ref_alt 0x%lx\n", (UWord)*cts);
+ if (/* the following 2 are surely impossible, but ... */
+ cc->debug_info_alt_img == NULL || cc->debug_info_alt_sz == 0
+ || *cts >= (ULong)cc->debug_info_alt_sz) {
+ /* Hmm. Offset is nonsensical for this object's .debug_info
+ section. Be safe and reject it. */
+ cc->barf("get_Form_contents: DW_FORM_ref_addr points "
+ "outside alternate .debug_info");
+ }
+ break;
+
+ case DW_FORM_GNU_strp_alt: {
+ /* this is an offset into alternate .debug_str */
+ UChar* str;
+ UWord uw = (UWord)get_Dwarfish_UWord( c, cc->is_dw64 );
+ if (cc->debug_str_alt_img == NULL || uw >= cc->debug_str_alt_sz)
+ cc->barf("get_Form_contents: DW_FORM_GNU_strp_alt "
+ "points outside alternate .debug_str");
+ /* FIXME: check the entire string lies inside debug_str,
+ not just the first byte of it. */
+ str = (UChar*)cc->debug_str_alt_img + uw;
+ TRACE_D3("(indirect alt string, offset: 0x%lx): %s", uw, str);
+ *cts = (ULong)(UWord)str;
+ *ctsMemSzB = 1 + (ULong)VG_(strlen)(str);
+ break;
+ }
+
default:
VG_(printf)(
"get_Form_contents: unhandled %d (%s) at <%lx>\n",
@@ -1586,10 +1647,13 @@
UWord saved_die_c_offset = get_position_of_Cursor( c_die );
UWord saved_abbv_c_offset = get_position_of_Cursor( c_abbv );
Bool debug_types_flag;
+ Bool alt_flag;
varstack_preen( parser, td3, level-1 );
- if (dtag == DW_TAG_compile_unit || dtag == DW_TAG_type_unit) {
+ if (dtag == DW_TAG_compile_unit
+ || dtag == DW_TAG_type_unit
+ || dtag == DW_TAG_partial_unit) {
Bool have_lo = False;
Bool have_hi1 = False;
Bool hiIsRelative = False;
@@ -2045,11 +2109,14 @@
set_position_of_Cursor( c_die, saved_die_c_offset );
set_position_of_Cursor( c_abbv, saved_abbv_c_offset );
VG_(printf)("\nparse_var_DIE: confused by:\n");
- posn = uncook_die( cc, posn, &debug_types_flag );
+ posn = uncook_die( cc, posn, &debug_types_flag, &alt_flag );
VG_(printf)(" <%d><%lx>: %s", level, posn, ML_(pp_DW_TAG)( dtag ) );
if (debug_types_flag) {
VG_(printf)(" (in .debug_types)");
}
+ else if (alt_flag) {
+ VG_(printf)(" (in alternate .debug_info)");
+ }
VG_(printf)("\n");
while (True) {
DW_AT attr = (DW_AT) get_ULEB128( c_abbv );
@@ -2231,6 +2298,7 @@
TyEnt fieldE;
TyEnt boundE;
Bool debug_types_flag;
+ Bool alt_flag;
UWord saved_die_c_offset = get_position_of_Cursor( c_die );
UWord saved_abbv_c_offset = get_position_of_Cursor( c_abbv );
@@ -2245,7 +2313,9 @@
its children. */
typestack_preen( parser, td3, level-1 );
- if (dtag == DW_TAG_compile_unit || dtag == DW_TAG_type_unit) {
+ if (dtag == DW_TAG_compile_unit
+ || dtag == DW_TAG_type_unit
+ || dtag == DW_TAG_partial_unit) {
/* See if we can find DW_AT_language, since it is important for
establishing array bounds (see DW_TAG_subrange_type below in
this fn) */
@@ -2972,10 +3042,12 @@
set_position_of_Cursor( c_die, saved_die_c_offset );
set_position_of_Cursor( c_abbv, saved_abbv_c_offset );
VG_(printf)("\nparse_type_DIE: confused by:\n");
- posn = uncook_die( cc, posn, &debug_types_flag );
+ posn = uncook_die( cc, posn, &debug_types_flag, &alt_flag );
VG_(printf)(" <%d><%lx>: %s", level, posn, ML_(pp_DW_TAG)( dtag ) );
if (debug_types_flag) {
VG_(printf)(" (in .debug_types)");
+ } else if (alt_flag) {
+ VG_(printf)(" (in alternate .debug_info)");
}
VG_(printf)("\n");
while (True) {
@@ -3453,7 +3525,11 @@
UChar* debug_line_img, SizeT debug_line_sz,
UChar* debug_str_img, SizeT debug_str_sz,
UChar* debug_ranges_img, SizeT debug_ranges_sz,
- UChar* debug_loc_img, SizeT debug_loc_sz
+ UChar* debug_loc_img, SizeT debug_loc_sz,
+ UChar* debug_info_alt_img, SizeT debug_info_alt_sz,
+ UChar* debug_abbv_alt_img, SizeT debug_abbv_alt_sz,
+ UChar* debug_line_alt_img, SizeT debug_line_alt_sz,
+ UChar* debug_str_alt_img, SizeT debug_str_alt_sz
)
{
XArray* /* of TyEnt */ tyents;
@@ -3693,10 +3769,10 @@
(saC_cache) */
parse_CU_Header( &cc, td3, &info,
(UChar*)debug_abbv_img, debug_abbv_sz,
- True );
+ True, False );
/* Needed by cook_die. */
- cc.debug_info_sz = debug_info_sz;
+ cc.types_cuOff_bias = debug_info_sz;
record_signatured_type( signature_types, cc.type_signature,
cook_die( &cc, cc.type_offset ));
@@ -3714,15 +3790,29 @@
}
}
- /* Perform two DIE-reading passes. The first pass reads DIEs from
- .debug_info, and the second pass reads DIEs from .debug_types.
+ /* Perform three DIE-reading passes. The first pass reads DIEs from
+ alternate .debug_info (if any), the second pass reads DIEs from
+ .debug_info, and the third pass reads DIEs from .debug_types.
Moving the body of this loop into a separate function would
require a large number of arguments to be passed in, so it is
kept inline instead. */
- for (pass = 0; pass < 2; ++pass) {
+ for (pass = 0; pass < 3; ++pass) {
UWord section_size;
if (pass == 0) {
+ if (debug_info_alt_img == NULL)
+ continue;
+ /* Now loop over the Compilation Units listed in the alternate
+ .debug_info section (see D3SPEC sec 7.5) paras 1 and 2.
+ Each compilation unit contains a Compilation Unit Header
+ followed by precisely one DW_TAG_compile_unit or
+ DW_TAG_partial_unit DIE. */
+ init_Cursor( &info, debug_info_alt_img, debug_info_alt_sz, 0, barf,
+ "Overrun whilst reading alternate .debug_info section" );
+ section_size = debug_info_alt_sz;
+
+ TRACE_D3("\n------ Parsing alternate .debug_info section ------\n");
+ } else if (pass == 1) {
/* Now loop over the Compilation Units listed in the .debug_info
section (see D3SPEC sec 7.5) paras 1 and 2. Each compilation
unit contains a Compilation Unit Header followed by precisely
@@ -3794,21 +3884,32 @@
TRACE_D3(" Compilation Unit @ offset 0x%lx:\n", cu_start_offset);
/* parse_CU_header initialises the CU's set_abbv_Cursor cache
(saC_cache) */
- parse_CU_Header( &cc, td3, &info,
- (UChar*)debug_abbv_img, debug_abbv_sz,
- pass != 0 );
- cc.debug_str_img = debug_str_img;
- cc.debug_str_sz = debug_str_sz;
+ if (pass == 0)
+ parse_CU_Header( &cc, td3, &info,
+ (UChar*)debug_abbv_alt_img, debug_abbv_alt_sz,
+ False, True );
+ else
+ parse_CU_Header( &cc, td3, &info,
+ (UChar*)debug_abbv_img, debug_abbv_sz,
+ pass == 2, False );
+ cc.debug_str_img = pass == 0 ? debug_str_alt_img : debug_str_img;
+ cc.debug_str_sz = pass == 0 ? debug_str_alt_sz : debug_str_sz;
cc.debug_ranges_img = debug_ranges_img;
cc.debug_ranges_sz = debug_ranges_sz;
cc.debug_loc_img = debug_loc_img;
cc.debug_loc_sz = debug_loc_sz;
- cc.debug_line_img = debug_line_img;
- cc.debug_line_sz = debug_line_sz;
- cc.debug_info_img = debug_info_img;
- cc.debug_info_sz = debug_info_sz;
+ cc.debug_line_img = pass == 0 ? debug_line_alt_img : debug_line_img;
+ cc.debug_line_sz = pass == 0 ? debug_line_alt_sz : debug_line_sz;
+ cc.debug_info_img = pass == 0 ? debug_info_alt_img : debug_info_img;
+ cc.debug_info_sz = pass == 0 ? debug_info_alt_sz : debug_info_sz;
cc.debug_types_img = debug_types_img;
cc.debug_types_sz = debug_types_sz;
+ cc.debug_info_alt_img = debug_info_alt_img;
+ cc.debug_info_alt_sz = debug_info_alt_sz;
+ cc.debug_str_alt_img = debug_str_alt_img;
+ cc.debug_str_alt_sz = debug_str_alt_sz;
+ cc.types_cuOff_bias = debug_info_sz;
+ cc.alt_cuOff_bias = debug_info_sz + debug_types_sz;
cc.cu_start_offset = cu_start_offset;
cc.di = di;
/* The CU's svma can be deduced by looking at the AT_low_pc
@@ -3991,10 +4092,19 @@
vg_assert(dioff_lookup_tab);
n = VG_(sizeXA)( tempvars );
+ Word first_primary_var;
+ for (first_primary_var = 0;
+ debug_info_alt_sz && first_primary_var < n;
+ first_primary_var++) {
+ varp = *(TempVar**)VG_(indexXA)( tempvars, first_primary_var );
+ if (varp->dioff < debug_info_sz + debug_types_sz)
+ break;
+ }
for (i = 0; i < n; i++) {
- varp = *(TempVar**)VG_(indexXA)( tempvars, i );
- if (i > 0) {
- varp2 = *(TempVar**)VG_(indexXA)( tempvars, i-1 );
+ varp = *(TempVar**)VG_(indexXA)( tempvars, (i + first_primary_var) % n );
+ if (i > first_primary_var) {
+ varp2 = *(TempVar**)VG_(indexXA)( tempvars,
+ (i + first_primary_var - 1) % n );
/* why should this hold? Only, I think, because we've
constructed the array by reading .debug_info sequentially,
and so the array .dioff fields should reflect that, and be
@@ -4248,7 +4358,11 @@
UChar* debug_line_img, SizeT debug_line_sz,
UChar* debug_str_img, SizeT debug_str_sz,
UChar* debug_ranges_img, SizeT debug_ranges_sz,
- UChar* debug_loc_img, SizeT debug_loc_sz
+ UChar* debug_loc_img, SizeT debug_loc_sz,
+ UChar* debug_info_alt_img, SizeT debug_info_alt_sz,
+ UChar* debug_abbv_alt_img, SizeT debug_abbv_alt_sz,
+ UChar* debug_line_alt_img, SizeT debug_line_alt_sz,
+ UChar* debug_str_alt_img, SizeT debug_str_alt_sz
)
{
volatile Int jumped;
@@ -4272,7 +4386,11 @@
debug_line_img, debug_line_sz,
debug_str_img, debug_str_sz,
debug_ranges_img, debug_ranges_sz,
- debug_loc_img, debug_loc_sz );
+ debug_loc_img, debug_loc_sz,
+ debug_info_alt_img, debug_info_alt_sz,
+ debug_abbv_alt_img, debug_abbv_alt_sz,
+ debug_line_alt_img, debug_line_alt_sz,
+ debug_str_alt_img, debug_str_alt_sz);
d3rd_jmpbuf_valid = False;
TRACE_D3("\n------ .debug_info reading was successful ------\n");
} else {
Modified: trunk/coregrind/m_debuginfo/priv_readdwarf.h (+2 -1)
===================================================================
--- trunk/coregrind/m_debuginfo/priv_readdwarf.h 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/priv_readdwarf.h 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -48,7 +48,8 @@
UChar* debug_types_img, Word debug_types_sz, /* .debug_types */
UChar* debug_abbv_img, Word debug_abbv_sz, /* .debug_abbrev */
UChar* debug_line_img, Word debug_line_sz, /* .debug_line */
- UChar* debug_str_img, Word debug_str_sz ); /* .debug_str */
+ UChar* debug_str_img, Word debug_str_sz, /* .debug_str */
+ UChar* debug_str_alt_img, Word debug_str_alt_sz ); /* .debug_str */
/* --------------------
DWARF1 reader
Modified: trunk/coregrind/m_debuginfo/readelf.c (+176 -22)
===================================================================
--- trunk/coregrind/m_debuginfo/readelf.c 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/readelf.c 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -111,7 +111,7 @@
/* Identify an ELF object file by peering at the first few bytes of
it. */
-Bool ML_(is_elf_object_file)( void* image, SizeT n_image )
+Bool ML_(is_elf_object_file)( void* image, SizeT n_image, Bool rel_ok )
{
ElfXX_Ehdr* ehdr = (ElfXX_Ehdr*)image;
Int ok = 1;
@@ -126,12 +126,14 @@
ok &= (ehdr->e_ident[EI_CLASS] == VG_ELF_CLASS
&& ehdr->e_ident[EI_DATA] == VG_ELF_DATA2XXX
&& ehdr->e_ident[EI_VERSION] == EV_CURRENT);
- ok &= (ehdr->e_type == ET_EXEC || ehdr->e_type == ET_DYN);
+ ok &= (ehdr->e_type == ET_EXEC || ehdr->e_type == ET_DYN
+ || (rel_ok && ehdr->e_type == ET_REL));
ok &= (ehdr->e_machine == VG_ELF_MACHINE);
ok &= (ehdr->e_version == EV_CURRENT);
ok &= (ehdr->e_shstrndx != SHN_UNDEF);
ok &= (ehdr->e_shoff != 0 && ehdr->e_shnum != 0);
- ok &= (ehdr->e_phoff != 0 && ehdr->e_phnum != 0);
+ ok &= ((ehdr->e_phoff != 0 && ehdr->e_phnum != 0)
+ || ehdr->e_type == ET_REL);
if (ok)
return True;
@@ -886,7 +888,7 @@
* http://fedoraproject.org/wiki/RolandMcGrath/BuildID
*/
static
-Char *find_buildid(Addr image, UWord n_image)
+Char *find_buildid(Addr image, UWord n_image, Bool rel_ok)
{
Char* buildid = NULL;
__attribute__((unused)) /* on Android, at least */
@@ -894,7 +896,7 @@
#ifdef NT_GNU_BUILD_ID
if (n_image >= sizeof(ElfXX_Ehdr) &&
- ML_(is_elf_object_file)(ehdr, n_image)) {
+ ML_(is_elf_object_file)(ehdr, n_image, rel_ok)) {
Word i;
for (i = 0; i < ehdr->e_phnum; i++) {
@@ -926,7 +928,41 @@
+ ((note->n_descsz + 3) & ~3);
}
}
- }
+ }
+
+ if (buildid || !rel_ok)
+ return buildid;
+
+ for (i = 0; i < ehdr->e_shnum; i++) {
+ ElfXX_Shdr* shdr
+ = (ElfXX_Shdr*)(image + ehdr->e_shoff + i * ehdr->e_shentsize);
+
+ if (shdr->sh_type == SHT_NOTE) {
+ ElfXX_Off offset = shdr->sh_offset;
+
+ while (offset < shdr->sh_offset + shdr->sh_size) {
+ ElfXX_Nhdr* note = (ElfXX_Nhdr*)(image + offset);
+ Char* name = (Char *)note + sizeof(ElfXX_Nhdr);
+ UChar *desc = (UChar *)name + ((note->n_namesz + 3) & ~3);
+ Word j;
+
+ if (VG_(strcmp)(name, ELF_NOTE_GNU) == 0 &&
+ note->n_type == NT_GNU_BUILD_ID) {
+ buildid = ML_(dinfo_zalloc)("di.fbi.1",
+ note->n_descsz * 2 + 1);
+
+ for (j = 0; j < note->n_descsz; j++) {
+ VG_(sprintf)(buildid + VG_(strlen)(buildid),
+ "%02x", desc[j]);
+ }
+ }
+
+ offset = offset + sizeof(ElfXX_Nhdr)
+ + ((note->n_namesz + 3) & ~3)
+ + ((note->n_descsz + 3) & ~3);
+ }
+ }
+ }
}
#endif
@@ -1008,7 +1044,8 @@
* not match the value from the main object file.
*/
static
-Addr open_debug_file( Char* name, Char* buildid, UInt crc, /*OUT*/UWord* size )
+Addr open_debug_file( Char* name, Char* buildid, UInt crc, Bool rel_ok,
+ /*OUT*/UWord* size )
{
SysRes fd, sres;
struct vg_stat stat_buf;
@@ -1037,7 +1074,7 @@
return 0;
if (buildid) {
- Char* debug_buildid = find_buildid(sr_Res(sres), *size);
+ Char* debug_buildid = find_buildid(sr_Res(sres), *size, rel_ok);
if (debug_buildid == NULL || VG_(strcmp)(buildid, debug_buildid) != 0) {
SysRes res = VG_(am_munmap_valgrind)(sr_Res(sres), *size);
vg_assert(!sr_isError(res));
@@ -1156,7 +1193,7 @@
static
void find_debug_file( struct _DebugInfo* di,
Char* objpath, Char* buildid,
- Char* debugname, UInt crc,
+ Char* debugname, UInt crc, Bool rel_ok,
/*OUT*/Addr* dimage,
/*OUT*/SizeT* n_dimage )
{
@@ -1174,13 +1211,14 @@
VG_(sprintf)(debugpath, "/usr/lib/debug/.build-id/%c%c/%s.debug",
buildid[0], buildid[1], buildid + 2);
- if ((addr = open_debug_file(debugpath, buildid, 0, &size)) == 0) {
+ if ((addr = open_debug_file(debugpath, buildid, 0,
+ rel_ok, &size)) == 0) {
ML_(dinfo_free)(debugpath);
debugpath = NULL;
}
}
- if (addr == 0 && debugname != NULL) {
+ if (addr == 0 && debugname != NULL && !rel_ok) {
Char *objdir = ML_(dinfo_strdup)("di.fdf.2", objpath);
Char *objdirptr;
@@ -1193,11 +1231,11 @@
VG_(sprintf)(debugpath, "%s/%s", objdir, debugname);
- if ((addr = open_debug_file(debugpath, NULL, crc, &size)) == 0) {
+ if ((addr = open_debug_file(debugpath, NULL, crc, rel_ok, &size)) == 0) {
VG_(sprintf)(debugpath, "%s/.debug/%s", objdir, debugname);
- if ((addr = open_debug_file(debugpath, NULL, crc, &size)) == 0) {
+ if ((addr = open_debug_file(debugpath, NULL, crc, rel_ok, &size)) == 0) {
VG_(sprintf)(debugpath, "/usr/lib/debug%s/%s", objdir, debugname);
- addr = open_debug_file(debugpath, NULL, crc, &size);
+ addr = open_debug_file(debugpath, NULL, crc, rel_ok, &size);
}
}
@@ -1288,6 +1326,10 @@
Addr dimage = 0;
UWord n_dimage = 0;
+ /* Ditto for alternate ELF debuginfo file that we might happen to load. */
+ Addr aimage = 0;
+ UWord n_aimage = 0;
+
/* ELF header for the main file. Should == oimage since is at
start of file. */
ElfXX_Ehdr* ehdr_img = NULL;
@@ -1424,7 +1466,7 @@
ehdr_img = (ElfXX_Ehdr*)oimage;
if (ok)
- ok &= ML_(is_elf_object_file)(ehdr_img, n_oimage);
+ ok &= ML_(is_elf_object_file)(ehdr_img, n_oimage, False);
if (!ok) {
ML_(symerr)(di, True, "Invalid ELF Header");
@@ -2083,6 +2125,7 @@
UChar* dynstr_img = NULL; /* .dynstr */
ElfXX_Sym* dynsym_img = NULL; /* .dynsym */
UChar* debuglink_img = NULL; /* .gnu_debuglink */
+ UChar* debugaltlink_img = NULL; /* .gnu_debugaltlink */
UChar* stab_img = NULL; /* .stab (stabs) */
UChar* stabstr_img = NULL; /* .stabstr (stabs) */
UChar* debug_line_img = NULL; /* .debug_line (dwarf2) */
@@ -2093,6 +2136,10 @@
UChar* debug_ranges_img = NULL; /* .debug_ranges (dwarf2) */
UChar* debug_loc_img = NULL; /* .debug_loc (dwarf2) */
UChar* debug_frame_img = NULL; /* .debug_frame (dwarf2) */
+ UChar* debug_line_alt_img = NULL; /* .debug_line (alternate) */
+ UChar* debug_info_alt_img = NULL; /* .debug_info (alternate) */
+ UChar* debug_abbv_alt_img = NULL; /* .debug_abbrev (alternate) */
+ UChar* debug_str_alt_img = NULL; /* .debug_str (alternate) */
UChar* dwarf1d_img = NULL; /* .debug (dwarf1) */
UChar* dwarf1l_img = NULL; /* .line (dwarf1) */
UChar* opd_img = NULL; /* .opd (dwarf2,
@@ -2105,16 +2152,21 @@
SizeT dynstr_sz = 0;
SizeT dynsym_sz = 0;
SizeT debuglink_sz = 0;
+ SizeT debugaltlink_sz = 0;
SizeT stab_sz = 0;
SizeT stabstr_sz = 0;
SizeT debug_line_sz = 0;
SizeT debug_info_sz = 0;
- SizeT debug_types_sz = 0;
+ SizeT debug_types_sz = 0;
SizeT debug_abbv_sz = 0;
SizeT debug_str_sz = 0;
SizeT debug_ranges_sz = 0;
SizeT debug_loc_sz = 0;
SizeT debug_frame_sz = 0;
+ SizeT debug_line_alt_sz = 0;
+ SizeT debug_info_alt_sz = 0;
+ SizeT debug_abbv_alt_sz = 0;
+ SizeT debug_str_alt_sz = 0;
SizeT dwarf1d_sz = 0;
SizeT dwarf1l_sz = 0;
SizeT opd_sz_unused = 0;
@@ -2179,6 +2231,7 @@
FIND(".strtab", strtab_sz, strtab_img)
FIND(".gnu_debuglink", debuglink_sz, debuglink_img)
+ FIND(".gnu_debugaltlink", debugaltlink_sz, debugaltlink_img)
FIND(".stab", stab_sz, stab_img)
FIND(".stabstr", stabstr_sz, stabstr_img)
@@ -2224,7 +2277,7 @@
vg_assert(dimage == 0 && n_dimage == 0);
/* Look for a build-id */
- buildid = find_buildid(oimage, n_oimage);
+ buildid = find_buildid(oimage, n_oimage, False);
/* Look for a debug image */
if (buildid != NULL || debuglink_img != NULL) {
@@ -2240,11 +2293,11 @@
/* See if we can find a matching debug file */
find_debug_file( di, di->fsm.filename, buildid,
- debuglink_img, crc, &dimage, &n_dimage );
+ debuglink_img, crc, False, &dimage, &n_dimage );
} else {
/* See if we can find a matching debug file */
find_debug_file( di, di->fsm.filename, buildid,
- NULL, 0, &dimage, &n_dimage );
+ NULL, 0, False, &dimage, &n_dimage );
}
}
@@ -2267,7 +2320,7 @@
SVMA/bias/size and image addresses out of it. */
if (dimage != 0
&& n_dimage >= sizeof(ElfXX_Ehdr)
- && ML_(is_elf_object_file)((void*)dimage, n_dimage)) {
+ && ML_(is_elf_object_file)((void*)dimage, n_dimage, False)) {
/* Pull out and validate program header and section header info */
ElfXX_Ehdr* ehdr_dimg = (ElfXX_Ehdr*)dimage;
@@ -2446,6 +2499,8 @@
FIND(need_dwarf2, ".debug_loc", debug_loc_sz, debug_loc_img)
FIND(need_dwarf2, ".debug_frame", debug_frame_sz,
debug_frame_img)
+ FIND(need_dwarf2, ".gnu_debugaltlink", debugaltlink_sz,
+ debugaltlink_img)
FIND(need_dwarf1, ".debug", dwarf1d_sz, dwarf1d_img)
FIND(need_dwarf1, ".line", dwarf1l_sz, dwarf1l_img)
@@ -2453,7 +2508,101 @@
} /* Find all interesting sections */
} /* do we have a debug image? */
+ /* Look for alternate debug image */
+ if (debugaltlink_img != NULL) {
+ UInt buildid_offset = VG_(strlen)(debugaltlink_img)+1;
+
+ vg_assert(buildid_offset < debugaltlink_sz);
+
+ Char *altbuildid
+ = ML_(dinfo_zalloc)("di.fbi.4",
+ (debugaltlink_sz - buildid_offset)
+ * 2 + 1);
+
+ for (j = 0; j < debugaltlink_sz - buildid_offset; j++)
+ VG_(sprintf)(altbuildid + 2 * j,
+ "%02x", debugaltlink_img[buildid_offset + j]);
+
+ /* See if we can find a matching debug file */
+ find_debug_file( di, di->fsm.filename, altbuildid,
+ NULL, 0, True, &aimage, &n_aimage );
+
+ ML_(dinfo_free)(altbuildid);
+ }
+
/* TOPLEVEL */
+ /* If we were successful in finding alternate debug image, pull various
+ size and image addresses out of it. */
+ if (aimage != 0
+ && n_aimage >= sizeof(ElfXX_Ehdr)
+ && ML_(is_elf_object_file)((void*)aimage, n_aimage, True)) {
+
+ /* Pull out and validate program header and section header info */
+ ElfXX_Ehdr* ehdr_aimg = (ElfXX_Ehdr*)aimage;
+ ElfXX_Shdr* shdr_aimg = (ElfXX_Shdr*)( ((UChar*)ehdr_aimg)
+ + ehdr_aimg->e_shoff );
+ UWord shdr_dnent = ehdr_aimg->e_shnum;
+ UWord shdr_dent_szB = ehdr_aimg->e_shentsize;
+ UChar* shdr_strtab_aimg = NULL;
+
+ if (shdr_dnent == 0
+ || !contained_within(
+ aimage, n_aimage,
+ (Addr)shdr_aimg, shdr_dnent * shdr_dent_szB)) {
+ ML_(symerr)(di, True,
+ "Missing or invalid ELF Section Header Table"
+ " (alternate debuginfo file)");
+ goto out;
+ }
+
+ /* Also find the section header's string table, and validate. */
+ /* checked previously by is_elf_object_file: */
+ vg_assert( ehdr_aimg->e_shstrndx != SHN_UNDEF );
+
+ shdr_strtab_aimg
+ = (UChar*)( ((UChar*)ehdr_aimg)
+ + shdr_aimg[ehdr_aimg->e_shstrndx].sh_offset);
+ if (!contained_within(
+ aimage, n_aimage,
+ (Addr)shdr_strtab_aimg,
+ 1/*bogus, but we don't know the real size*/ )) {
+ ML_(symerr)(di, True,
+ "Invalid ELF Section Header String Table"
+ " (alternate debuginfo file)");
+ goto out;
+ }
+
+ /* Find all interesting sections */
+ for (i = 0; i < ehdr_aimg->e_shnum; i++) {
+
+# define FIND(sec_name, sec_size, sec_img) \
+ do { ElfXX_Shdr* shdr \
+ = INDEX_BIS( shdr_aimg, i, shdr_dent_szB ); \
+ if (0 == VG_(strcmp)(sec_name, \
+ shdr_strtab_aimg + shdr->sh_name)) { \
+ if (0 != sec_img) \
+ VG_(core_panic)("repeated section!\n"); \
+ sec_img = (void*)(aimage + shdr->sh_offset); \
+ sec_size = shdr->sh_size; \
+ TRACE_SYMTAB( "%18s: aimg %p .. %p\n", \
+ sec_name, \
+ (UChar*)sec_img, \
+ ((UChar*)sec_img) + sec_size - 1); \
+ } \
+ } while (0);
+
+ /* NAME SIZE IMAGE addr */
+ FIND(".debug_line", debug_line_alt_sz, debug_line_alt_img)
+ FIND(".debug_info", debug_info_alt_sz, debug_info_alt_img)
+ FIND(".debug_abbrev", debug_abbv_alt_sz, debug_abbv_alt_img)
+ FIND(".debug_str", debug_str_alt_sz, debug_str_alt_img)
+
+# undef FIND
+ } /* Find all interesting sections */
+ } /* do we have a debug image? */
+
+
+ /* TOPLEVEL */
/* Check some sizes */
vg_assert((dynsym_sz % sizeof(ElfXX_Sym)) == 0);
vg_assert((symtab_sz % sizeof(ElfXX_Sym)) == 0);
@@ -2533,7 +2682,8 @@
debug_types_img, debug_types_sz,
debug_abbv_img, debug_abbv_sz,
debug_line_img, debug_line_sz,
- debug_str_img, debug_str_sz );
+ debug_str_img, debug_str_sz,
+ debug_str_alt_img, debug_str_alt_sz );
/* The new reader: read the DIEs in .debug_info to acquire
information on variable types and locations. But only if
@@ -2548,7 +2698,11 @@
debug_line_img, debug_line_sz,
debug_str_img, debug_str_sz,
debug_ranges_img, debug_ranges_sz,
- debug_loc_img, debug_loc_sz
+ debug_loc_img, debug_loc_sz,
+ debug_info_alt_img, debug_info_alt_sz,
+ debug_abbv_alt_img, debug_abbv_alt_sz,
+ debug_line_alt_img, debug_line_alt_sz,
+ debug_str_alt_img, debug_str_alt_sz
);
}
}
Modified: trunk/coregrind/m_debuginfo/priv_readelf.h (+1 -1)
===================================================================
--- trunk/coregrind/m_debuginfo/priv_readelf.h 2012-07-13 18:55:36 +01:00 (rev 12741)
+++ trunk/coregrind/m_debuginfo/priv_readelf.h 2012-07-14 10:59:01 +01:00 (rev 12742)
@@ -40,7 +40,7 @@
/* Identify an ELF object file by peering at the first few bytes of
it. */
-extern Bool ML_(is_elf_object_file)( void* image, SizeT n_image );
+extern Bool ML_(is_elf_object_file)( void* image, SizeT n_image, Bool rel_ok );
/* The central function for reading ELF debug info. For the
object/exe specified by the SegInfo, find ELF sections, then read
|
|
From: <sv...@va...> - 2012-07-14 09:18:08
|
sewardj 2012-07-14 10:18:02 +0100 (Sat, 14 Jul 2012)
New Revision: 2430
Log:
Increase max allowed pre-allocation (vreg-ised) block size from 10000
to 15000. In very extreme circumstances the JIT pipeline can create
huge blocks. Fixes #303250, at least for the time being.
Modified files:
trunk/priv/host_generic_reg_alloc2.c
Modified: trunk/priv/host_generic_reg_alloc2.c (+2 -2)
===================================================================
--- trunk/priv/host_generic_reg_alloc2.c 2012-07-14 09:22:13 +01:00 (rev 2429)
+++ trunk/priv/host_generic_reg_alloc2.c 2012-07-14 10:18:02 +01:00 (rev 2430)
@@ -404,9 +404,9 @@
vassert(0 == (N_SPILL64S % 4));
/* The live range numbers are signed shorts, and so limiting the
- number of insns to 10000 comfortably guards against them
+ number of insns to 15000 comfortably guards against them
overflowing 32k. */
- vassert(instrs_in->arr_used <= 10000);
+ vassert(instrs_in->arr_used <= 15000);
# define INVALID_INSTRNO (-2)
|
|
From: <sv...@va...> - 2012-07-14 08:22:21
|
sewardj 2012-07-14 09:22:13 +0100 (Sat, 14 Jul 2012)
New Revision: 2429
Log:
ppc front end: fnmadd, fnmsub, fnmadds, fnmsubs: don't negate the
result when it is a NaN. Fixes #302370. (Carl Love, ca...@us...)
Modified files:
trunk/priv/guest_ppc_toIR.c
Modified: trunk/priv/guest_ppc_toIR.c (+126 -24)
===================================================================
--- trunk/priv/guest_ppc_toIR.c 2012-07-13 15:13:06 +01:00 (rev 2428)
+++ trunk/priv/guest_ppc_toIR.c 2012-07-14 09:22:13 +01:00 (rev 2429)
@@ -6838,6 +6838,91 @@
mkU32( 2 ) ) );
}
+#define NANmaskSingle 0x7F800000
+#define NANmaskDouble 0x7FF00000
+
+static IRExpr * Check_NaN( IRExpr * value, IRExpr * Hi32Mask )
+{
+ IRTemp exp_zero = newTemp(Ity_I8);
+ IRTemp frac_mask = newTemp(Ity_I32);
+ IRTemp frac_not_zero = newTemp(Ity_I8);
+
+ /* Check if the result is QNAN or SNAN and not +infinity or -infinity.
+ * The input value is always 64-bits, for single precision values, the
+ * lower 32 bits must be zero.
+ *
+ * Single Pricision
+ * [62:54] exponent field is equal to 0xFF for NAN and Infinity.
+ * [53:32] fraction field is zero for Infinity and non-zero for NAN
+ * [31:0] unused for single precision representation
+ *
+ * Double Pricision
+ * [62:51] exponent field is equal to 0xFF for NAN and Infinity.
+ * [50:0] fraction field is zero for Infinity and non-zero for NAN
+ *
+ * Returned result is a U32 value of 0xFFFFFFFF for NaN and 0 otherwise.
+ */
+ assign( frac_mask, unop( Iop_Not32,
+ binop( Iop_Or32,
+ mkU32( 0x80000000ULL ), Hi32Mask) ) );
+
+ assign( exp_zero,
+ unop( Iop_1Sto8,
+ binop( Iop_CmpEQ32,
+ binop( Iop_And32,
+ unop( Iop_64HIto32,
+ unop( Iop_ReinterpF64asI64,
+ value ) ),
+ Hi32Mask ),
+ Hi32Mask ) ) );
+ assign( frac_not_zero,
+ binop( Iop_Or8,
+ unop( Iop_1Sto8,
+ binop( Iop_CmpNE32,
+ binop( Iop_And32,
+ unop( Iop_64HIto32,
+ unop( Iop_ReinterpF64asI64,
+ value ) ),
+ mkexpr( frac_mask ) ),
+ mkU32( 0x0 ) ) ),
+ unop( Iop_1Sto8,
+ binop( Iop_CmpNE32,
+ binop( Iop_And32,
+ unop( Iop_64to32,
+ unop( Iop_ReinterpF64asI64,
+ value ) ),
+ mkU32( 0xFFFFFFFF ) ),
+ mkU32( 0x0 ) ) ) ) );
+ return unop( Iop_8Sto32,
+ binop( Iop_And8,
+ mkexpr( exp_zero ),
+ mkexpr( frac_not_zero ) ) );
+}
+
+static IRExpr * Complement_non_NaN( IRExpr * value, IRExpr * nan_mask )
+{
+ /* This function will only complement the 64-bit floating point value if it
+ * is not Nan. NaN is not a signed value. Need to do computations using
+ * 32-bit operands to ensure it will run in 32-bit mode.
+ */
+ return binop( Iop_32HLto64,
+ binop( Iop_Or32,
+ binop( Iop_And32,
+ nan_mask,
+ unop( Iop_64HIto32,
+ unop( Iop_ReinterpF64asI64,
+ value ) ) ),
+ binop( Iop_And32,
+ unop( Iop_Not32,
+ nan_mask ),
+ unop( Iop_64HIto32,
+ unop( Iop_ReinterpF64asI64,
+ unop( Iop_NegF64,
+ value ) ) ) ) ),
+ unop( Iop_64to32,
+ unop( Iop_ReinterpF64asI64, value ) ) );
+}
+
/*------------------------------------------------------------*/
/*--- Floating Point Instruction Translation ---*/
/*------------------------------------------------------------*/
@@ -7369,6 +7454,9 @@
IRTemp frB = newTemp(Ity_F64);
IRTemp frC = newTemp(Ity_F64);
IRTemp rmt = newTemp(Ity_I32);
+ IRTemp tmp = newTemp(Ity_F64);
+ IRTemp sign_tmp = newTemp(Ity_I64);
+ IRTemp nan_mask = newTemp(Ity_I32);
IRExpr* rm;
/* By default, we will examine the results of the operation and set
@@ -7418,19 +7506,25 @@
break;
case 0x1E: // fnmsubs (Float Neg Mult-Subtr Single, PPC32 p420)
- DIP("fnmsubs%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
- frD_addr, frA_addr, frC_addr, frB_addr);
- assign( frD, unop( Iop_NegF64,
- qop( Iop_MSubF64r32, rm,
- mkexpr(frA), mkexpr(frC), mkexpr(frB) )));
- break;
+ case 0x1F: // fnmadds (Floating Negative Multiply-Add Single, PPC32 p418)
- case 0x1F: // fnmadds (Floating Negative Multiply-Add Single, PPC32 p418)
- DIP("fnmadds%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
- frD_addr, frA_addr, frC_addr, frB_addr);
- assign( frD, unop( Iop_NegF64,
- qop( Iop_MAddF64r32, rm,
- mkexpr(frA), mkexpr(frC), mkexpr(frB) )));
+ if (opc2 == 0x1E) {
+ DIP("fnmsubs%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
+ frD_addr, frA_addr, frC_addr, frB_addr);
+ assign( tmp, qop( Iop_MSubF64r32, rm,
+ mkexpr(frA), mkexpr(frC), mkexpr(frB) ) );
+ } else {
+ DIP("fnmadds%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
+ frD_addr, frA_addr, frC_addr, frB_addr);
+ assign( tmp, qop( Iop_MAddF64r32, rm,
+ mkexpr(frA), mkexpr(frC), mkexpr(frB) ) );
+ }
+
+ assign( nan_mask, Check_NaN( mkexpr( tmp ),
+ mkU32( NANmaskSingle ) ) );
+ assign( sign_tmp, Complement_non_NaN( mkexpr( tmp ),
+ mkexpr( nan_mask ) ) );
+ assign( frD, unop( Iop_ReinterpI64asF64, mkexpr( sign_tmp ) ) );
break;
default:
@@ -7456,19 +7550,25 @@
break;
case 0x1E: // fnmsub (Float Neg Mult-Subtr (Dbl Precision), PPC32 p419)
- DIP("fnmsub%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
- frD_addr, frA_addr, frC_addr, frB_addr);
- assign( frD, unop( Iop_NegF64,
- qop( Iop_MSubF64, rm,
- mkexpr(frA), mkexpr(frC), mkexpr(frB) )));
- break;
+ case 0x1F: // fnmadd (Float Neg Mult-Add (Dbl Precision), PPC32 p417)
- case 0x1F: // fnmadd (Float Neg Mult-Add (Dbl Precision), PPC32 p417)
- DIP("fnmadd%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
- frD_addr, frA_addr, frC_addr, frB_addr);
- assign( frD, unop( Iop_NegF64,
- qop( Iop_MAddF64, rm,
- mkexpr(frA), mkexpr(frC), mkexpr(frB) )));
+ if (opc2 == 0x1E) {
+ DIP("fnmsub%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
+ frD_addr, frA_addr, frC_addr, frB_addr);
+ assign( tmp, qop( Iop_MSubF64, rm,
+ mkexpr(frA), mkexpr(frC), mkexpr(frB) ) );
+ } else {
+ DIP("fnmadd%s fr%u,fr%u,fr%u,fr%u\n", flag_rC ? ".":"",
+ frD_addr, frA_addr, frC_addr, frB_addr);
+ assign( tmp, qop( Iop_MAddF64, rm,
+ mkexpr(frA), mkexpr(frC), mkexpr(frB) ));
+ }
+
+ assign( nan_mask, Check_NaN( mkexpr( tmp ),
+ mkU32( NANmaskDouble ) ) );
+ assign( sign_tmp, Complement_non_NaN( mkexpr( tmp ),
+ mkexpr( nan_mask ) ) );
+ assign( frD, unop( Iop_ReinterpI64asF64, mkexpr( sign_tmp ) ) );
break;
default:
@@ -13342,6 +13442,8 @@
* of fnmadd and use pretty much the same code. However, that code has a bug in the
* way it blindly negates the signbit, even if the floating point result is a NaN.
* So, the TODO is to fix fnmadd (which I'll do in a different patch).
+ * FIXED 7/1/2012: carll fnmadd and fnmsubs fixed to not negate sign
+ * bit for NaN result.
*/
Bool mdp = opc2 == 0x2A4;
IRTemp frT = newTemp(Ity_F64);
|
|
From: Philippe W. <phi...@sk...> - 2012-07-14 03:46:04
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.3.1-3.fc16.ppc64 ppc64 Vendor version: Fedora release 16 (Verne) Nightly build on gcc110 ( Fedora release 16 (Verne), ppc64 ) Started at 2012-07-13 20:00:05 PDT Ended at 2012-07-13 20:44:51 PDT 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 == 528 tests, 6 stderr failures, 2 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/mcmain_pic (stdoutB) gdbserver_tests/mcmain_pic (stderrB) memcheck/tests/supp_unknown (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) massif/tests/big-alloc (post) massif/tests/deep-D (post) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (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 == 528 tests, 12 stderr failures, 2 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/mcmain_pic (stdoutB) gdbserver_tests/mcmain_pic (stderrB) memcheck/tests/supp_unknown (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) massif/tests/big-alloc (post) massif/tests/deep-D (post) none/tests/empty-exe (stderr) none/tests/shell (stderr) none/tests/shell_valid1 (stderr) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Fri Jul 13 20:21:34 2012 --- new.short Fri Jul 13 20:44:51 2012 *************** *** 8,10 **** ! == 528 tests, 12 stderr failures, 2 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) --- 8,10 ---- ! == 528 tests, 6 stderr failures, 2 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) *************** *** 19,26 **** massif/tests/deep-D (post) - none/tests/empty-exe (stderr) - none/tests/shell (stderr) - none/tests/shell_valid1 (stderr) - none/tests/shell_valid2 (stderr) - none/tests/shell_valid3 (stderr) - none/tests/shell_zerolength (stderr) helgrind/tests/tc18_semabuse (stderr) --- 19,20 ---- |
|
From: Tom H. <to...@co...> - 2012-07-14 02:57:30
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2) Assembler: GNU assembler version 2.19.51.0.14-3.fc11 20090722 C library: GNU C Library stable release version 2.10.2 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 11 (Leonidas) Nightly build on bristol ( x86_64, Fedora 11 ) Started at 2012-07-14 03:31:18 BST Ended at 2012-07-14 03:57:16 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 == 604 tests, 1 stderr failure, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/long_namespace_xml (stderr) none/tests/amd64/sse4-64 (stdout) |
|
From: <br...@ac...> - 2012-07-14 02:53:44
|
valgrind revision: 12741
VEX revision: 2428
C compiler: gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-3)
Assembler: GNU assembler 2.15.92.0.2 20040927
C library: GNU C Library stable release version 2.3.4
uname -mrs: Linux 2.6.9-42.EL s390x
Vendor version: Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Nightly build on z10-ec ( s390x build on z10-EC )
Started at 2012-07-13 22:20:10 EDT
Ended at 2012-07-13 22:53:32 EDT
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
== 510 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures ==
memcheck/tests/manuel3 (stderr)
memcheck/tests/partial_load_ok (stderr)
memcheck/tests/varinfo6 (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
helgrind/tests/tc18_semabuse (stderr)
helgrind/tests/tc20_verifywrap (stderr)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-07-13 22:37:19.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-07-13 22:48:57.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-07-13 22:37:19.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-07-13 22:49:05.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-07-13 22:37:19.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-07-13 22:49:15.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-07-13 22:37:27.000000000 -0400
+++ manuel3.stderr.out 2012-07-13 22:43:53.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-07-13 22:37:27.000000000 -0400
+++ partial_load_ok.stderr.out 2012-07-13 22:44:23.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-07-13 22:37:27.000000000 -0400
+++ partial_load_ok.stderr.out 2012-07-13 22:44:23.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-07-13 22:37:27.000000000 -0400
+++ varinfo6.stderr.out 2012-07-13 22:45:22.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-07-13 22:37:27.000000000 -0400
+++ varinfo6.stderr.out 2012-07-13 22:45:22.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-07-13 22:20:42.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-07-13 22:32:38.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-07-13 22:20:42.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-07-13 22:32:46.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-07-13 22:20:42.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-07-13 22:32:56.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-07-13 22:20:49.000000000 -0400
+++ manuel3.stderr.out 2012-07-13 22:27:35.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-07-13 22:20:49.000000000 -0400
+++ partial_load_ok.stderr.out 2012-07-13 22:28:06.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-07-13 22:20:48.000000000 -0400
+++ partial_load_ok.stderr.out 2012-07-13 22:28:06.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-07-13 22:20:49.000000000 -0400
+++ varinfo6.stderr.out 2012-07-13 22:29:04.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-07-13 22:20:48.000000000 -0400
+++ varinfo6.stderr.out 2012-07-13 22:29:04.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
|
|
From: Rich C. <rc...@wi...> - 2012-07-14 02:53:18
|
valgrind revision: 12741
VEX revision: 2428
C compiler: gcc (SUSE Linux) 4.5.1 20101208 [gcc-4_5-branch revision 167585]
Assembler: GNU assembler (GNU Binutils; openSUSE 11.4) 2.21
C library: GNU C Library stable release version 2.11.3 (20110203)
uname -mrs: Linux 2.6.37.6-0.7-desktop x86_64
Vendor version: Welcome to openSUSE 11.4 "Celadon" - Kernel %r (%t).
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.6-0.7-desktop x86_64 )
Started at 2012-07-13 21:30:01 CDT
Ended at 2012-07-13 21:53:09 CDT
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
== 612 tests, 2 stderr failures, 0 stdout failures, 6 stderrB failures, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mcbreak (stderrB)
gdbserver_tests/mcclean_after_fork (stderrB)
gdbserver_tests/mcleak (stderrB)
gdbserver_tests/mcmain_pic (stderrB)
gdbserver_tests/mcvabits (stderrB)
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/linux/timerfd-syscall (stderr)
memcheck/tests/origin5-bz2 (stderr)
=================================================
./valgrind-new/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-07-13 21:41:51.284913226 -0500
+++ mcbreak.stderrB.out 2012-07-13 21:44:20.511159599 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-new/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-07-13 21:41:51.284913226 -0500
+++ mcclean_after_fork.stderrB.out 2012-07-13 21:44:22.176352054 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-07-13 21:41:51.280912764 -0500
+++ mcleak.stderrB.out 2012-07-13 21:44:40.305447340 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-new/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-07-13 21:41:51.287913573 -0500
+++ mcmain_pic.stderrB.out 2012-07-13 21:44:41.864627546 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-07-13 21:41:51.288913689 -0500
+++ mcvabits.stderrB.out 2012-07-13 21:44:46.735190466 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-07-13 21:41:51.287913573 -0500
+++ mssnapshot.stderrB.out 2012-07-13 21:44:49.877553651 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/memcheck/tests/linux/timerfd-syscall.stderr.diff
=================================================
--- timerfd-syscall.stderr.exp 2012-07-13 21:41:51.513939695 -0500
+++ timerfd-syscall.stderr.out 2012-07-13 21:45:55.349120736 -0500
@@ -33,7 +33,7 @@
got timer ticks (1) after 0.5 s
absolute timer test (at 500 ms) ...
waiting timer ...
-got timer ticks (1) after 0.5 s
+got timer ticks (1) after 0.0 s
sequential timer test (100 ms clock) ...
sleeping one second ...
timerfd_gettime returned:
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-07-13 21:41:51.979993556 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:46:10.606884228 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-07-13 21:41:51.962991591 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:46:10.606884228 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-07-13 21:41:51.907985232 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:46:10.606884228 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-07-13 21:41:51.936988585 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:46:10.606884228 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-07-13 21:41:51.949990087 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:46:10.606884228 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
=================================================
./valgrind-old/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-07-13 21:30:25.826613077 -0500
+++ mcbreak.stderrB.out 2012-07-13 21:32:54.202787756 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-old/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-07-13 21:30:25.826613077 -0500
+++ mcclean_after_fork.stderrB.out 2012-07-13 21:32:55.868980620 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-07-13 21:30:25.822612613 -0500
+++ mcleak.stderrB.out 2012-07-13 21:33:14.371122264 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-old/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-07-13 21:30:25.829613425 -0500
+++ mcmain_pic.stderrB.out 2012-07-13 21:33:15.927302394 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-07-13 21:30:25.830613541 -0500
+++ mcvabits.stderrB.out 2012-07-13 21:33:20.808867441 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-old/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-07-13 21:30:25.829613425 -0500
+++ mssnapshot.stderrB.out 2012-07-13 21:33:23.946230595 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-old/memcheck/tests/linux/timerfd-syscall.stderr.diff
=================================================
--- timerfd-syscall.stderr.exp 2012-07-13 21:30:26.182654289 -0500
+++ timerfd-syscall.stderr.out 2012-07-13 21:34:29.597829856 -0500
@@ -33,7 +33,7 @@
got timer ticks (1) after 0.5 s
absolute timer test (at 500 ms) ...
waiting timer ...
-got timer ticks (1) after 0.5 s
+got timer ticks (1) after 0.0 s
sequential timer test (100 ms clock) ...
sleeping one second ...
timerfd_gettime returned:
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-07-13 21:30:26.602702910 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:34:44.823592260 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-07-13 21:30:26.586701057 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:34:44.823592260 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-07-13 21:30:26.530694575 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:34:44.823592260 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-07-13 21:30:26.559697933 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:34:44.823592260 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-07-13 21:30:26.572699437 -0500
+++ origin5-bz2.stderr.out 2012-07-13 21:34:44.823592260 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
|
|
From: Tom H. <to...@co...> - 2012-07-14 02:50:50
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.4.5 20101112 (Red Hat 4.4.5-2) Assembler: GNU assembler version 2.20.51.0.2-20.fc13 20091009 C library: GNU C Library stable release version 2.12.2 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 13 (Goddard) Nightly build on bristol ( x86_64, Fedora 13 ) Started at 2012-07-14 03:21:56 BST Ended at 2012-07-14 03:50:37 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 == 604 tests, 1 stderr failure, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == helgrind/tests/pth_barrier3 (stderr) |
|
From: Tom H. <to...@co...> - 2012-07-14 02:49:17
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) Assembler: GNU assembler version 2.18.50.0.6-2 20080403 C library: GNU C Library stable release version 2.8 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 9 (Sulphur) Nightly build on bristol ( x86_64, Fedora 9 ) Started at 2012-07-14 03:41:50 BST Ended at 2012-07-14 03:49:06 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... failed Last 20 lines of verbose log follow echo avx-1.c:2120: Error: no such instruction: `vpclmulqdq $0x01,%xmm6,%xmm8,%xmm7' avx-1.c:2120: Error: no such instruction: `vpclmulqdq $0x01,(%rax),%xmm8,%xmm7' avx-1.c:2123: Error: no such instruction: `vpclmulqdq $0x10,%xmm6,%xmm8,%xmm7' avx-1.c:2123: Error: no such instruction: `vpclmulqdq $0x10,(%rax),%xmm8,%xmm7' avx-1.c:2126: Error: no such instruction: `vpclmulqdq $0x11,%xmm6,%xmm8,%xmm7' avx-1.c:2126: Error: no such instruction: `vpclmulqdq $0x11,(%rax),%xmm8,%xmm7' avx-1.c:2129: Error: no such instruction: `vpclmulqdq $0xFF,%xmm6,%xmm8,%xmm7' avx-1.c:2129: Error: no such instruction: `vpclmulqdq $0xFF,(%rax),%xmm8,%xmm7' make[5]: *** [avx-1.o] Error 1 rm insn_ssse3.c insn_sse3.c insn_sse.c insn_mmx.c insn_fpu.c insn_pclmulqdq.c insn_sse2.c insn_basic.c make[5]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests/amd64' make[4]: *** [check-am] Error 2 make[4]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests/amd64' make[3]: *** [check-recursive] Error 1 make[3]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests' make[2]: *** [check-recursive] Error 1 make[2]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new' make: *** [check] Error 2 ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... failed Last 20 lines of verbose log follow echo avx-1.c:2120: Error: no such instruction: `vpclmulqdq $0x01,%xmm6,%xmm8,%xmm7' avx-1.c:2120: Error: no such instruction: `vpclmulqdq $0x01,(%rax),%xmm8,%xmm7' avx-1.c:2123: Error: no such instruction: `vpclmulqdq $0x10,%xmm6,%xmm8,%xmm7' avx-1.c:2123: Error: no such instruction: `vpclmulqdq $0x10,(%rax),%xmm8,%xmm7' avx-1.c:2126: Error: no such instruction: `vpclmulqdq $0x11,%xmm6,%xmm8,%xmm7' avx-1.c:2126: Error: no such instruction: `vpclmulqdq $0x11,(%rax),%xmm8,%xmm7' avx-1.c:2129: Error: no such instruction: `vpclmulqdq $0xFF,%xmm6,%xmm8,%xmm7' avx-1.c:2129: Error: no such instruction: `vpclmulqdq $0xFF,(%rax),%xmm8,%xmm7' make[5]: *** [avx-1.o] Error 1 rm insn_ssse3.c insn_sse3.c insn_sse.c insn_mmx.c insn_fpu.c insn_pclmulqdq.c insn_sse2.c insn_basic.c make[5]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests/amd64' make[4]: *** [check-am] Error 2 make[4]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests/amd64' make[3]: *** [check-recursive] Error 1 make[3]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests' make[2]: *** [check-recursive] Error 1 make[2]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old' make: *** [check] Error 2 ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2012-07-14 03:45:30.156256960 +0100 --- new.short 2012-07-14 03:49:06.540789994 +0100 *************** *** 16,26 **** rm insn_ssse3.c insn_sse3.c insn_sse.c insn_mmx.c insn_fpu.c insn_pclmulqdq.c insn_sse2.c insn_basic.c ! make[5]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests/amd64' make[4]: *** [check-am] Error 2 ! make[4]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests/amd64' make[3]: *** [check-recursive] Error 1 ! make[3]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none/tests' make[2]: *** [check-recursive] Error 1 ! make[2]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old/none' make[1]: *** [check-recursive] Error 1 ! make[1]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-old' make: *** [check] Error 2 --- 16,26 ---- rm insn_ssse3.c insn_sse3.c insn_sse.c insn_mmx.c insn_fpu.c insn_pclmulqdq.c insn_sse2.c insn_basic.c ! make[5]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests/amd64' make[4]: *** [check-am] Error 2 ! make[4]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests/amd64' make[3]: *** [check-recursive] Error 1 ! make[3]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none/tests' make[2]: *** [check-recursive] Error 1 ! make[2]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new/none' make[1]: *** [check-recursive] Error 1 ! make[1]: Leaving directory `/tmp/vgtest-19610/2012-07-14/valgrind-new' make: *** [check] Error 2 |
|
From: Tom H. <to...@co...> - 2012-07-14 02:45:08
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) Assembler: GNU assembler version 2.20.51.0.7-8.fc14 20100318 C library: GNU C Library stable release version 2.13 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 14 (Laughlin) Nightly build on bristol ( x86_64, Fedora 14 ) Started at 2012-07-14 03:12:22 BST Ended at 2012-07-14 03:44:55 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 == 619 tests, 1 stderr failure, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) |
|
From: Tom H. <to...@co...> - 2012-07-14 02:36:28
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.51.0.6-6.fc15 20110118 C library: GNU C Library stable release version 2.14.1 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2012-07-14 03:03:07 BST Ended at 2012-07-14 03:36: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 == 621 tests, 2 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) |
|
From: Tom H. <to...@co...> - 2012-07-14 02:29:07
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2012-07-14 02:53:40 BST Ended at 2012-07-14 03:28:53 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 == 621 tests, 3 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/str_tester (stderr) |
|
From: Tom H. <to...@co...> - 2012-07-14 02:13:51
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2012-07-14 02:41:14 BST Ended at 2012-07-14 03:13:34 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 == 621 tests, 10 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/str_tester (stderr) drd/tests/bar_bad (stderr) drd/tests/bar_bad_xml (stderr) drd/tests/pth_cancel_locked (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (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 == 621 tests, 9 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/str_tester (stderr) drd/tests/bar_bad (stderr) drd/tests/bar_bad_xml (stderr) drd/tests/pth_cancel_locked (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2012-07-14 02:56:33.197569181 +0100 --- new.short 2012-07-14 03:13:34.331676176 +0100 *************** *** 8,10 **** ! == 621 tests, 9 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderr) --- 8,11 ---- ! == 621 tests, 10 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == ! gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) |
|
From: Christian B. <bor...@de...> - 2012-07-14 02:11:58
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] Assembler: GNU assembler (GNU Binutils; SUSE Linux Enterprise 11) 2.20.0.20100122-0.7.9 C library: GNU C Library stable release version 2.11.1 (20100118) uname -mrs: Linux 2.6.32.59-0.3-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP1 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z196 (s390x) ) Started at 2012-07-14 03:45:01 CEST Ended at 2012-07-14 04:11:47 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 == 546 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) |
|
From: Christian B. <bor...@de...> - 2012-07-14 02:04:01
|
valgrind revision: 12741 VEX revision: 2428 C compiler: gcc (GCC) 4.5.3 20110121 (Red Hat 4.5.3-5) Assembler: GNU assembler version 2.20.51.0.7-4bb6.fc13 20100318 C library: GNU C Library stable release version 2.12.1 uname -mrs: Linux 3.3.4-53.x.20120504-s390xperformance s390x Vendor version: unknown Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2012-07-14 03:45:01 CEST Ended at 2012-07-14 04:04:07 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 == 545 tests, 5 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinvokeWS (stdoutB) gdbserver_tests/mcinvokeWS (stderrB) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) drd/tests/tc21_pthonce (stderr) |