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
(1) |
2
|
|
3
(5) |
4
(7) |
5
(16) |
6
(7) |
7
(5) |
8
|
9
|
|
10
(3) |
11
(7) |
12
(7) |
13
(15) |
14
(4) |
15
(8) |
16
(10) |
|
17
(1) |
18
(7) |
19
(5) |
20
(17) |
21
(10) |
22
(5) |
23
|
|
24
|
25
|
26
(10) |
27
(21) |
28
(18) |
29
(7) |
30
(4) |
|
From: Christian B. <bor...@de...> - 2011-04-13 20:36:20
|
Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z10 (s390x) ) Started at 2011-04-13 22:10:01 CEST Ended at 2011-04-13 22:36:12 CEST 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 == 460 tests, 6 stderr failures, 0 stdout failures, 0 post failures == none/tests/faultstatus (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (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 == 458 tests, 6 stderr failures, 0 stdout failures, 0 post failures == none/tests/faultstatus (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Apr 13 22:23:21 2011 --- new.short Wed Apr 13 22:36:12 2011 *************** *** 8,10 **** ! == 458 tests, 6 stderr failures, 0 stdout failures, 0 post failures == none/tests/faultstatus (stderr) --- 8,10 ---- ! == 460 tests, 6 stderr failures, 0 stdout failures, 0 post failures == none/tests/faultstatus (stderr) |
|
From: Christian B. <bor...@de...> - 2011-04-13 20:30:11
|
Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2011-04-13 22:10:01 CEST Ended at 2011-04-13 22:29:24 CEST 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 == 459 tests, 6 stderr failures, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (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 == 458 tests, 6 stderr failures, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Apr 13 22:19:16 2011 --- new.short Wed Apr 13 22:29:24 2011 *************** *** 8,10 **** ! == 458 tests, 6 stderr failures, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) --- 8,10 ---- ! == 459 tests, 6 stderr failures, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |
|
From: Roland M. <rol...@nr...> - 2011-04-13 19:41:42
|
On Wed, Apr 13, 2011 at 9:32 PM, Geoff Shannon <ear...@gm...> wrote: > I'm new to contributing to Valgrind and I was looking at the Project > suggestions page and I saw the %f support for VG_(printf) mentioned and I > was wondering if that was still an outstanding issue and if there was > anybody who'd done work on it, or had any thoughts about it. If you add %f please consider %a (%a outputs a C99 hexadecimal floating point value which can be used to do a "lossless" (e.g. %f does a base2/16--->base10 conversion, %a does a standartised base16-based "hexadecimal" notation without any conversion) serialisation and deserialisation of floating-point values), too. This is usefull if you want to log the _exact_ value in a reproduceable manner without loosing some bits in the base2/base16--->base10 conversion... ---- Bye, Roland -- __ . . __ (o.\ \/ /.o) rol...@nr... \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer /O /==\ O\ TEL +49 641 3992797 (;O/ \/ \O;) |
|
From: Geoff S. <ear...@gm...> - 2011-04-13 19:33:03
|
Hey all, I'm new to contributing to Valgrind and I was looking at the Project suggestions page and I saw the %f support for VG_(printf) mentioned and I was wondering if that was still an outstanding issue and if there was anybody who'd done work on it, or had any thoughts about it. thanks, Geoff -- Nothing is ever easy. |
|
From: <sv...@va...> - 2011-04-13 16:05:48
|
Author: sewardj Date: 2011-04-13 17:05:35 +0100 (Wed, 13 Apr 2011) New Revision: 11696 Log: Followup fix for r11693: add a file that was missed. Related to #270115. (Florian Krohm, br...@ac...) Added: trunk/none/tests/s390x/opcodes.h Added: trunk/none/tests/s390x/opcodes.h =================================================================== --- trunk/none/tests/s390x/opcodes.h (rev 0) +++ trunk/none/tests/s390x/opcodes.h 2011-04-13 16:05:35 UTC (rev 11696) @@ -0,0 +1,308 @@ +#ifndef OPCODES_H +#define OPCODES_H + +/* Macro definitions for opcodes that are not generally available and may + require extra facilities to be installed. These macros expand into a + character string suitable for inclusion in an extended ASM statement + in GCC. The macros generate .short and .long directives to encode the + instruction. Those directives are available in all versions of binutils. + + Opcode macros have as many arguments as the opcode has variable fields. + The fields appear in the argument list in the same order as in the opcode + definition from left to right. + + The values to be encoded in those fields must be integer values in + hexadecimal notation without a leading 0x. E.g. FLOGR(3,4) or + NIHF(3,00001234) +*/ + +#define RIL_RI(op1,r1,op2,i2) \ + ".short 0x" #op1 #r1 #op2 "\n\t" \ + ".long 0x" #i2 "\n\t" +#define RIE_RRI0(op1,r1,r3,i2,u0,op2) \ + ".short 0x" #op1 #r1 #r3 "\n\t" \ + ".long 0x" #i2 #u0 #op2 "\n\t" +#define RRF_R0RR2(op,r3,u0,r1,r2) ".long 0x" #op #r3 #u0 #r1 #r2 "\n\t" +#define SIY_IRD(op1,i2,b1,dl1,dh1,op2) \ + ".short 0x" #op1 #i2 "\n\t" \ + ".long 0x" #b1 #dl1 #dh1 #op2 "\n\t" +#define RXY_RRRD(op1,r1,x2,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #x2 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RIL_RU(op1,r1,op2,i2) \ + ".short 0x" #op1 #r1 #op2 "\n\t" \ + ".long 0x" #i2 "\n\t" +#define RIL_RP(op1,r1,op2,i2) \ + ".short 0x" #op1 #r1 #op2 "\n\t" \ + ".long 0x" #i2 "\n\t" +#define SIL_RDI(op,b1,d1,i2) \ + ".short 0x" #op "\n\t" \ + ".long 0x" #b1 #d1 #i2 "\n\t" +#define RIS_RURDI(op1,r1,m3,b4,d4,i2,op2) \ + ".short 0x" #op1 #r1 #m3 "\n\t" \ + ".long 0x" #b4 #d4 #i2 #op2 "\n\t" +#define RIE_RUPI(op1,r1,m3,i4,i2,op2) \ + ".short 0x" #op1 #r1 #m3 "\n\t" \ + ".long 0x" #i4 #i2 #op2 "\n\t" +#define RRS(op1,r1,r2,b4,d4,m3,u0,op2) \ + ".short 0x" #op1 #r1 #r2 "\n\t" \ + ".long 0x" #b4 #d4 #m3 #u0 #op2 "\n\t" +#define RIE_RRPU(op1,r1,r2,i4,m3,u0,op2) \ + ".short 0x" #op1 #r1 #r2 "\n\t" \ + ".long 0x" #i4 #m3 #u0 #op2 "\n\t" +#define RRE_RR(op,u0,r1,r2) ".long 0x" #op #u0 #r1 #r2 "\n\t" +#define SIL_RDU(op,b1,d1,i2) \ + ".short 0x" #op "\n\t" \ + ".long 0x" #b1 #d1 #i2 "\n\t" +#define RIS_RURDU(op1,r1,m3,b4,d4,i2,op2) \ + ".short 0x" #op1 #r1 #m3 "\n\t" \ + ".long 0x" #b4 #d4 #i2 #op2 "\n\t" +#define RIE_RUPU(op1,r1,m3,i4,i2,op2) \ + ".short 0x" #op1 #r1 #m3 "\n\t" \ + ".long 0x" #i4 #i2 #op2 "\n\t" +#define SIY_URD(op1,i2,b1,dl1,dh1,op2) \ + ".short 0x" #op1 #i2 "\n\t" \ + ".long 0x" #b1 #dl1 #dh1 #op2 "\n\t" +#define RSY_RURD(op1,r1,r3,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #r3 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RRF_F0FF2(op,r3,u0,r1,r2) ".long 0x" #op #r3 #u0 #r1 #r2 "\n\t" +#define RSY_RRRD(op1,r1,r3,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #r3 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RSY_AARD(op1,r1,r3,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #r3 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RRE_FF(op,u0,r1,r2) ".long 0x" #op #u0 #r1 #r2 "\n\t" +#define RRE_FR(op,u0,r1,r2) ".long 0x" #op #u0 #r1 #r2 "\n\t" +#define RXY_FRRD(op1,r1,x2,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #x2 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RRE_RF(op,u0,r1,r2) ".long 0x" #op #u0 #r1 #r2 "\n\t" +#define RSY_RDRM(op1,r1,r3,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #r3 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RRF_U0RR(op,r3,u0,r1,r2) ".long 0x" #op #r3 #u0 #r1 #r2 "\n\t" +#define RXY_URRD(op1,r1,x2,b2,dl2,dh2,op2) \ + ".short 0x" #op1 #r1 #x2 "\n\t" \ + ".long 0x" #b2 #dl2 #dh2 #op2 "\n\t" +#define RIL_UP(op1,r1,op2,i2) \ + ".short 0x" #op1 #r1 #op2 "\n\t" \ + ".long 0x" #i2 "\n\t" +#define RIE_RRUUU(op1,r1,r2,i3,i4,i5,op2) \ + ".short 0x" #op1 #r1 #r2 "\n\t" \ + ".long 0x" #i3 #i4 #i5 #op2 "\n\t" + +#define AFI(r1,i2) RIL_RI(c2,r1,9,i2) +#define AGFI(r1,i2) RIL_RI(c2,r1,8,i2) +#define AGHIK(r1,r3,i2) RIE_RRI0(ec,r1,r3,i2,00,d9) +#define AGRK(r3,r1,r2) RRF_R0RR2(b9e8,r3,0,r1,r2) +#define AGSI(i2,b1,dl1,dh1) SIY_IRD(eb,i2,b1,dl1,dh1,7a) +#define AHHHR(r3,r1,r2) RRF_R0RR2(b9c8,r3,0,r1,r2) +#define AHHLR(r3,r1,r2) RRF_R0RR2(b9d8,r3,0,r1,r2) +#define AHIK(r1,r3,i2) RIE_RRI0(ec,r1,r3,i2,00,d8) +#define AHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,7a) +#define AIH(r1,i2) RIL_RI(cc,r1,8,i2) +#define ALFI(r1,i2) RIL_RU(c2,r1,b,i2) +#define ALGFI(r1,i2) RIL_RU(c2,r1,a,i2) +#define ALGHSIK(r1,r3,i2) RIE_RRI0(ec,r1,r3,i2,00,db) +#define ALGRK(r3,r1,r2) RRF_R0RR2(b9ea,r3,0,r1,r2) +#define ALGSI(i2,b1,dl1,dh1) SIY_IRD(eb,i2,b1,dl1,dh1,7e) +#define ALHHHR(r3,r1,r2) RRF_R0RR2(b9ca,r3,0,r1,r2) +#define ALHHLR(r3,r1,r2) RRF_R0RR2(b9da,r3,0,r1,r2) +#define ALHSIK(r1,r3,i2) RIE_RRI0(ec,r1,r3,i2,00,da) +#define ALRK(r3,r1,r2) RRF_R0RR2(b9fa,r3,0,r1,r2) +#define ALSI(i2,b1,dl1,dh1) SIY_IRD(eb,i2,b1,dl1,dh1,6e) +#define ALSIH(r1,i2) RIL_RI(cc,r1,a,i2) +#define ALSIHN(r1,i2) RIL_RI(cc,r1,b,i2) +#define ALY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,5e) +#define ARK(r3,r1,r2) RRF_R0RR2(b9f8,r3,0,r1,r2) +#define ASI(i2,b1,dl1,dh1) SIY_IRD(eb,i2,b1,dl1,dh1,6a) +#define AY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,5a) +#define CFI(r1,i2) RIL_RI(c2,r1,d,i2) +#define CGFI(r1,i2) RIL_RI(c2,r1,c,i2) +#define CGFRL(r1,i2) RIL_RP(c6,r1,c,i2) +#define CGH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,34) +#define CGHRL(r1,i2) RIL_RP(c6,r1,4,i2) +#define CGHSI(b1,d1,i2) SIL_RDI(e558,b1,d1,i2) +#define CGIB(r1,m3,b4,d4,i2) RIS_RURDI(ec,r1,m3,b4,d4,i2,fc) +#define CGIJ(r1,m3,i4,i2) RIE_RUPI(ec,r1,m3,i4,i2,7c) +#define CGRB(r1,r2,b4,d4,m3) RRS(ec,r1,r2,b4,d4,m3,0,e4) +#define CGRJ(r1,r2,i4,m3) RIE_RRPU(ec,r1,r2,i4,m3,0,64) +#define CGRL(r1,i2) RIL_RP(c6,r1,8,i2) +#define CHF(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,cd) +#define CHHR(r1,r2) RRE_RR(b9cd,00,r1,r2) +#define CHHSI(b1,d1,i2) SIL_RDI(e554,b1,d1,i2) +#define CHLR(r1,r2) RRE_RR(b9dd,00,r1,r2) +#define CHRL(r1,i2) RIL_RP(c6,r1,5,i2) +#define CHSI(b1,d1,i2) SIL_RDI(e55c,b1,d1,i2) +#define CHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,79) +#define CIB(r1,m3,b4,d4,i2) RIS_RURDI(ec,r1,m3,b4,d4,i2,fe) +#define CIH(r1,i2) RIL_RI(cc,r1,d,i2) +#define CIJ(r1,m3,i4,i2) RIE_RUPI(ec,r1,m3,i4,i2,7e) +#define CLFHSI(b1,d1,i2) SIL_RDU(e55d,b1,d1,i2) +#define CLFI(r1,i2) RIL_RU(c2,r1,f,i2) +#define CLGFI(r1,i2) RIL_RU(c2,r1,e,i2) +#define CLGFRL(r1,i2) RIL_RP(c6,r1,e,i2) +#define CLGHRL(r1,i2) RIL_RP(c6,r1,6,i2) +#define CLGHSI(b1,d1,i2) SIL_RDU(e559,b1,d1,i2) +#define CLGIB(r1,m3,b4,d4,i2) RIS_RURDU(ec,r1,m3,b4,d4,i2,fd) +#define CLGIJ(r1,m3,i4,i2) RIE_RUPU(ec,r1,m3,i4,i2,7d) +#define CLGRB(r1,r2,b4,d4,m3) RRS(ec,r1,r2,b4,d4,m3,0,e5) +#define CLGRJ(r1,r2,i4,m3) RIE_RRPU(ec,r1,r2,i4,m3,0,65) +#define CLGRL(r1,i2) RIL_RP(c6,r1,a,i2) +#define CLHF(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,cf) +#define CLHHR(r1,r2) RRE_RR(b9cf,00,r1,r2) +#define CLHHSI(b1,d1,i2) SIL_RDU(e555,b1,d1,i2) +#define CLHLR(r1,r2) RRE_RR(b9df,00,r1,r2) +#define CLHRL(r1,i2) RIL_RP(c6,r1,7,i2) +#define CLIB(r1,m3,b4,d4,i2) RIS_RURDU(ec,r1,m3,b4,d4,i2,ff) +#define CLIH(r1,i2) RIL_RU(cc,r1,f,i2) +#define CLIJ(r1,m3,i4,i2) RIE_RUPU(ec,r1,m3,i4,i2,7f) +#define CLIY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,55) +#define CLMY(r1,r3,b2,dl2,dh2) RSY_RURD(eb,r1,r3,b2,dl2,dh2,21) +#define CLRB(r1,r2,b4,d4,m3) RRS(ec,r1,r2,b4,d4,m3,0,f7) +#define CLRJ(r1,r2,i4,m3) RIE_RRPU(ec,r1,r2,i4,m3,0,77) +#define CLRL(r1,i2) RIL_RP(c6,r1,f,i2) +#define CLY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,55) +#define CPSDR(r3,r1,r2) RRF_F0FF2(b372,r3,0,r1,r2) +#define CRB(r1,r2,b4,d4,m3) RRS(ec,r1,r2,b4,d4,m3,0,f6) +#define CRJ(r1,r2,i4,m3) RIE_RRPU(ec,r1,r2,i4,m3,0,76) +#define CRL(r1,i2) RIL_RP(c6,r1,d,i2) +#define CSY(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,14) +#define CVBY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,06) +#define CVDY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,26) +#define CY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,59) +#define EXRL(r1,i2) RIL_RP(c6,r1,0,i2) +#define FLOGR(r1,r2) RRE_RR(b983,00,r1,r2) +#define ICMY(r1,r3,b2,dl2,dh2) RSY_RURD(eb,r1,r3,b2,dl2,dh2,81) +#define ICY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,73) +#define IIHF(r1,i2) RIL_RU(c0,r1,8,i2) +#define IILF(r1,i2) RIL_RU(c0,r1,9,i2) +#define LAA(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,f8) +#define LAAG(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,e8) +#define LAAL(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,fa) +#define LAALG(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,ea) +#define LAEY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,75) +#define LAMY(r1,r3,b2,dl2,dh2) RSY_AARD(eb,r1,r3,b2,dl2,dh2,9a) +#define LAN(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,f4) +#define LANG(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,e4) +#define LAO(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,f6) +#define LAOG(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,e6) +#define LAX(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,f7) +#define LAXG(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,e7) +#define LAY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,71) +#define LB(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,76) +#define LBH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c0) +#define LBR(r1,r2) RRE_RR(b926,00,r1,r2) +#define LCDFR(r1,r2) RRE_FF(b373,00,r1,r2) +#define LDGR(r1,r2) RRE_FR(b3c1,00,r1,r2) +#define LDY(r1,x2,b2,dl2,dh2) RXY_FRRD(ed,r1,x2,b2,dl2,dh2,65) +#define LEY(r1,x2,b2,dl2,dh2) RXY_FRRD(ed,r1,x2,b2,dl2,dh2,64) +#define LFH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,ca) +#define LGB(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,77) +#define LGBR(r1,r2) RRE_RR(b906,00,r1,r2) +#define LGDR(r1,r2) RRE_RF(b3cd,00,r1,r2) +#define LGFI(r1,i2) RIL_RI(c0,r1,1,i2) +#define LGFRL(r1,i2) RIL_RP(c4,r1,c,i2) +#define LGHR(r1,r2) RRE_RR(b907,00,r1,r2) +#define LGHRL(r1,i2) RIL_RP(c4,r1,4,i2) +#define LGRL(r1,i2) RIL_RP(c4,r1,8,i2) +#define LHH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c4) +#define LHR(r1,r2) RRE_RR(b927,00,r1,r2) +#define LHRL(r1,i2) RIL_RP(c4,r1,5,i2) +#define LHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,78) +#define LLC(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,94) +#define LLCH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c2) +#define LLCR(r1,r2) RRE_RR(b994,00,r1,r2) +#define LLGCR(r1,r2) RRE_RR(b984,00,r1,r2) +#define LLGFRL(r1,i2) RIL_RP(c4,r1,e,i2) +#define LLGHR(r1,r2) RRE_RR(b985,00,r1,r2) +#define LLGHRL(r1,i2) RIL_RP(c4,r1,6,i2) +#define LLH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,95) +#define LLHH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c6) +#define LLHR(r1,r2) RRE_RR(b995,00,r1,r2) +#define LLHRL(r1,i2) RIL_RP(c4,r1,2,i2) +#define LLIHF(r1,i2) RIL_RU(c0,r1,e,i2) +#define LLILF(r1,i2) RIL_RU(c0,r1,f,i2) +#define LMY(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,98) +#define LNDFR(r1,r2) RRE_FF(b371,00,r1,r2) +#define LOC(r1,r3,b2,dl2,dh2) RSY_RDRM(eb,r1,r3,b2,dl2,dh2,f2) +#define LOCG(r1,r3,b2,dl2,dh2) RSY_RDRM(eb,r1,r3,b2,dl2,dh2,e2) +#define LOCGR(r3,r1,r2) RRF_U0RR(b9e2,r3,0,r1,r2) +#define LOCR(r3,r1,r2) RRF_U0RR(b9f2,r3,0,r1,r2) +#define LPDFR(r1,r2) RRE_FF(b370,00,r1,r2) +#define LRL(r1,i2) RIL_RP(c4,r1,d,i2) +#define LT(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,12) +#define LTG(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,02) +#define LTGF(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,32) +#define LY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,58) +#define MFY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,5c) +#define MHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,7c) +#define MSFI(r1,i2) RIL_RI(c2,r1,1,i2) +#define MSGFI(r1,i2) RIL_RI(c2,r1,0,i2) +#define MSY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,51) +#define MVGHI(b1,d1,i2) SIL_RDI(e548,b1,d1,i2) +#define MVHHI(b1,d1,i2) SIL_RDI(e544,b1,d1,i2) +#define MVHI(b1,d1,i2) SIL_RDI(e54c,b1,d1,i2) +#define MVIY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,52) +#define NGRK(r3,r1,r2) RRF_R0RR2(b9e4,r3,0,r1,r2) +#define NIHF(r1,i2) RIL_RU(c0,r1,a,i2) +#define NILF(r1,i2) RIL_RU(c0,r1,b,i2) +#define NIY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,54) +#define NRK(r3,r1,r2) RRF_R0RR2(b9f4,r3,0,r1,r2) +#define NY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,54) +#define OGRK(r3,r1,r2) RRF_R0RR2(b9e6,r3,0,r1,r2) +#define OIHF(r1,i2) RIL_RU(c0,r1,c,i2) +#define OILF(r1,i2) RIL_RU(c0,r1,d,i2) +#define OIY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,56) +#define ORK(r3,r1,r2) RRF_R0RR2(b9f6,r3,0,r1,r2) +#define OY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,56) +#define PFD(r1,x2,b2,dl2,dh2) RXY_URRD(e3,r1,x2,b2,dl2,dh2,36) +#define PFDRL(r1,i2) RIL_UP(c6,r1,2,i2) +#define RISBG(r1,r2,i3,i4,i5) RIE_RRUUU(ec,r1,r2,i3,i4,i5,55) +#define RNSBG(r1,r2,i3,i4,i5) RIE_RRUUU(ec,r1,r2,i3,i4,i5,54) +#define ROSBG(r1,r2,i3,i4,i5) RIE_RRUUU(ec,r1,r2,i3,i4,i5,56) +#define RXSBG(r1,r2,i3,i4,i5) RIE_RRUUU(ec,r1,r2,i3,i4,i5,57) +#define SGRK(r3,r1,r2) RRF_R0RR2(b9e9,r3,0,r1,r2) +#define SHHHR(r3,r1,r2) RRF_R0RR2(b9c9,r3,0,r1,r2) +#define SHHLR(r3,r1,r2) RRF_R0RR2(b9d9,r3,0,r1,r2) +#define SHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,7b) +#define SLAK(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,dd) +#define SLFI(r1,i2) RIL_RU(c2,r1,5,i2) +#define SLGFI(r1,i2) RIL_RU(c2,r1,4,i2) +#define SLGRK(r3,r1,r2) RRF_R0RR2(b9eb,r3,0,r1,r2) +#define SLHHHR(r3,r1,r2) RRF_R0RR2(b9cb,r3,0,r1,r2) +#define SLHHLR(r3,r1,r2) RRF_R0RR2(b9db,r3,0,r1,r2) +#define SLLK(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,df) +#define SLRK(r3,r1,r2) RRF_R0RR2(b9fb,r3,0,r1,r2) +#define SLY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,5f) +#define SRAK(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,dc) +#define SRK(r3,r1,r2) RRF_R0RR2(b9f9,r3,0,r1,r2) +#define SRLK(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,de) +#define STAMY(r1,r3,b2,dl2,dh2) RSY_AARD(eb,r1,r3,b2,dl2,dh2,9b) +#define STCH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c3) +#define STCMY(r1,r3,b2,dl2,dh2) RSY_RURD(eb,r1,r3,b2,dl2,dh2,2d) +#define STCY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,72) +#define STDY(r1,x2,b2,dl2,dh2) RXY_FRRD(ed,r1,x2,b2,dl2,dh2,67) +#define STEY(r1,x2,b2,dl2,dh2) RXY_FRRD(ed,r1,x2,b2,dl2,dh2,66) +#define STFH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,cb) +#define STGRL(r1,i2) RIL_RP(c4,r1,b,i2) +#define STHH(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,c7) +#define STHRL(r1,i2) RIL_RP(c4,r1,7,i2) +#define STHY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,70) +#define STMY(r1,r3,b2,dl2,dh2) RSY_RRRD(eb,r1,r3,b2,dl2,dh2,90) +#define STOC(r1,r3,b2,dl2,dh2) RSY_RDRM(eb,r1,r3,b2,dl2,dh2,f3) +#define STOCG(r1,r3,b2,dl2,dh2) RSY_RDRM(eb,r1,r3,b2,dl2,dh2,e3) +#define STRL(r1,i2) RIL_RP(c4,r1,f,i2) +#define STY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,50) +#define SY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,5b) +#define TMY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,51) +#define XGRK(r3,r1,r2) RRF_R0RR2(b9e7,r3,0,r1,r2) +#define XIHF(r1,i2) RIL_RU(c0,r1,6,i2) +#define XILF(r1,i2) RIL_RU(c0,r1,7,i2) +#define XIY(i2,b1,dl1,dh1) SIY_URD(eb,i2,b1,dl1,dh1,57) +#define XRK(r3,r1,r2) RRF_R0RR2(b9f7,r3,0,r1,r2) +#define XY(r1,x2,b2,dl2,dh2) RXY_RRRD(e3,r1,x2,b2,dl2,dh2,57) + +#endif /* OPCODES_H */ |
|
From: <sv...@va...> - 2011-04-13 15:40:22
|
Author: sewardj
Date: 2011-04-13 16:40:10 +0100 (Wed, 13 Apr 2011)
New Revision: 11695
Log:
s390x: reconsider "long displacement" requirement -- hwcaps detection
changes. See #268620. (Florian Krohm, br...@ac...)
Modified:
trunk/README.s390
trunk/coregrind/m_machine.c
Modified: trunk/README.s390
===================================================================
--- trunk/README.s390 2011-04-13 15:15:52 UTC (rev 11694)
+++ trunk/README.s390 2011-04-13 15:40:10 UTC (rev 11695)
@@ -3,7 +3,6 @@
- You need GCC 3.4 or later to compile the s390 port.
- A working combination of autotools is required.
- To run valgrind a z900 machine or any later model is needed.
-- The long displacement facility must be installed on the host machine.
Limitations
Modified: trunk/coregrind/m_machine.c
===================================================================
--- trunk/coregrind/m_machine.c 2011-04-13 15:15:52 UTC (rev 11694)
+++ trunk/coregrind/m_machine.c 2011-04-13 15:40:10 UTC (rev 11695)
@@ -1,4 +1,3 @@
-
/*--------------------------------------------------------------------*/
/*--- Machine-related stuff. m_machine.c ---*/
/*--------------------------------------------------------------------*/
@@ -34,6 +33,8 @@
#include "pub_core_threadstate.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcbase.h"
+#include "pub_core_libcfile.h"
+#include "pub_core_mallocfree.h"
#include "pub_core_machine.h"
#include "pub_core_cpuid.h"
#include "pub_core_libcsignal.h" // for ppc32 messing with SIGILL and SIGFPE
@@ -418,7 +419,7 @@
/* fixs390: anything for s390x here ? */
-/* For hwcaps detection on ppc32/64 and arm we'll need to do SIGILL
+/* For hwcaps detection on ppc32/64, s390x, and arm we'll need to do SIGILL
testing, so we need a VG_MINIMAL_JMP_BUF. */
#if defined(VGA_ppc32) || defined(VGA_ppc64) \
|| defined(VGA_arm) || defined(VGA_s390x)
@@ -493,8 +494,110 @@
}
#endif /* defined(VGA_ppc32) || defined(VGA_ppc64) */
+#ifdef VGA_s390x
+/* Read /proc/cpuinfo. Look for lines like these
+ processor 0: version = FF, identification = 0117C9, machine = 2064
+
+ and return the machine model or VEX_S390X_MODEL_INVALID on error. */
+
+static UInt VG_(get_machine_model)(void)
+{
+ static struct model_map {
+ HChar name[5];
+ UInt id;
+ } model_map[] = {
+ { "2064", VEX_S390X_MODEL_Z900 },
+ { "2066", VEX_S390X_MODEL_Z800 },
+ { "2084", VEX_S390X_MODEL_Z990 },
+ { "2086", VEX_S390X_MODEL_Z890 },
+ { "2094", VEX_S390X_MODEL_Z9_EC },
+ { "2096", VEX_S390X_MODEL_Z9_BC },
+ { "2097", VEX_S390X_MODEL_Z10_EC },
+ { "2098", VEX_S390X_MODEL_Z10_BC },
+ { "2817", VEX_S390X_MODEL_Z196 },
+ };
+
+ Int model, n, fh;
+ SysRes fd;
+ SizeT num_bytes, file_buf_size;
+ HChar *p, *m, *model_name, *file_buf;
+
+ /* Slurp contents of /proc/cpuinfo into FILE_BUF */
+ fd = VG_(open)( "/proc/cpuinfo", 0, VKI_S_IRUSR );
+ if ( sr_isError(fd) ) return VEX_S390X_MODEL_INVALID;
+
+ fh = sr_Res(fd);
+
+ /* Determine the size of /proc/cpuinfo.
+ Work around broken-ness in /proc file system implementation.
+ fstat returns a zero size for /proc/cpuinfo although it is
+ claimed to be a regular file. */
+ num_bytes = 0;
+ file_buf_size = 1000;
+ file_buf = VG_(malloc)("cpuinfo", file_buf_size + 1);
+ while (42) {
+ n = VG_(read)(fh, file_buf, file_buf_size);
+ if (n < 0) break;
+
+ num_bytes += n;
+ if (n < file_buf_size) break; /* reached EOF */
+ }
+
+ if (n < 0) num_bytes = 0; /* read error; ignore contents */
+
+ if (num_bytes > file_buf_size) {
+ VG_(free)( file_buf );
+ VG_(lseek)( fh, 0, VKI_SEEK_SET );
+ file_buf = VG_(malloc)( "cpuinfo", num_bytes + 1 );
+ n = VG_(read)( fh, file_buf, num_bytes );
+ if (n < 0) num_bytes = 0;
+ }
+
+ file_buf[num_bytes] = '\0';
+ VG_(close)(fh);
+
+ /* Parse file */
+ model = VEX_S390X_MODEL_INVALID;
+ for (p = file_buf; *p; ++p) {
+ /* Beginning of line */
+ if (VG_(strncmp)( p, "processor", sizeof "processor" - 1 ) != 0) continue;
+
+ m = VG_(strstr)( p, "machine" );
+ if (m == NULL) continue;
+
+ p = m + sizeof "machine" - 1;
+ while ( VG_(isspace)( *p ) || *p == '=') {
+ if (*p == '\n') goto next_line;
+ ++p;
+ }
+
+ model_name = p;
+ for (n = 0; n < sizeof model_map / sizeof model_map[0]; ++n) {
+ struct model_map *mm = model_map + n;
+ SizeT len = VG_(strlen)( mm->name );
+ if ( VG_(strncmp)( mm->name, model_name, len ) == 0 &&
+ VG_(isspace)( model_name[len] )) {
+ if (mm->id < model) model = mm->id;
+ p = model_name + len;
+ break;
+ }
+ }
+ /* Skip until end-of-line */
+ while (*p != '\n')
+ ++p;
+ next_line: ;
+ }
+
+ VG_(free)( file_buf );
+ VG_(debugLog)(1, "machine", "model = %s\n", model_map[model].name);
+
+ return model;
+}
+
+#endif /* VGA_s390x */
+
/* Determine what insn set and insn set variant the host has, and
record it. To be called once at system startup. Returns False if
this a CPU incapable of running Valgrind. */
@@ -877,7 +980,7 @@
vki_sigaction_toK_t tmp_sigill_act;
volatile Bool have_LDISP, have_EIMM, have_GIE, have_DFP;
- Int r;
+ Int r, model;
/* Unblock SIGILL and stash away the old action for that signal */
VG_(sigemptyset)(&tmp_set);
@@ -942,20 +1045,28 @@
vg_assert(r == 0);
r = VG_(sigprocmask)(VKI_SIG_SETMASK, &saved_set, NULL);
vg_assert(r == 0);
- VG_(debugLog)(1, "machine", "LDISP %d EIMM %d GIE %d DFP %d\n",
- have_LDISP, have_EIMM, have_GIE, have_DFP);
+ va = VexArchS390X;
- /* Check for long displacement facility which is required */
- if (! have_LDISP) return False;
+ model = VG_(get_machine_model)();
- va = VexArchS390X;
+ VG_(debugLog)(1, "machine", "machine %d LDISP %d EIMM %d GIE %d DFP %d\n",
+ model, have_LDISP, have_EIMM, have_GIE, have_DFP);
- vai.hwcaps = 0;
- if (have_LDISP) vai.hwcaps |= VEX_HWCAPS_S390X_LDISP;
+ if (model == VEX_S390X_MODEL_INVALID) return False;
+
+ vai.hwcaps = model;
+ if (have_LDISP) {
+ /* Use long displacement only on machines >= z990. For all other machines
+ it is millicoded and therefore slow. */
+ if (model >= VEX_S390X_MODEL_Z990)
+ vai.hwcaps |= VEX_HWCAPS_S390X_LDISP;
+ }
if (have_EIMM) vai.hwcaps |= VEX_HWCAPS_S390X_EIMM;
if (have_GIE) vai.hwcaps |= VEX_HWCAPS_S390X_GIE;
if (have_DFP) vai.hwcaps |= VEX_HWCAPS_S390X_DFP;
+ VG_(debugLog)(1, "machine", "hwcaps = 0x%x\n", vai.hwcaps);
+
return True;
}
|
|
From: <sv...@va...> - 2011-04-13 15:38:26
|
Author: sewardj
Date: 2011-04-13 16:38:17 +0100 (Wed, 13 Apr 2011)
New Revision: 2126
Log:
s390x: reconsider "long displacement" requirement. We currently
require that the host supports accessing memory using long
displacement. On older machines e.g. z900 that is an expensive
operation, because it is millicoded. It would be a performance win to
relax that requirement. (VEX side changes.) See #268620.
(Florian Krohm, br...@ac...)
Modified:
trunk/priv/host_s390_defs.c
trunk/priv/host_s390_defs.h
trunk/priv/host_s390_isel.c
trunk/priv/main_main.c
trunk/pub/libvex.h
Modified: trunk/priv/host_s390_defs.c
===================================================================
--- trunk/priv/host_s390_defs.c 2011-04-13 15:10:16 UTC (rev 2125)
+++ trunk/priv/host_s390_defs.c 2011-04-13 15:38:17 UTC (rev 2126)
@@ -265,8 +265,6 @@
{
if (fits_unsigned_12bit(offset))
return s390_amode_b12(offset, s390_hreg_guest_state_pointer());
- if (fits_signed_20bit(offset))
- return s390_amode_b20(offset, s390_hreg_guest_state_pointer());
vpanic("invalid guest state offset");
}
@@ -1142,6 +1140,8 @@
static UChar *
s390_emit_AY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ay", r1, dh2, dl2, x2, b2);
@@ -1152,6 +1152,8 @@
static UChar *
s390_emit_AG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ag", r1, dh2, dl2, x2, b2);
@@ -1162,6 +1164,8 @@
static UChar *
s390_emit_AFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "afi", r1, i2);
@@ -1172,6 +1176,8 @@
static UChar *
s390_emit_AGFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "agfi", r1, i2);
@@ -1192,6 +1198,8 @@
static UChar *
s390_emit_AHY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ahy", r1, dh2, dl2, x2, b2);
@@ -1252,6 +1260,8 @@
static UChar *
s390_emit_NY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ny", r1, dh2, dl2, x2, b2);
@@ -1262,6 +1272,8 @@
static UChar *
s390_emit_NG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ng", r1, dh2, dl2, x2, b2);
@@ -1272,6 +1284,8 @@
static UChar *
s390_emit_NIHF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "nihf", r1, i2);
@@ -1282,6 +1296,8 @@
static UChar *
s390_emit_NILF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "nilf", r1, i2);
@@ -1362,6 +1378,8 @@
static UChar *
s390_emit_CY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "cy", r1, dh2, dl2, x2, b2);
@@ -1372,6 +1390,8 @@
static UChar *
s390_emit_CG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "cg", r1, dh2, dl2, x2, b2);
@@ -1382,6 +1402,8 @@
static UChar *
s390_emit_CFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "cfi", r1, i2);
@@ -1402,6 +1424,8 @@
static UChar *
s390_emit_CSY(UChar *p, UChar r1, UChar r3, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC4(MNM, GPR, GPR, SDXB), "csy", r1, r3, dh2, dl2, 0, b2);
@@ -1412,6 +1436,8 @@
static UChar *
s390_emit_CSG(UChar *p, UChar r1, UChar r3, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC4(MNM, GPR, GPR, SDXB), "csg", r1, r3, dh2, dl2, 0, b2);
@@ -1452,6 +1478,8 @@
static UChar *
s390_emit_CLY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "cly", r1, dh2, dl2, x2, b2);
@@ -1462,6 +1490,8 @@
static UChar *
s390_emit_CLG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "clg", r1, dh2, dl2, x2, b2);
@@ -1472,6 +1502,8 @@
static UChar *
s390_emit_CLFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "clfi", r1, i2);
@@ -1522,6 +1554,8 @@
static UChar *
s390_emit_DL(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "dl", r1, dh2, dl2, x2, b2);
@@ -1532,6 +1566,8 @@
static UChar *
s390_emit_DLG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "dlg", r1, dh2, dl2, x2, b2);
@@ -1552,6 +1588,8 @@
static UChar *
s390_emit_DSG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "dsg", r1, dh2, dl2, x2, b2);
@@ -1592,6 +1630,8 @@
static UChar *
s390_emit_XY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "xy", r1, dh2, dl2, x2, b2);
@@ -1602,6 +1642,8 @@
static UChar *
s390_emit_XG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "xg", r1, dh2, dl2, x2, b2);
@@ -1612,6 +1654,8 @@
static UChar *
s390_emit_XIHF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "xihf", r1, i2);
@@ -1622,6 +1666,8 @@
static UChar *
s390_emit_XILF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "xilf", r1, i2);
@@ -1632,6 +1678,8 @@
static UChar *
s390_emit_FLOGR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "flogr", r1, r2);
@@ -1652,6 +1700,8 @@
static UChar *
s390_emit_ICY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "icy", r1, dh2, dl2, x2, b2);
@@ -1662,6 +1712,8 @@
static UChar *
s390_emit_IIHF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "iihf", r1, i2);
@@ -1692,6 +1744,8 @@
static UChar *
s390_emit_IILF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "iilf", r1, i2);
@@ -1772,6 +1826,8 @@
static UChar *
s390_emit_LY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ly", r1, dh2, dl2, x2, b2);
@@ -1782,6 +1838,8 @@
static UChar *
s390_emit_LG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lg", r1, dh2, dl2, x2, b2);
@@ -1792,6 +1850,8 @@
static UChar *
s390_emit_LGF(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lgf", r1, dh2, dl2, x2, b2);
@@ -1802,6 +1862,8 @@
static UChar *
s390_emit_LGFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "lgfi", r1, i2);
@@ -1832,6 +1894,8 @@
static UChar *
s390_emit_LT(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lt", r1, dh2, dl2, x2, b2);
@@ -1842,6 +1906,8 @@
static UChar *
s390_emit_LTG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ltg", r1, dh2, dl2, x2, b2);
@@ -1852,6 +1918,8 @@
static UChar *
s390_emit_LBR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "lbr", r1, r2);
@@ -1862,6 +1930,8 @@
static UChar *
s390_emit_LGBR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "lgbr", r1, r2);
@@ -1872,6 +1942,8 @@
static UChar *
s390_emit_LB(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lb", r1, dh2, dl2, x2, b2);
@@ -1882,6 +1954,8 @@
static UChar *
s390_emit_LGB(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lgb", r1, dh2, dl2, x2, b2);
@@ -1912,6 +1986,8 @@
static UChar *
s390_emit_LHR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "lhr", r1, r2);
@@ -1922,6 +1998,8 @@
static UChar *
s390_emit_LGHR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "lghr", r1, r2);
@@ -1942,6 +2020,8 @@
static UChar *
s390_emit_LHY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lhy", r1, dh2, dl2, x2, b2);
@@ -1952,6 +2032,8 @@
static UChar *
s390_emit_LGH(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "lgh", r1, dh2, dl2, x2, b2);
@@ -1992,6 +2074,8 @@
static UChar *
s390_emit_LLGF(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "llgf", r1, dh2, dl2, x2, b2);
@@ -2002,6 +2086,8 @@
static UChar *
s390_emit_LLCR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "llcr", r1, r2);
@@ -2012,6 +2098,8 @@
static UChar *
s390_emit_LLGCR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "llgcr", r1, r2);
@@ -2022,6 +2110,8 @@
static UChar *
s390_emit_LLC(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "llc", r1, dh2, dl2, x2, b2);
@@ -2032,6 +2122,8 @@
static UChar *
s390_emit_LLGC(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "llgc", r1, dh2, dl2, x2, b2);
@@ -2042,6 +2134,8 @@
static UChar *
s390_emit_LLHR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "llhr", r1, r2);
@@ -2052,6 +2146,8 @@
static UChar *
s390_emit_LLGHR(UChar *p, UChar r1, UChar r2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, GPR), "llghr", r1, r2);
@@ -2062,6 +2158,8 @@
static UChar *
s390_emit_LLH(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "llh", r1, dh2, dl2, x2, b2);
@@ -2072,6 +2170,8 @@
static UChar *
s390_emit_LLGH(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "llgh", r1, dh2, dl2, x2, b2);
@@ -2082,6 +2182,8 @@
static UChar *
s390_emit_LLILF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "llilf", r1, i2);
@@ -2132,6 +2234,8 @@
static UChar *
s390_emit_MFY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_gie);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "mfy", r1, dh2, dl2, x2, b2);
@@ -2152,6 +2256,8 @@
static UChar *
s390_emit_MHY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_gie);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "mhy", r1, dh2, dl2, x2, b2);
@@ -2192,6 +2298,8 @@
static UChar *
s390_emit_ML(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "ml", r1, dh2, dl2, x2, b2);
@@ -2202,6 +2310,8 @@
static UChar *
s390_emit_MLG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "mlg", r1, dh2, dl2, x2, b2);
@@ -2242,6 +2352,8 @@
static UChar *
s390_emit_MSY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "msy", r1, dh2, dl2, x2, b2);
@@ -2252,6 +2364,8 @@
static UChar *
s390_emit_MSG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "msg", r1, dh2, dl2, x2, b2);
@@ -2262,6 +2376,8 @@
static UChar *
s390_emit_MSFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_gie);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "msfi", r1, i2);
@@ -2272,6 +2388,8 @@
static UChar *
s390_emit_MSGFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_gie);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, INT), "msgfi", r1, i2);
@@ -2312,6 +2430,8 @@
static UChar *
s390_emit_OY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "oy", r1, dh2, dl2, x2, b2);
@@ -2322,6 +2442,8 @@
static UChar *
s390_emit_OG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "og", r1, dh2, dl2, x2, b2);
@@ -2332,6 +2454,8 @@
static UChar *
s390_emit_OIHF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "oihf", r1, i2);
@@ -2342,6 +2466,8 @@
static UChar *
s390_emit_OILF(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "oilf", r1, i2);
@@ -2372,6 +2498,8 @@
static UChar *
s390_emit_SLLG(UChar *p, UChar r1, UChar r3, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC4(MNM, GPR, GPR, SDXB), "sllg", r1, r3, dh2, dl2, 0, b2);
@@ -2392,6 +2520,8 @@
static UChar *
s390_emit_SRAG(UChar *p, UChar r1, UChar r3, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC4(MNM, GPR, GPR, SDXB), "srag", r1, r3, dh2, dl2, 0, b2);
@@ -2412,6 +2542,8 @@
static UChar *
s390_emit_SRLG(UChar *p, UChar r1, UChar r3, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC4(MNM, GPR, GPR, SDXB), "srlg", r1, r3, dh2, dl2, 0, b2);
@@ -2432,6 +2564,8 @@
static UChar *
s390_emit_STY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "sty", r1, dh2, dl2, x2, b2);
@@ -2442,6 +2576,8 @@
static UChar *
s390_emit_STG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "stg", r1, dh2, dl2, x2, b2);
@@ -2462,6 +2598,8 @@
static UChar *
s390_emit_STCY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "stcy", r1, dh2, dl2, x2, b2);
@@ -2482,6 +2620,8 @@
static UChar *
s390_emit_STHY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "sthy", r1, dh2, dl2, x2, b2);
@@ -2522,6 +2662,8 @@
static UChar *
s390_emit_SY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "sy", r1, dh2, dl2, x2, b2);
@@ -2532,6 +2674,8 @@
static UChar *
s390_emit_SG(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "sg", r1, dh2, dl2, x2, b2);
@@ -2552,6 +2696,8 @@
static UChar *
s390_emit_SHY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, SDXB), "shy", r1, dh2, dl2, x2, b2);
@@ -2562,6 +2708,8 @@
static UChar *
s390_emit_SLFI(UChar *p, UChar r1, UInt i2)
{
+ vassert(s390_host_has_eimm);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, UINT), "slfi", r1, i2);
@@ -2612,6 +2760,8 @@
static UChar *
s390_emit_LEY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, FPR, SDXB), "ley", r1, dh2, dl2, x2, b2);
@@ -2622,6 +2772,8 @@
static UChar *
s390_emit_LDY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, FPR, SDXB), "ldy", r1, dh2, dl2, x2, b2);
@@ -2642,6 +2794,7 @@
static UChar *
s390_emit_LDGR(UChar *p, UChar r1, UChar r2)
{
+ /* fixs390: PR 268619 */
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, FPR, GPR), "ldgr", r1, r2);
@@ -2652,6 +2805,7 @@
static UChar *
s390_emit_LGDR(UChar *p, UChar r1, UChar r2)
{
+ /* fixs390: PR 268619 */
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, GPR, FPR), "lgdr", r1, r2);
@@ -2712,6 +2866,8 @@
static UChar *
s390_emit_STEY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, FPR, SDXB), "stey", r1, dh2, dl2, x2, b2);
@@ -2722,6 +2878,8 @@
static UChar *
s390_emit_STDY(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
{
+ vassert(s390_host_has_ldisp);
+
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, FPR, SDXB), "stdy", r1, dh2, dl2, x2, b2);
@@ -3423,6 +3581,22 @@
}
+/* r1[32:63] = sign_extend(mem[op2addr][0:7]) */
+static UChar *
+s390_emit_LBw(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
+{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
+ if (s390_host_has_ldisp) {
+ return s390_emit_LB(p, r1, x2, b2, dl2, dh2);
+ }
+
+ p = s390_emit_IC(p, r1, x2, b2, dl2); /* r1[56:63] = mem[op2addr][0:7] */
+ p = s390_emit_SLL(p, r1, R0, 24); /* r1 = r1 << 24 */
+ return s390_emit_SRA(p, r1, R0, 24); /* r1 = r1 >>a 24 */
+}
+
+
/* r1[32:63] = sign_extend(r2[56:63]) */
static UChar *
s390_emit_LBRw(UChar *p, UChar r1, UChar r2)
@@ -3437,6 +3611,22 @@
}
+/* r1[0:63] = sign_extend(mem[op2addr][0:7]) */
+static UChar *
+s390_emit_LGBw(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl2, UChar dh2)
+{
+ vassert(s390_host_has_ldisp || dh2 == 0);
+
+ if (s390_host_has_ldisp) {
+ return s390_emit_LGB(p, r1, x2, b2, dl2, dh2);
+ }
+
+ p = s390_emit_IC(p, r1, x2, b2, dl2); /* r1[56:63] = mem[op2addr][0:7] */
+ p = s390_emit_SLLG(p, r1, r1, R0, DISP20(56)); /* r1 = r1 << 56 */
+ return s390_emit_SRAG(p, r1, r1, R0, DISP20(56)); /* r1 = r1 >>a 56 */
+}
+
+
/* r1[0:63] = sign_extend(r2[56:63]) */
static UChar *
s390_emit_LGBRw(UChar *p, UChar r1, UChar r2)
@@ -4861,9 +5051,9 @@
return s390_emit_LDR(buf, dst, src);
} else {
if (dst_class == HRcFlt64 && src_class == HRcInt64)
- return s390_emit_LDGR(buf, dst, src);
+ return s390_emit_LDGR(buf, dst, src); /* fixs390: PR 268619 */
if (dst_class == HRcInt64 && src_class == HRcFlt64)
- return s390_emit_LGDR(buf, dst, src);
+ return s390_emit_LGDR(buf, dst, src); /* fixs390: PR 268619 */
/* A move between floating point registers and general purpose
registers of different size should never occur and indicates
an error elsewhere. */
@@ -4968,6 +5158,8 @@
/* Shift operands are special here as there are no opcodes that
allow a memory operand. So we first load the 2nd operand to R0. */
+
+ /* fixs390: NO. Using R0 as the base will ignore the register contents. */
if (insn->variant.alu.tag == S390_ALU_LSH ||
insn->variant.alu.tag == S390_ALU_RSH ||
insn->variant.alu.tag == S390_ALU_RSHA) {
@@ -5245,6 +5437,11 @@
buf = s390_emit_load_64imm(buf, R0, value);
return s390_emit_XGR(buf, dst, R0);
+ /* No special considerations for long displacement here. Only the six
+ least significant bits of VALUE will be taken; all other bits are
+ ignored. So the DH2 bits are irrelevant and do not influence the
+ shift operation, independent of whether long-displacement is available
+ or not. */
case S390_ALU_LSH: return s390_emit_SLLG(buf, dst, dst, 0, DISP20(value));
case S390_ALU_RSH: return s390_emit_SRLG(buf, dst, dst, 0, DISP20(value));
case S390_ALU_RSHA: return s390_emit_SRAG(buf, dst, dst, 0, DISP20(value));
@@ -5328,15 +5525,14 @@
case 1:
if (insn->size == 4 || insn->size == 2) {
if (sign_extend)
- return s390_emit_LB(buf, r1, x, b, DISP20(d));
+ return s390_emit_LBw(buf, r1, x, b, DISP20(d));
else
return s390_emit_LLCw(buf, r1, x, b, DISP20(d));
}
if (insn->size == 8) {
if (sign_extend)
- return s390_emit_LGB(buf, r1, x, b, DISP20(d));
+ return s390_emit_LGBw(buf, r1, x, b, DISP20(d));
else
- /* No wrapper required. Opcode exists as RXE and RXY */
return s390_emit_LLGC(buf, r1, x, b, DISP20(d));
}
goto fail;
@@ -5358,7 +5554,6 @@
goto fail;
}
if (insn->size == 8) { /* 16 --> 64 */
- /* No wrappers required. Opcodes exist as RXE and RXY */
if (sign_extend)
return s390_emit_LGH(buf, r1, x, b, DISP20(d));
else
@@ -5368,7 +5563,6 @@
case 4:
if (insn->size == 8) { /* 32 --> 64 */
- /* No wrappers required. Opcodes exist as RXE and RXY */
if (sign_extend)
return s390_emit_LGF(buf, r1, x, b, DISP20(d));
else
Modified: trunk/priv/host_s390_defs.h
===================================================================
--- trunk/priv/host_s390_defs.h 2011-04-13 15:10:16 UTC (rev 2125)
+++ trunk/priv/host_s390_defs.h 2011-04-13 15:38:17 UTC (rev 2126)
@@ -483,6 +483,8 @@
extern const VexArchInfo *s390_archinfo_host;
/* Convenience macros to test installed facilities */
+#define s390_host_has_ldisp \
+ (s390_archinfo_host->hwcaps & (VEX_HWCAPS_S390X_LDISP))
#define s390_host_has_eimm \
(s390_archinfo_host->hwcaps & (VEX_HWCAPS_S390X_EIMM))
#define s390_host_has_gie \
Modified: trunk/priv/host_s390_isel.c
===================================================================
--- trunk/priv/host_s390_isel.c 2011-04-13 15:10:16 UTC (rev 2125)
+++ trunk/priv/host_s390_isel.c 2011-04-13 15:38:17 UTC (rev 2126)
@@ -227,7 +227,9 @@
if (ulong_fits_unsigned_12bit(value)) {
return s390_amode_b12((Int)value, s390_isel_int_expr(env, arg1));
}
- if (ulong_fits_signed_20bit(value)) {
+ /* If long-displacement is not available, do not construct B20 or
+ BX20 amodes because code generation cannot handle them. */
+ if (s390_host_has_ldisp && ulong_fits_signed_20bit(value)) {
return s390_amode_b20((Int)value, s390_isel_int_expr(env, arg1));
}
}
@@ -2350,9 +2352,8 @@
/* KLUDGE: export archinfo_host. */
s390_archinfo_host = archinfo_host;
-
/* Do some sanity checks */
- vassert((hwcaps_host & ~(VEX_HWCAPS_S390X_ALL)) == 0);
+ vassert((VEX_HWCAPS_S390X(hwcaps_host) & ~(VEX_HWCAPS_S390X_ALL)) == 0);
/* Make up an initial environment to use. */
env = LibVEX_Alloc(sizeof(ISelEnv));
Modified: trunk/priv/main_main.c
===================================================================
--- trunk/priv/main_main.c 2011-04-13 15:10:16 UTC (rev 2125)
+++ trunk/priv/main_main.c 2011-04-13 15:38:17 UTC (rev 2126)
@@ -934,6 +934,8 @@
const UInt GE = VEX_HWCAPS_S390X_GIE;
const UInt DF = VEX_HWCAPS_S390X_DFP;
+ hwcaps = VEX_HWCAPS_S390X(hwcaps);
+
if (hwcaps == (LD)) return "s390x-ldisp";
if (hwcaps == (LD|EI)) return "s390x-ldisp-eimm";
if (hwcaps == (LD|GE)) return "s390x-ldisp-gie";
@@ -943,7 +945,7 @@
if (hwcaps == (LD|GE|DF)) return "s390x-ldisp-gie-dfp";
if (hwcaps == (LD|EI|GE|DF)) return "s390x-ldisp-eimm-gie-dfp";
- return NULL;
+ return "s390-zarch";
}
/* ---- */
Modified: trunk/pub/libvex.h
===================================================================
--- trunk/pub/libvex.h 2011-04-13 15:10:16 UTC (rev 2125)
+++ trunk/pub/libvex.h 2011-04-13 15:38:17 UTC (rev 2126)
@@ -94,18 +94,45 @@
#define VEX_HWCAPS_PPC64_GX (1<<14) /* Graphics extns
(fres,frsqrte,fsel,stfiwx) */
-/* s390x: baseline capability is z/Architecture with long displacement */
-#define VEX_HWCAPS_S390X_LDISP (1<<13) /* Long-displacement facility */
-#define VEX_HWCAPS_S390X_EIMM (1<<14) /* Extended-immediate facility */
-#define VEX_HWCAPS_S390X_GIE (1<<15) /* General-instruction-extension
- facility */
-#define VEX_HWCAPS_S390X_DFP (1<<16) /* Decimal floating point facility */
+/* s390x: Hardware capability encoding
+
+ Bits Information
+ [26:31] Machine model
+ [25] Long displacement facility
+ [24] Extended-immediate facility
+ [23] General-instruction-extension facility
+ [22] Decimal floating point facility
+ [0:21] Currently unused; reserved for future use
+*/
+
+/* Model numbers must be assigned in chronological order.
+ They are used as array index. */
+#define VEX_S390X_MODEL_Z900 0
+#define VEX_S390X_MODEL_Z800 1
+#define VEX_S390X_MODEL_Z990 2
+#define VEX_S390X_MODEL_Z890 3
+#define VEX_S390X_MODEL_Z9_EC 4
+#define VEX_S390X_MODEL_Z9_BC 5
+#define VEX_S390X_MODEL_Z10_EC 6
+#define VEX_S390X_MODEL_Z10_BC 7
+#define VEX_S390X_MODEL_Z196 8
+#define VEX_S390X_MODEL_INVALID 9
+#define VEX_S390X_MODEL_MASK 0x3F
+
+#define VEX_HWCAPS_S390X_LDISP (1<<6) /* Long-displacement facility */
+#define VEX_HWCAPS_S390X_EIMM (1<<7) /* Extended-immediate facility */
+#define VEX_HWCAPS_S390X_GIE (1<<8) /* General-instruction-extension facility */
+#define VEX_HWCAPS_S390X_DFP (1<<9) /* Decimal floating point facility */
+
/* Special value representing all available s390x hwcaps */
#define VEX_HWCAPS_S390X_ALL (VEX_HWCAPS_S390X_LDISP | \
VEX_HWCAPS_S390X_EIMM | \
VEX_HWCAPS_S390X_GIE | \
VEX_HWCAPS_S390X_DFP)
+#define VEX_HWCAPS_S390X(x) ((x) & ~VEX_S390X_MODEL_MASK)
+#define VEX_S390X_MODEL(x) ((x) & VEX_S390X_MODEL_MASK)
+
/* arm: baseline capability is ARMv4 */
/* Bits 5:0 - architecture level (e.g. 5 for v5, 6 for v6 etc) */
#define VEX_HWCAPS_ARM_VFP (1<<6) /* VFP extension */
|
|
From: <sv...@va...> - 2011-04-13 15:16:04
|
Author: sewardj
Date: 2011-04-13 16:15:52 +0100 (Wed, 13 Apr 2011)
New Revision: 11694
Log:
Test cases for #270082 (s390x: Make sure to point the PSW address to
the next address on SIGILL)
(Christian Borntraeger <bor...@de...>)
Added:
trunk/none/tests/s390x/op_exception.c
trunk/none/tests/s390x/op_exception.stderr.exp
trunk/none/tests/s390x/op_exception.stdout.exp
trunk/none/tests/s390x/op_exception.vgtest
Modified:
trunk/none/tests/s390x/Makefile.am
Modified: trunk/none/tests/s390x/Makefile.am
===================================================================
--- trunk/none/tests/s390x/Makefile.am 2011-04-13 14:57:44 UTC (rev 11693)
+++ trunk/none/tests/s390x/Makefile.am 2011-04-13 15:15:52 UTC (rev 11694)
@@ -4,7 +4,8 @@
INSN_TESTS = clc clcle cvb cvd icm lpr tcxb lam_stam xc mvst add sub mul \
and or xor insert div srst fold_And16 flogr sub_EI add_EI \
- and_EI or_EI xor_EI insert_EI mul_GE add_GE condloadstore
+ and_EI or_EI xor_EI insert_EI mul_GE add_GE condloadstore \
+ op_exception
check_PROGRAMS = $(INSN_TESTS) \
ex_sig \
Added: trunk/none/tests/s390x/op_exception.c
===================================================================
--- trunk/none/tests/s390x/op_exception.c (rev 0)
+++ trunk/none/tests/s390x/op_exception.c 2011-04-13 15:15:52 UTC (rev 11694)
@@ -0,0 +1,38 @@
+/* zArchitecture specifies that operation exception(illegal opcode) is
+suppressing. That means that the program check old psw will point to
+the instruction after the illegal one (according to the calculated length).
+There are some programs out there that use this mechanism to detect available
+intruction (sigh).
+This patch checks, that valgrind makes forard progress. */
+#include <signal.h>
+#include <stdio.h>
+#include <string.h>
+static volatile int got_ill;
+static void handle_ill(int sig)
+{
+ got_ill = 1;
+}
+int main()
+{
+ struct sigaction sa;
+
+ memset(&sa, 0, sizeof(sa));
+ sa.sa_handler = handle_ill;
+ sigaction(SIGILL, &sa, NULL);
+
+ got_ill = 0;
+ /* most architectures loop here, but on s390 this would increase the
+ PSW by 2 and then by 2 */
+ asm volatile(".long 0\n");
+ if (got_ill)
+ printf("0x00000000 does not loop\n");
+
+ got_ill = 0;
+ /* most architectures loop here, but on s390 this would increase the
+ PSW by 6 and then by 2*/
+ asm volatile(".long 0xffffffff\n.long 0xffff0000\n");
+ if (got_ill)
+ printf("0xffffffff does not loop\n");
+
+}
+
Added: trunk/none/tests/s390x/op_exception.stderr.exp
===================================================================
--- trunk/none/tests/s390x/op_exception.stderr.exp (rev 0)
+++ trunk/none/tests/s390x/op_exception.stderr.exp 2011-04-13 15:15:52 UTC (rev 11694)
@@ -0,0 +1,54 @@
+
+vex s390->IR: unknown insn: 0000
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: main (op_exception.c:23)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. There are two possible reasons for this.
+1. Your program has a bug and erroneously jumped to a non-code
+ location. If you are running Memcheck and you just saw a
+ warning about a bad jump, it's probably your program's fault.
+2. The instruction is legitimate but Valgrind doesn't handle it,
+ i.e. it's Valgrind's fault. If you think this is the case or
+ you are not sure, please let us know and we'll try to fix it.
+Either way, Valgrind will now raise a SIGILL signal which will
+probably kill your program.
+vex s390->IR: unknown insn: 0000
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: main (op_exception.c:27)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. There are two possible reasons for this.
+1. Your program has a bug and erroneously jumped to a non-code
+ location. If you are running Memcheck and you just saw a
+ warning about a bad jump, it's probably your program's fault.
+2. The instruction is legitimate but Valgrind doesn't handle it,
+ i.e. it's Valgrind's fault. If you think this is the case or
+ you are not sure, please let us know and we'll try to fix it.
+Either way, Valgrind will now raise a SIGILL signal which will
+probably kill your program.
+vex s390->IR: unknown insn: FFFF FFFF FFFF
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: main (op_exception.c:30)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. There are two possible reasons for this.
+1. Your program has a bug and erroneously jumped to a non-code
+ location. If you are running Memcheck and you just saw a
+ warning about a bad jump, it's probably your program's fault.
+2. The instruction is legitimate but Valgrind doesn't handle it,
+ i.e. it's Valgrind's fault. If you think this is the case or
+ you are not sure, please let us know and we'll try to fix it.
+Either way, Valgrind will now raise a SIGILL signal which will
+probably kill your program.
+vex s390->IR: unknown insn: 0000
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: main (op_exception.c:34)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. There are two possible reasons for this.
+1. Your program has a bug and erroneously jumped to a non-code
+ location. If you are running Memcheck and you just saw a
+ warning about a bad jump, it's probably your program's fault.
+2. The instruction is legitimate but Valgrind doesn't handle it,
+ i.e. it's Valgrind's fault. If you think this is the case or
+ you are not sure, please let us know and we'll try to fix it.
+Either way, Valgrind will now raise a SIGILL signal which will
+probably kill your program.
+
Added: trunk/none/tests/s390x/op_exception.stdout.exp
===================================================================
--- trunk/none/tests/s390x/op_exception.stdout.exp (rev 0)
+++ trunk/none/tests/s390x/op_exception.stdout.exp 2011-04-13 15:15:52 UTC (rev 11694)
@@ -0,0 +1,2 @@
+0x00000000 does not loop
+0xffffffff does not loop
Added: trunk/none/tests/s390x/op_exception.vgtest
===================================================================
--- trunk/none/tests/s390x/op_exception.vgtest (rev 0)
+++ trunk/none/tests/s390x/op_exception.vgtest 2011-04-13 15:15:52 UTC (rev 11694)
@@ -0,0 +1 @@
+prog: op_exception
|
|
From: <sv...@va...> - 2011-04-13 15:10:28
|
Author: sewardj
Date: 2011-04-13 16:10:16 +0100 (Wed, 13 Apr 2011)
New Revision: 2125
Log:
s390x: Make sure to point the PSW address to the next address on SIGILL
Fixes #270082. (Christian Borntraeger <bor...@de...>)
Modified:
trunk/priv/guest_s390_toIR.c
Modified: trunk/priv/guest_s390_toIR.c
===================================================================
--- trunk/priv/guest_s390_toIR.c 2011-04-13 14:44:29 UTC (rev 2124)
+++ trunk/priv/guest_s390_toIR.c 2011-04-13 15:10:16 UTC (rev 2125)
@@ -12947,7 +12947,7 @@
addStmtToIRSB(irsb, IRStmt_Put(S390_GUEST_OFFSET(guest_IA),
mkaddr_expr(guest_IA_curr_instr)));
- irsb->next = mkaddr_expr(guest_IA_curr_instr);
+ irsb->next = mkaddr_expr(guest_IA_next_instr);
irsb->jumpkind = Ijk_NoDecode;
dres.whatNext = Dis_StopHere;
dres.len = 0;
|
|
From: <sv...@va...> - 2011-04-13 14:57:55
|
Author: sewardj Date: 2011-04-13 15:57:44 +0100 (Wed, 13 Apr 2011) New Revision: 11693 Log: s390x: rewrite some testcases. To make my testing and debugging life simpler, I've rewritten those testcases from none/tests/s390x that require binutils to recognize opcodes defined in the extended-immediate and general-instruction-extension facilities. As a side effect this change removes the special casing in none/tests/s390x/Makefile.am and the configury bits to support it. Fixes #270115. (Florian Krohm, br...@ac...) Modified: trunk/configure.in trunk/none/tests/s390x/Makefile.am trunk/none/tests/s390x/add.c trunk/none/tests/s390x/add.h trunk/none/tests/s390x/add.stdout.exp trunk/none/tests/s390x/add_EI.c trunk/none/tests/s390x/add_EI.stdout.exp trunk/none/tests/s390x/add_GE.c trunk/none/tests/s390x/add_GE.stdout.exp trunk/none/tests/s390x/and.c trunk/none/tests/s390x/and.h trunk/none/tests/s390x/and_EI.c trunk/none/tests/s390x/and_EI.stdout.exp trunk/none/tests/s390x/condloadstore.c trunk/none/tests/s390x/condloadstore.stdout.exp trunk/none/tests/s390x/flogr.c trunk/none/tests/s390x/insert.c trunk/none/tests/s390x/insert.h trunk/none/tests/s390x/insert_EI.c trunk/none/tests/s390x/insert_EI.stdout.exp trunk/none/tests/s390x/mul.c trunk/none/tests/s390x/mul.h trunk/none/tests/s390x/mul_GE.c trunk/none/tests/s390x/mul_GE.stdout.exp trunk/none/tests/s390x/or.c trunk/none/tests/s390x/or.h trunk/none/tests/s390x/or_EI.c trunk/none/tests/s390x/or_EI.stdout.exp trunk/none/tests/s390x/sub.c trunk/none/tests/s390x/sub.h trunk/none/tests/s390x/sub.stdout.exp trunk/none/tests/s390x/sub_EI.c trunk/none/tests/s390x/sub_EI.stdout.exp trunk/none/tests/s390x/xor.c trunk/none/tests/s390x/xor.h trunk/none/tests/s390x/xor_EI.c trunk/none/tests/s390x/xor_EI.stdout.exp [... diff too large to include ...] |
|
From: <sv...@va...> - 2011-04-13 14:44:46
|
Author: sewardj
Date: 2011-04-13 15:44:29 +0100 (Wed, 13 Apr 2011)
New Revision: 2124
Log:
s390x: minor code generation tweaks. There were a few loose ends
(identified by fixs390) in code generation that are fixed by the
attached patch:
- use of SLFI insn if available
- unnecessary vpanic
An out-of-date comment is also removed.
Fixes #269736. (Florian Krohm <br...@ac...>)
Modified:
trunk/priv/host_s390_defs.c
Modified: trunk/priv/host_s390_defs.c
===================================================================
--- trunk/priv/host_s390_defs.c 2011-04-05 14:04:53 UTC (rev 2123)
+++ trunk/priv/host_s390_defs.c 2011-04-13 14:44:29 UTC (rev 2124)
@@ -2570,6 +2570,16 @@
static UChar *
+s390_emit_SLGFI(UChar *p, UChar r1, UInt i2)
+{
+ if (unlikely(vex_traceflags & VEX_TRACE_ASM))
+ s390_disasm(ENC3(MNM, GPR, UINT), "slgfi", r1, i2);
+
+ return emit_RIL(p, 0xc20400000000ULL, r1, i2);
+}
+
+
+static UChar *
s390_emit_LDR(UChar *p, UChar r1, UChar r2)
{
if (unlikely(vex_traceflags & VEX_TRACE_ASM))
@@ -3218,14 +3228,7 @@
return emit_RRE(p, 0xb34b0000, r1, r2);
}
-/* For both 32-bit and 64-bit clients we can use the instructions that
- were available on z900. See binutils/opcodes/s390-opc.txt
- Note, that entering a wrapper for a z/arch instruction does not
- imply that the client is a 64-bit client. It only means that this
- instruction is a good match for the expression at hand.
-*/
-
/* Provide a symbolic name for register "R0" */
#define R0 0
@@ -3617,7 +3620,21 @@
}
+/* r1[0:63] = r1[0:63] - zero_extend(i2) */
static UChar *
+s390_emit_SLGFIw(UChar *p, UChar r1, UInt i2)
+{
+ if (s390_host_has_eimm) {
+ return s390_emit_SLGFI(p, r1, i2);
+ }
+
+ /* Load zero-extended 32 bit immediate to R0 then subtract */
+ p = s390_emit_load_64imm(p, R0, i2);
+ return s390_emit_SGR(p, r1, R0);
+}
+
+
+static UChar *
s390_emit_LTw(UChar *p, UChar r1, UChar x2, UChar b2, UShort dl, UChar dh)
{
if (s390_host_has_eimm) {
@@ -5128,9 +5145,7 @@
return s390_emit_AHI(buf, dst, value);
case S390_ALU_SUB:
- /* fixs390 later: as an optimization could perhaps use SLFI ? */
- buf = s390_emit_LHI(buf, R0, value);
- return s390_emit_SR(buf, dst, R0);
+ return s390_emit_SLFIw(buf, dst, value);
case S390_ALU_MUL:
return s390_emit_MHI(buf, dst, value);
@@ -5187,7 +5202,9 @@
return s390_emit_AGR(buf, dst, R0);
case S390_ALU_SUB:
- /* fixs390 later: as an optimization could perhaps use SLFI ? */
+ if (ulong_fits_unsigned_32bit(value)) {
+ return s390_emit_SLGFIw(buf, dst, value);
+ }
/* Load value into R0; then subtract from destination reg */
buf = s390_emit_load_64imm(buf, R0, value);
return s390_emit_SGR(buf, dst, R0);
@@ -5819,7 +5836,7 @@
if (signed_multiply)
return s390_emit_MFYw(buf, r1, x, b, DISP20(d));
else
- vpanic("s390_insn_mul_emit");
+ return s390_emit_ML(buf, r1, x, b, DISP20(d));
}
goto fail;
@@ -5919,11 +5936,11 @@
case S390_AMODE_B20:
case S390_AMODE_BX20:
- buf = s390_emit_LY(buf, R0, x, b, DISP20(d));
- if (signed_divide)
+ if (signed_divide) {
+ buf = s390_emit_LY(buf, R0, x, b, DISP20(d));
return s390_emit_DR(buf, r1, R0);
- else
- return s390_emit_DLR(buf, r1, R0);
+ } else
+ return s390_emit_DL(buf, r1, x, b, DISP20(d));
}
goto fail;
|
|
From: Bart V. A. <bva...@ac...> - 2011-04-13 07:35:30
|
Nightly build on cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) Started at 2011-04-13 02:00:06 EDT Ended at 2011-04-13 03:35:07 EDT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 457 tests, 12 stderr failures, 9 stdout failures, 0 post failures == memcheck/tests/deep_templates (stdout) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) callgrind/tests/simwork-both (stdout) callgrind/tests/simwork-both (stderr) callgrind/tests/simwork-branch (stdout) callgrind/tests/simwork-branch (stderr) none/tests/empty-exe (stderr) none/tests/faultstatus (stderr) none/tests/linux/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) |
|
From: Tom H. <th...@cy...> - 2011-04-13 02:53:36
|
Nightly build on vauxhall ( x86_64, Fedora 14 ) Started at 2011-04-13 03:20:03 BST Ended at 2011-04-13 03:53: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 == 569 tests, 4 stderr failures, 0 stdout failures, 0 post failures == memcheck/tests/linux/stack_switch (stderr) memcheck/tests/origin5-bz2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-ptrcheck/tests/bad_percentify (stderr) |
|
From: Rich C. <rc...@wi...> - 2011-04-13 02:52:18
|
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.1-1.2-desktop x86_64 )
Started at 2011-04-12 21:30:01 CDT
Ended at 2011-04-12 21:52:04 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
== 569 tests, 76 stderr failures, 56 stdout failures, 3 post failures ==
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/x86/bug152022 (stderr)
memcheck/tests/x86/espindola2 (stderr)
memcheck/tests/x86/fpeflags (stderr)
memcheck/tests/x86/fprem (stdout)
memcheck/tests/x86/fprem (stderr)
memcheck/tests/x86/fxsave (stdout)
memcheck/tests/x86/fxsave (stderr)
memcheck/tests/x86/insn_basic (stdout)
memcheck/tests/x86/insn_basic (stderr)
memcheck/tests/x86/insn_cmov (stdout)
memcheck/tests/x86/insn_cmov (stderr)
memcheck/tests/x86/insn_fpu (stdout)
memcheck/tests/x86/insn_fpu (stderr)
memcheck/tests/x86/insn_mmx (stdout)
memcheck/tests/x86/insn_mmx (stderr)
memcheck/tests/x86/insn_sse (stdout)
memcheck/tests/x86/insn_sse (stderr)
memcheck/tests/x86/insn_sse2 (stdout)
memcheck/tests/x86/insn_sse2 (stderr)
memcheck/tests/x86/more_x86_fp (stdout)
memcheck/tests/x86/more_x86_fp (stderr)
memcheck/tests/x86/pushfpopf (stdout)
memcheck/tests/x86/pushfpopf (stderr)
memcheck/tests/x86/pushfw_x86 (stdout)
memcheck/tests/x86/pushfw_x86 (stderr)
memcheck/tests/x86/pushpopmem (stdout)
memcheck/tests/x86/pushpopmem (stderr)
memcheck/tests/x86/sse1_memory (stdout)
memcheck/tests/x86/sse1_memory (stderr)
memcheck/tests/x86/sse2_memory (stdout)
memcheck/tests/x86/sse2_memory (stderr)
memcheck/tests/x86/tronical (stderr)
memcheck/tests/x86/xor-undef-x86 (stdout)
memcheck/tests/x86/xor-undef-x86 (stderr)
memcheck/tests/x86-linux/bug133694 (stdout)
memcheck/tests/x86-linux/bug133694 (stderr)
memcheck/tests/x86-linux/int3-x86 (stdout)
memcheck/tests/x86-linux/int3-x86 (stderr)
memcheck/tests/x86-linux/scalar (stderr)
memcheck/tests/x86-linux/scalar_exit_group (stderr)
memcheck/tests/x86-linux/scalar_fork (stderr)
memcheck/tests/x86-linux/scalar_supp (stderr)
memcheck/tests/x86-linux/scalar_vfork (stderr)
cachegrind/tests/x86/fpu-28-108 (stderr)
none/tests/x86/aad_aam (stdout)
none/tests/x86/aad_aam (stderr)
none/tests/x86/badseg (stdout)
none/tests/x86/badseg (stderr)
none/tests/x86/bt_everything (stdout)
none/tests/x86/bt_everything (stderr)
none/tests/x86/bt_literal (stdout)
none/tests/x86/bt_literal (stderr)
none/tests/x86/bug125959-x86 (stdout)
none/tests/x86/bug125959-x86 (stderr)
none/tests/x86/bug126147-x86 (stdout)
none/tests/x86/bug126147-x86 (stderr)
none/tests/x86/bug132813-x86 (stdout)
none/tests/x86/bug132813-x86 (stderr)
none/tests/x86/bug135421-x86 (stdout)
none/tests/x86/bug135421-x86 (stderr)
none/tests/x86/bug137714-x86 (stdout)
none/tests/x86/bug137714-x86 (stderr)
none/tests/x86/bug152818-x86 (stdout)
none/tests/x86/bug152818-x86 (stderr)
none/tests/x86/cmpxchg8b (stdout)
none/tests/x86/cmpxchg8b (stderr)
none/tests/x86/cpuid (stdout)
none/tests/x86/cpuid (stderr)
none/tests/x86/cse_fail (stdout)
none/tests/x86/cse_fail (stderr)
none/tests/x86/fcmovnu (stdout)
none/tests/x86/fcmovnu (stderr)
none/tests/x86/fpu_lazy_eflags (stdout)
none/tests/x86/fpu_lazy_eflags (stderr)
none/tests/x86/fxtract (stdout)
none/tests/x86/fxtract (stderr)
none/tests/x86/getseg (stdout)
none/tests/x86/getseg (stderr)
none/tests/x86/incdec_alt (stdout)
none/tests/x86/incdec_alt (stderr)
none/tests/x86/insn_basic (stdout)
none/tests/x86/insn_basic (stderr)
none/tests/x86/insn_cmov (stdout)
none/tests/x86/insn_cmov (stderr)
none/tests/x86/insn_fpu (stdout)
none/tests/x86/insn_fpu (stderr)
none/tests/x86/insn_mmx (stdout)
none/tests/x86/insn_mmx (stderr)
none/tests/x86/insn_sse (stdout)
none/tests/x86/insn_sse (stderr)
none/tests/x86/insn_sse2 (stdout)
none/tests/x86/insn_sse2 (stderr)
none/tests/x86/insn_sse3 (stdout)
none/tests/x86/insn_sse3 (stderr)
none/tests/x86/insn_ssse3 (stdout)
none/tests/x86/insn_ssse3 (stderr)
none/tests/x86/jcxz (stdout)
none/tests/x86/jcxz (stderr)
none/tests/x86/lahf (stdout)
none/tests/x86/lahf (stderr)
none/tests/x86/looper (stdout)
none/tests/x86/looper (stderr)
none/tests/x86/movx (stdout)
none/tests/x86/movx (stderr)
none/tests/x86/pushpopseg (stdout)
none/tests/x86/pushpopseg (stderr)
none/tests/x86/sbbmisc (stdout)
none/tests/x86/sbbmisc (stderr)
none/tests/x86/shift_ndep (stdout)
none/tests/x86/shift_ndep (stderr)
none/tests/x86/smc1 (stdout)
none/tests/x86/smc1 (stderr)
none/tests/x86/ssse3_misaligned (stderr)
none/tests/x86/x86locked (stdout)
none/tests/x86/x86locked (stderr)
none/tests/x86/xadd (stdout)
none/tests/x86/xadd (stderr)
none/tests/x86-linux/seg_override (stdout)
none/tests/x86-linux/seg_override (stderr)
none/tests/x86-linux/sigcontext (stdout)
none/tests/x86-linux/sigcontext (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
exp-ptrcheck/tests/bad_percentify (stderr)
exp-bbv/tests/x86/complex_rep (stderr)
exp-bbv/tests/x86/fldcw_check (stderr)
exp-bbv/tests/x86/million (stderr)
exp-bbv/tests/x86/rep_prefix (stderr)
exp-bbv/tests/x86-linux/clone_test (stderr)
exp-bbv/tests/x86-linux/clone_test (post)
exp-bbv/tests/x86-linux/ll (stdout)
exp-bbv/tests/x86-linux/ll (stderr)
=================================================
./valgrind-new/cachegrind/tests/x86/fpu-28-108.stderr.diff
=================================================
--- fpu-28-108.stderr.exp 2011-04-12 21:41:26.828692672 -0500
+++ fpu-28-108.stderr.out 2011-04-12 21:47:07.677998650 -0500
@@ -1,17 +1 @@
-
-
-I refs:
-I1 misses:
-LLi misses:
-I1 miss rate:
-LLi miss rate:
-
-D refs:
-D1 misses:
-LLd misses:
-D1 miss rate:
-LLd miss rate:
-
-LL refs:
-LL misses:
-LL miss rate:
+valgrind: ./fpu-28-108: No such file or directory
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/clone_test.post.diff
=================================================
--- clone_test.post.exp 2011-04-12 21:41:13.015369043 -0500
+++ clone_test.post.out 2011-04-12 21:52:04.176572651 -0500
@@ -1,58 +0,0 @@
-T 4 996 5 2 3 98991
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 1001 2 3 98994
-T 100000
-T 100000
-T 100000
-T 100000
-
-
-# Thread 1
-# Total intervals: 15 (Interval Size 100000)
-# Total instructions: 1501007
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-
-T 2 3 99996
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 99996 4
-T 100000
-T 100000
-T 100000
-T 100000
-T 99998 2
-
-
-# Thread 2
-# Total intervals: 25 (Interval Size 100000)
-# Total instructions: 2500001
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/clone_test.stderr.diff
=================================================
--- clone_test.stderr.exp 2011-04-12 21:41:13.015369043 -0500
+++ clone_test.stderr.out 2011-04-12 21:52:04.157573571 -0500
@@ -1,12 +0,0 @@
-# Thread 1
-# Total intervals: 15 (Interval Size 100000)
-# Total instructions: 1501007
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-# Thread 2
-# Total intervals: 25 (Interval Size 100000)
-# Total instructions: 2500001
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/ll.stderr.diff
=================================================
--- ll.stderr.exp 2011-04-12 21:41:13.014369092 -0500
+++ ll.stderr.out 2011-04-12 21:52:04.202571392 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 39 (Interval Size 1000)
-# Total instructions: 39439
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/ll.stdout.diff
=================================================
--- ll.stdout.exp 2011-04-12 21:41:13.014369092 -0500
+++ ll.stdout.out 2011-04-12 21:52:04.196571683 -0500
@@ -1,17 +0,0 @@
-[0;1;37;47m#################################################################[0;30;47m#####[1;37m#########[1;37;40m
-[0;1;37;47m################################################################[0;30;47m#######[1;37m########[1;37;40m
-[0;1;37;47m###################[31m#[37m############################################[0;30;47m##[1;37mO[0;30;47m#[1;37mO[0;30;47m##[1;37m########[1;37;40m
-[0;1;37;47m##[0;30;47m######[1;37m##########[31m##[0;30;47m#[1;37m###########################################[0;30;47m#[1;33m#####[0;30;47m#[1;37m########[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#############[0;30;47m#[1;37m##########################################[0;30;47m##[1;37m##[33m###[37m##[0;30;47m##[1;37m######[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#########[31m###[37m###[0;30;47m###[1;37m#[0;30;47m####[1;37m###[0;30;47m###[1;37m####[0;30;47m###[1;37m##[0;30;47m#####[1;37m#[0;30;47m######[1;37m#####[0;30;47m#[1;37m##########[0;30;47m##[1;37m#####[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m########[31m#[37m##[31m#[0;30;47m#[1;37m###[0;30;47m###[1;37m####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m####[0;30;47m##[1;37m###[0;30;47m##[1;37m#######[0;30;47m#[1;37m############[0;30;47m##[1;37m####[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#######[31m#[37m###[31m#[0;30;47m#[1;37m###[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m######[0;30;47m###[1;37m#########[0;30;47m#[1;37m############[0;30;47m###[1;37m###[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m##########[31m##[0;30;47m#[1;37m###[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m######[0;30;47m###[1;37m########[33m##[0;30;47m#[1;37m###########[0;30;47m##[1;33m#[37m###[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#######[0;30;47m#[1;37m#[31m##[0;30;47m#[1;37m####[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m#####[0;30;47m##[1;37m#[0;30;47m##[1;37m#####[33m######[0;30;47m#[1;37m#######[30m#[33m######[37m#[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m######[0;30;47m##[1;37m#[31m##[0;30;47m#[1;37m#[0;30;47m#[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m###[1;37m###[0;30;47m###[1;37m####[0;30;47m##[1;37m###[0;30;47m##[1;37m####[33m#######[0;30;47m#[1;37m#####[0;30;47m#[1;33m#######[37m#[1;37;40m
-[0;1;37;47m##[0;30;47m############[1;37m##[0;30;47m###[1;37m##[0;30;47m####[1;37m###[0;30;47m####[1;37m###[0;30;47m####[1;37m#[0;30;47m###[1;37m#[0;30;47m#####[1;37m#[0;30;47m######[1;37m###[33m#####[30m#[0;30;47m#####[1m#[33m#####[37m###[1;37;40m
-
-[7CLinux Version 2.6.29, Compiled #1 SMP Mon May 4 09:51:54 EDT 2009
-[5COne 1665MHz AMD Athlon(tm) Processor, 512M RAM, 3330.53 Bogomips Total
-[37Ctobler[0m
-
=================================================
./valgrind-new/exp-bbv/tests/x86/complex_rep.stderr.diff
=================================================
--- complex_rep.stderr.exp 2011-04-12 21:41:13.229358565 -0500
+++ complex_rep.stderr.out 2011-04-12 21:52:04.045578995 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 100000)
-# Total instructions: 8206
-# Total reps: 2100228
-# Unique reps: 2052
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86/fldcw_check.stderr.diff
=================================================
--- fldcw_check.stderr.exp 2011-04-12 21:41:13.229358565 -0500
+++ fldcw_check.stderr.out 2011-04-12 21:52:04.070577785 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 10000)
-# Total instructions: 9261
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 2061
=================================================
./valgrind-new/exp-bbv/tests/x86/million.stderr.diff
=================================================
--- million.stderr.exp 2011-04-12 21:41:13.228358614 -0500
+++ million.stderr.out 2011-04-12 21:52:04.096576526 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 10 (Interval Size 100000)
-# Total instructions: 1000000
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86/rep_prefix.stderr.diff
=================================================
--- rep_prefix.stderr.exp 2011-04-12 21:41:13.228358614 -0500
+++ rep_prefix.stderr.out 2011-04-12 21:52:04.124575170 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 100000)
-# Total instructions: 124
-# Total reps: 229402
-# Unique reps: 26
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-ptrcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2011-04-12 21:41:10.480493160 -0500
+++ bad_percentify.stderr.out 2011-04-12 21:51:36.163929212 -0500
@@ -1,32 +1,29 @@
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:88)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:93)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:98)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2011-04-12 21:41:07.902619384 -0500
+++ tc06_two_races_xml.stderr.out 2011-04-12 21:49:04.035297899 -0500
@@ -44,7 +44,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
+ <fn>do_clone.clone.0</fn>
</frame>
<frame>
<ip>0x........</ip>
@@ -122,11 +122,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -176,11 +171,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -230,11 +220,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -284,11 +269,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
=================================================
./valgrind-new/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2011-04-12 21:41:20.473003880 -0500
+++ stack_switch.stderr.out 2011-04-12 21:46:05.229057865 -0500
@@ -0,0 +1,3 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
+
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-04-12 21:41:21.487954183 -0500
+++ origin5-bz2.stderr.out 2011-04-12 21:46:26.207030238 -0500
@@ -72,17 +72,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)
@@ -128,6 +117,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 2011-04-12 21:41:21.442956387 -0500
+++ origin5-bz2.stderr.out 2011-04-12 21:46:26.207030238 -0500
@@ -117,6 +117,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 2011-04-12 21:41:21.500953548 -0500
+++ origin5-bz2.stderr.out 2011-04-12 21:46:26.207030238 -0500
@@ -11,7 +11,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,8 +27,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -37,8 +38,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -47,8 +49,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -57,8 +60,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -67,8 +71,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -77,8 +82,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+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)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -87,7 +93,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)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2011-04-12 21:41:21.440956484 -0500
+++ origin5-bz2.stderr.out 2011-04-12 21:46:26.207030238 -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........: handle_compress (origin5-bz2.c:4686)
@@ -9,7 +9,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........: handle_compress (origin5-bz2.c:4686)
@@ -17,7 +17,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........: handle_compress (origin5-bz2.c:4686)
@@ -25,7 +25,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)
@@ -36,7 +36,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)
@@ -47,7 +47,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)
@@ -58,7 +58,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)
@@ -69,7 +69,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)
@@ -80,7 +80,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)
@@ -91,7 +91,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)
@@ -102,7 +102,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-new/memcheck/tests/x86-linux/bug133694.stderr.diff
=================================================
--- bug133694.stderr.exp 2011-04-12 21:41:15.760234641 -0500
+++ bug133694.stderr.out 2011-04-12 21:47:05.876086924 -0500
@@ -0,0 +1 @@
+valgrind: ./bug133694: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/bug133694.stdout.diff
=================================================
--- bug133694.stdout.exp 2011-04-12 21:41:15.754234935 -0500
+++ bug133694.stdout.out 2011-04-12 21:47:05.853088051 -0500
@@ -1 +0,0 @@
-success
=================================================
./valgrind-new/memcheck/tests/x86-linux/int3-x86.stderr.diff
=================================================
--- int3-x86.stderr.exp 2011-04-12 21:41:15.757234788 -0500
+++ int3-x86.stderr.out 2011-04-12 21:47:05.908085356 -0500
@@ -0,0 +1 @@
+valgrind: ./int3-x86: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/int3-x86.stdout.diff
=================================================
--- int3-x86.stdout.exp 2011-04-12 21:41:15.761234592 -0500
+++ int3-x86.stdout.out 2011-04-12 21:47:05.883086581 -0500
@@ -1,3 +0,0 @@
-main
-in int_handler, EIP is ...
-PASS
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar.stderr.diff
=================================================
--- scalar.stderr.exp 2011-04-12 21:41:15.759234690 -0500
+++ scalar.stderr.out 2011-04-12 21:47:05.937083937 -0500
@@ -1,3275 +1 @@
------------------------------------------------------
- 0:__NR_restart_syscall n/a
------------------------------------------------------
------------------------------------------------------
- 1: __NR_exit below
------------------------------------------------------
------------------------------------------------------
- 2: __NR_fork other
------------------------------------------------------
------------------------------------------------------
- 3: __NR_read 1+3s 1m
------------------------------------------------------
-Syscall param (syscallno) contains uninitialised byte(s)
- ...
-
-Syscall param read(fd) contains uninitialised byte(s)
- ...
-
-Syscall param read(buf) contains uninitialised byte(s)
- ...
-
-Syscall param read(count) contains uninitialised byte(s)
- ...
-
-Syscall param read(buf) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 4: __NR_write 3s 1m
------------------------------------------------------
-Syscall param write(fd) contains uninitialised byte(s)
- ...
-
-Syscall param write(buf) contains uninitialised byte(s)
- ...
-
-Syscall param write(count) contains uninitialised byte(s)
- ...
-
-Syscall param write(buf) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 5: __NR_open (2-args) 2s 1m
------------------------------------------------------
-Syscall param open(filename) contains uninitialised byte(s)
- ...
-
-Syscall param open(flags) contains uninitialised byte(s)
- ...
-
-Syscall param open(filename) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 5: __NR_open (3-args) 1s 0m
------------------------------------------------------
-Syscall param open(mode) contains uninitialised byte(s)
- ...
-
------------------------------------------------------
- 6: __NR_close 1s 0m
------------------------------------------------------
-Syscall param close(fd) contains uninitialised byte(s)
- ...
-
------------------------------------------------------
- 7: __NR_waitpid 3s 1m
------------------------------------------------------
-Syscall param waitpid(pid) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(status) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(options) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(status) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 8: __NR_creat 2s 1m
------------------------------------------------------
-Syscall param creat(pathname) contains uninitialised byte(s)
- ...
-
-Syscall param creat(mode) contains uninitialised byte(s)
- ...
-
-Syscall param creat(pathname) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_exit_group.stderr.diff
=================================================
--- scalar_exit_group.stderr.exp 2011-04-12 21:41:15.760234641 -0500
+++ scalar_exit_group.stderr.out 2011-04-12 21:47:05.975082075 -0500
@@ -1,6 +1 @@
------------------------------------------------------
-252: __NR_exit_group 1s 0m
------------------------------------------------------
-Syscall param exit_group(status) contains uninitialised byte(s)
- ...
-
+valgrind: ./scalar_exit_group: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_fork.stderr.diff
=================================================
--- scalar_fork.stderr.exp 2011-04-12 21:41:15.754234935 -0500
+++ scalar_fork.stderr.out 2011-04-12 21:47:06.004080654 -0500
@@ -1,3 +1 @@
------------------------------------------------------
- 2: __NR_fork 0e
------------------------------------------------------
+valgrind: ./scalar_fork: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_supp.stderr.diff
=================================================
--- scalar_supp.stderr.exp 2011-04-12 21:41:15.761234592 -0500
+++ scalar_supp.stderr.out 2011-04-12 21:47:06.035079135 -0500
@@ -1,9 +1 @@
-Syscall param (syscallno) contains uninitialised byte(s)
- ...
-
-Syscall param write(fd) contains uninitialised byte(s)
- ...
-
-Syscall param write(count) contains uninitialised byte(s)
- ...
-
+valgrind: ./scalar_supp: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_vfork.stderr.diff
=================================================
--- scalar_vfork.stderr.exp 2011-04-12 21:41:15.761234592 -0500
+++ scalar_vfork.stderr.out 2011-04-12 21:47:06.064077714 -0500
@@ -1,3 +1 @@
------------------------------------------------------
-190: __NR_vfork 0e
------------------------------------------------------
+valgrind: ./scalar_vfork: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/bug152022.stderr.diff
=================================================
--- bug152022.stderr.exp 2011-04-12 21:41:21.410957954 -0500
+++ bug152022.stderr.out 2011-04-12 21:47:05.193120383 -0500
@@ -0,0 +1 @@
+valgrind: ./bug152022: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/espindola2.stderr.diff
=================================================
--- espindola2.stderr.exp 2011-04-12 21:41:21.415957709 -0500
+++ espindola2.stderr.out 2011-04-12 21:47:05.222118962 -0500
@@ -0,0 +1 @@
+valgrind: ./espindola2: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fpeflags.stderr.diff
=================================================
--- fpeflags.stderr.exp 2011-04-12 21:41:21.417957611 -0500
+++ fpeflags.stderr.out 2011-04-12 21:47:05.250117590 -0500
@@ -0,0 +1 @@
+valgrind: ./fpeflags: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fprem.stderr.diff
=================================================
--- fprem.stderr.exp 2011-04-12 21:41:21.410957954 -0500
+++ fprem.stderr.out 2011-04-12 21:47:05.282116022 -0500
@@ -0,0 +1 @@
+valgrind: ./fprem: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fprem.stdout.diff
=================================================
--- fprem.stdout.exp 2011-04-12 21:41:21.409958003 -0500
+++ fprem.stdout.out 2011-04-12 21:47:05.256117296 -0500
@@ -1,3 +0,0 @@
-fprem 0.693147
-fprem1 0.693147
-fsincos 0.130278
=================================================
./valgrind-new/memcheck/tests/x86/fxsave.stderr.diff
=================================================
--- fxsave.stderr.exp 2011-04-12 21:41:21.418957562 -0500
+++ fxsave.stderr.out 2011-04-12 21:47:05.320114162 -0500
@@ -0,0 +1 @@
+valgrind: ./fxsave: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fxsave.stdout.diff
=================================================
--- fxsave.stdout.exp 2011-04-12 21:41:21.416957660 -0500
+++ fxsave.stdout.out 2011-04-12 21:47:05.297115287 -0500
@@ -1,104 +0,0 @@
-Re-run with any arg to suppress least-significant
- 16 bits of FP numbers
-
-BEFORE
- 0 7f 03 00 10 fc 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
- 48 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
- 64 xx xx cf fb 84 9a 20 9a fd 3f 00 00 00 00 00 00
- 80 xx xx cf d1 f7 17 72 b1 fe 3f 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
-112 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 78 56 34 12 44 33 22 11 88 77 66 55 21 43 65 87
-176 01 ef cd ab dd cc bb aa 11 00 ff ee ba dc fe 10
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 79 b9 f9 b9 99 ff 99 bb 99 77 99 bb 9b 9f 9b 97
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-400 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-416 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-432 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-448 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-464 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-480 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-496 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-
-ZEROED
- 0 7f 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 48 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 64 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 80 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-112 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-176 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-400 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-416 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-432 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-448 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-464 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-480 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-496 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-
-RESTORED
- 0 7f 03 00 10 fc 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
- 48 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
- 64 xx xx cf fb 84 9a 20 9a fd 3f 00 00 00 00 00 00
- 80 xx xx cf d1 f7 17 72 b1 fe 3f 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
-112 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 78 56 34 12 44 33 22 11 88 77 66 55 21 43 65 87
-176 01 ef cd ab dd cc bb aa 11 00 ff ee ba dc fe 10
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 79 b9 f9 b9 99 ff 99 bb 99 77 99 bb 9b 9f 9b 97
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_basic.stderr.diff
=================================================
--- insn_basic.stderr.exp 2011-04-12 21:41:44.508826944 -0500
+++ insn_basic.stderr.out 2011-04-12 21:47:05.356112398 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_basic: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_basic.stdout.diff
=================================================
--- insn_basic.stdout.exp 2011-04-12 21:41:44.522826258 -0500
+++ insn_basic.stdout.out 2011-04-12 21:47:05.334113476 -0500
@@ -1,1056 +0,0 @@
-adcb_1 ... ok
-adcb_2 ... ok
-adcb_3 ... ok
-adcb_4 ... ok
-adcb_5 ... ok
-adcb_6 ... ok
-adcb_7 ... ok
-adcb_8 ... ok
-adcb_9 ... ok
-adcb_10 ... ok
-adcb_11 ... ok
-adcb_12 ... ok
-adcw_1 ... ok
-adcw_2 ... ok
-adcw_3 ... ok
-adcw_4 ... ok
-adcw_5 ... ok
-adcw_6 ... ok
-adcw_7 ... ok
-adcw_8 ... ok
-adcw_9 ... ok
-adcw_10 ... ok
-adcw_11 ... ok
-adcw_12 ... ok
-adcw_13 ... ok
-adcw_14 ... ok
-adcl_1 ... ok
-adcl_2 ... ok
-adcl_3 ... ok
-adcl_4 ... ok
-adcl_5 ... ok
-adcl_6 ... ok
-adcl_7 ... ok
-adcl_8 ... ok
-adcl_9 ... ok
-adcl_10 ... ok
-adcl_11 ... ok
-adcl_12 ... ok
-adcl_13 ... ok
-adcl_14 ... ok
-addb_1 ... ok
-addb_2 ... ok
-addb_3 ... ok
-addb_4 ... ok
-addb_5 ... ok
-addb_6 ... ok
-addw_1 ... ok
-addw_2 ... ok
-addw_3 ... ok
-addw_4 ... ok
-addw_5 ... ok
-addw_6 ... ok
-addw_7 ... ok
-addl_1 ... ok
-addl_2 ... ok
-addl_3 ... ok
-addl_4 ... ok
-addl_5 ... ok
-addl_6 ... ok
-addl_7 ... ok
-andb_1 ... ok
-andb_2 ... ok
-andb_3 ... ok
-andb_4 ... ok
-andb_5 ... ok
-andb_6 ... ok
-andw_1 ... ok
-andw_2 ... ok
-andw_3 ... ok
-andw_4 ... ok
-andw_5 ... ok
-andw_6 ... ok
-andw_7 ... ok
-andl_1 ... ok
-andl_2 ... ok
-andl_3 ... ok
-andl_4 ... ok
-andl_5 ... ok
-andl_6 ... ok
-andl_7 ... ok
-bsfw_1 ... ok
-bsfw_2 ... ok
-bsfl_1 ... ok
-bsfl_2 ... ok
-bsrw_1 ... ok
-bsrw_2 ... ok
-bsrl_1 ... ok
-bsrl_2 ... ok
-bswapl_1 ... ok
-btw_1 ... ok
-btw_2 ... ok
-btw_3 ... ok
-btw_4 ... ok
-btw_5 ... ok
-btw_6 ... ok
-btw_7 ... ok
-btw_8 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_cmov.stderr.diff
=================================================
--- insn_cmov.stderr.exp 2011-04-12 21:41:44.506827042 -0500
+++ insn_cmov.stderr.out 2011-04-12 21:47:05.403110095 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_cmov: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_cmov.stdout.diff
=================================================
--- insn_cmov.stdout.exp 2011-04-12 21:41:44.521826307 -0500
+++ insn_cmov.stdout.out 2011-04-12 21:47:05.364112006 -0500
@@ -1,384 +0,0 @@
-cmova_1 ... ok
-cmova_2 ... ok
-cmova_3 ... ok
-cmova_4 ... ok
-cmova_5 ... ok
-cmova_6 ... ok
-cmova_7 ... ok
-cmova_8 ... ok
-cmovae_1 ... ok
-cmovae_2 ... ok
-cmovae_3 ... ok
-cmovae_4 ... ok
-cmovb_1 ... ok
-cmovb_2 ... ok
-cmovb_3 ... ok
-cmovb_4 ... ok
-cmovbe_1 ... ok
-cmovbe_2 ... ok
-cmovbe_3 ... ok
-cmovbe_4 ... ok
-cmovbe_5 ... ok
-cmovbe_6 ... ok
-cmovbe_7 ... ok
-cmovbe_8 ... ok
-cmovc_1 ... ok
-cmovc_2 ... ok
-cmovc_3 ... ok
-cmovc_4 ... ok
-cmove_1 ... ok
-cmove_2 ... ok
-cmove_3 ... ok
-cmove_4 ... ok
-cmovg_1 ... ok
-cmovg_2 ... ok
-cmovg_3 ... ok
-cmovg_4 ... ok
-cmovg_5 ... ok
-cmovg_6 ... ok
-cmovg_7 ... ok
-cmovg_8 ... ok
-cmovg_9 ... ok
-cmovg_10 ... ok
-cmovg_11 ... ok
-cmovg_12 ... ok
-cmovg_13 ... ok
-cmovg_14 ... ok
-cmovg_15 ... ok
-cmovg_16 ... ok
-cmovge_1 ... ok
-cmovge_2 ... ok
-cmovge_3 ... ok
-cmovge_4 ... ok
-cmovge_5 ... ok
-cmovge_6 ... ok
-cmovge_7 ... ok
-cmovge_8 ... ok
-cmovl_1 ... ok
-cmovl_2 ... ok
-cmovl_3 ... ok
-cmovl_4 ... ok
-cmovl_5 ... ok
-cmovl_6 ... ok
-cmovl_7 ... ok
-cmovl_8 ... ok
-cmovle_1 ... ok
-cmovle_2 ... ok
-cmovle_3 ... ok
-cmovle_4 ... ok
-cmovle_5 ... ok
-cmovle_6 ... ok
-cmovle_7 ... ok
-cmovle_8 ... ok
-cmovle_9 ... ok
-cmovle_10 ... ok
-cmovle_11 ... ok
-cmovle_12 ... ok
-cmovle_13 ... ok
-cmovle_14 ... ok
-cmovle_15 ... ok
-cmovle_16 ... ok
-cmovna_1 ... ok
-cmovna_2 ... ok
-cmovna_3 ... ok
-cmovna_4 ... ok
-cmovna_5 ... ok
-cmovna_6 ... ok
-cmovna_7 ... ok
-cmovna_8 ... ok
-cmovnae_1 ... ok
-cmovnae_2 ... ok
-cmovnae_3 ... ok
-cmovnae_4 ... ok
-cmovnb_1 ... ok
-cmovnb_2 ... ok
-cmovnb_3 ... ok
-cmovnb_4 ... ok
-cmovnbe_1 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_fpu.stderr.diff
=================================================
--- insn_fpu.stderr.exp 2011-04-12 21:41:44.513826699 -0500
+++ insn_fpu.stderr.out 2011-04-12 21:47:05.450107792 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_fpu: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_fpu.stdout.diff
=================================================
--- insn_fpu.stdout.exp 2011-04-12 21:41:44.496827532 -0500
+++ insn_fpu.stdout.out 2011-04-12 21:47:05.414109556 -0500
@@ -1,452 +0,0 @@
-fabs_1 ... ok
-fabs_2 ... ok
-fabs_3 ... ok
-fabs_4 ... ok
-fadds_1 ... ok
-fadds_2 ... ok
-fadds_3 ... ok
-fadds_4 ... ok
-faddl_1 ... ok
-faddl_2 ... ok
-faddl_3 ... ok
-faddl_4 ... ok
-fadd_1 ... ok
-fadd_2 ... ok
-fadd_3 ... ok
-fadd_4 ... ok
-fadd_5 ... ok
-fadd_6 ... ok
-fadd_7 ... ok
-fadd_8 ... ok
-fadd_9 ... ok
-fadd_10 ... ok
-fadd_11 ... ok
-fadd_12 ... ok
-fadd_13 ... ok
-fadd_14 ... ok
-fadd_15 ... ok
-fadd_16 ... ok
-faddp_1 ... ok
-faddp_2 ... ok
-faddp_3 ... ok
-faddp_4 ... ok
-faddp_5 ... ok
-faddp_6 ... ok
-faddp_7 ... ok
-faddp_8 ... ok
-faddp_9 ... ok
-faddp_10 ... ok
-faddp_11 ... ok
-faddp_12 ... ok
-faddp_13 ... ok
-faddp_14 ... ok
-faddp_15 ... ok
-faddp_16 ... ok
-fiadds_1 ... ok
-fiadds_2 ... ok
-fiadds_3 ... ok
-fiadds_4 ... ok
-fiadds_5 ... ok
-fiadds_6 ... ok
-fiadds_7 ... ok
-fiadds_8 ... ok
-fiaddl_1 ... ok
-fiaddl_2 ... ok
-fiaddl_3 ... ok
-fiaddl_4 ... ok
-fiaddl_5 ... ok
-fiaddl_6 ... ok
-fiaddl_7 ... ok
-fiaddl_8 ... ok
-fcomi_1 ... ok
-fcomi_2 ... ok
-fcomi_3 ... ok
-fcomi_4 ... ok
-fcomi_5 ... ok
-fcomi_6 ... ok
-fcomip_1 ... ok
-fcomip_2 ... ok
-fcomip_3 ... ok
-fcomip_4 ... ok
-fcomip_5 ... ok
-fcomip_6 ... ok
-fucomi_1 ... ok
-fucomi_2 ... ok
-fucomi_3 ... ok
-fucomi_4 ... ok
-fucomi_5 ... ok
-fucomi_6 ... ok
-fucomip_1 ... ok
-fucomip_2 ... ok
-fucomip_3 ... ok
-fucomip_4 ... ok
-fucomip_5 ... ok
-fucomip_6 ... ok
-fchs_1 ... ok
-fchs_2 ... ok
-fchs_3 ... ok
-fchs_4 ... ok
-fdivs_1 ... ok
-fdivs_2 ... ok
-fdivs_3 ... ok
-fdivs_4 ... ok
-fdivl_1 ... ok
-fdivl_2 ... ok
-fdivl_3 ... ok
-fdivl_4 ... ok
-fdiv_1 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_mmx.stderr.diff
=================================================
--- insn_mmx.stderr.exp 2011-04-12 21:41:44.514826650 -0500
+++ insn_mmx.stderr.out 2011-04-12 21:47:05.486106030 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_mmx: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_mmx.stdout.diff
=================================================
--- insn_mmx.stdout.exp 2011-04-12 21:41:44.498827434 -0500
+++ insn_mmx.stdout.out 2011-04-12 21:47:05.462107204 -0500
@@ -1,103 +0,0 @@
-movd_1 ... ok
-movd_2 ... ok
-movd_3 ... ok
-movd_4 ... ok
-movq_1 ... ok
-movq_2 ... ok
-movq_3 ... ok
-packssdw_1 ... ok
-packssdw_2 ... ok
-packsswb_1 ... ok
-packsswb_2 ... ok
-packuswb_1 ... ok
-packuswb_2 ... ok
-paddb_1 ... ok
-paddb_2 ... ok
-paddd_1 ... ok
-paddd_2 ... ok
-paddsb_1 ... ok
-paddsb_2 ... ok
-paddsw_1 ... ok
-paddsw_2 ... ok
-paddusb_1 ... ok
-paddusb_2 ... ok
-paddusw_1 ... ok
-paddusw_2 ... ok
-paddw_1 ... ok
-paddw_2 ... ok
-pand_1 ... ok
-pand_2 ... ok
-pandn_1 ... ok
-pandn_2 ... ok
-pcmpeqb_1 ... ok
-pcmpeqb_2 ... ok
-pcmpeqd_1 ... ok
-pcmpeqd_2 ... ok
-pcmpeqw_1 ... ok
-pcmpeqw_2 ... ok
-pcmpgtb_1 ... ok
-pcmpgtb_2 ... ok
-pcmpgtd_1 ... ok
-pcmpgtd_2 ... ok
-pcmpgtw_1 ... ok
-pcmpgtw_2 ... ok
-pmaddwd_1 ... ok
-pmaddwd_2 ... ok
-pmulhw_1 ... ok
-pmulhw_2 ... ok
-pmullw_1 ... ok
-pmullw_2 ... ok
-por_1 ... ok
-por_2 ... ok
-pslld_1 ... ok
-pslld_2 ... ok
-pslld_3 ... ok
-psllq_1 ... ok
-psllq_2 ... ok
-psllq_3 ... ok
-psllw_1 ... ok
-psllw_2 ... ok
-psllw_3 ... ok
-psrad_1 ... ok
-psrad_2 ... ok
-psrad_3 ... ok
-psraw_1 ... ok
-psraw_2 ... ok
-psraw_3 ... ok
-psrld_1 ... ok
-psrld_2 ... ok
-psrld_3 ... ok
-psrlq_1 ... ok
-psrlq_2 ... ok
-psrlq_3 ... ok
-psrlw_1 ... ok
-psrlw_2 ... ok
-psrlw_3 ... ok
-psubb_1 ... ok
-psubb_2 ... ok
-psubd_1 ... ok
-psubd_2 ... ok
-psubsb_1 ... ok
-psubsb_2 ... ok
-psubsw_1 ... ok
-psubsw_2 ... ok
-psubusb_1 ... ok
-psubusb_2 ... ok
-psubusw_1 ... ok
-psubusw_2 ... ok
-psubw_1 ... ok
-psubw_2 ... ok
-punpckhbw_1 ... ok
-punpckhbw_2 ... ok
-punpckhdq_1 ... ok
-punpckhdq_2 ... ok
-punpckhwd_1 ... ok
-punpckhwd_2 ... ok
-punpcklbw_1 ... ok
-punpcklbw_2 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_sse.stderr.diff
=================================================
--- insn_sse.stderr.exp 2011-04-12 21:41:44.501827287 -0500
+++ insn_sse.stderr.out 2011-04-12 21:47:05.526104070 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_sse: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_sse.stdout.diff
=================================================
--- insn_sse.stdout.exp 2011-04-12 21:41:44.515826601 -0500
+++ insn_sse.stdout.out 2011-04-12 21:47:05.503105197 -0500
@@ -1,154 +0,0 @@
-addps_1 ... ok
-addps_2 ... ok
-addss_1 ... ok
-addss_2 ... ok
-andnps_1 ... ok
-andnps_2 ... ok
-andps_1 ... ok
-andps_2 ... ok
-cmpeqps_1 ... ok
-cmpeqps_2 ... ok
-cmpeqss_1 ... ok
-cmpeqss_2 ... ok
-cmpleps_1 ... ok
-cmpleps_2 ... ok
-cmpless_1 ... ok
-cmpless_2 ... ok
-cmpltps_1 ... ok
-cmpltps_2 ... ok
-cmpltss_1 ... ok
-cmpltss_2 ... ok
-cmpunordps_1 ... ok
-cmpunordps_2 ... ok
-cmpunordss_1 ... ok
-cmpunordss_2 ... ok
-cmpneqps_1 ... ok
-cmpneqps_2 ... ok
-cmpneqss_1 ... ok
-cmpneqss_2 ... ok
-cmpnleps_1 ... ok
-cmpnleps_2 ... ok
-cmpnless_1 ... ok
-cmpnless_2 ... ok
-cmpnltps_1 ... ok
-cmpnltps_2 ... ok
-cmpnltss_1 ... ok
-cmpnltss_2 ... ok
-cmpordps_1 ... ok
-cmpordps_2 ... ok
-cmpordss_1 ... ok
-cmpordss_2 ... ok
-comiss_1 ... ok
-comiss_2 ... ok
-comiss_3 ... ok
-comiss_4 ... ok
-comiss_5 ... ok
-comiss_6 ... ok
-cvtpi2ps_1 ... ok
-cvtpi2ps_2 ... ok
-cvtps2pi_1 ... ok
-cvtps2pi_2 ... ok
-cvtsi2ss_1 ... ok
-cvtsi2ss_2 ... ok
-cvtss2si_1 ... ok
-cvtss2si_2 ... ok
-cvttps2pi_1 ... ok
-cvttps2pi_2 ... ok
-cvttss2si_1 ... ok
-cvttss2si_2 ... ok
-divps_1 ... ok
-divps_2 ... ok
-divss_1 ... ok
-divss_2 ... ok
-maxps_1 ... ok
-maxps_2 ... ok
-maxss_1 ... ok
-maxss_2 ... ok
-minps_1 ... ok
-minps_2 ... ok
-minss_1 ... ok
-minss_2 ... ok
-movaps_1 ... ok
-movaps_2 ... ok
-movhlps_1 ... ok
-movhps_1 ... ok
-movhps_2 ... ok
-movlhps_1 ... ok
-movlps_1 ... ok
-movlps_2 ... ok
-movmskps_1 ... ok
-movntps_1 ... ok
-movntq_1 ... ok
-movss_1 ... ok
-movss_2 ... ok
-movss_3 ... ok
-movups_1 ... ok
-movups_2 ... ok
-mulps_1 ... ok
-mulps_2 ... ok
-mulss_1 ... ok
-mulss_2 ... ok
-orps_1 ... ok
-orps_2 ... ok
-pavgb_1 ... ok
-pavgb_2 ... ok
-pavgw_1 ... ok
-pavgw_2 ... ok
-pextrw_1 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_sse2.stderr.diff
=================================================
--- insn_sse2.stderr.exp 2011-04-12 21:41:44.507826993 -0500
+++ insn_sse2.stderr.out 2011-04-12 21:47:05.558102502 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_sse2: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_sse2.stdout.diff
=================================================
--- insn_sse2.stdout.exp 2011-04-12 21:41:44.522826258 -0500
+++ insn_sse2.stdout.out 2011-04-12 21:47:05.532103776 -0500
@@ -1,343 +0,0 @@
-addpd_1 ... ok
-addpd_2 ... ok
-addsd_1 ... ok
-addsd_2 ... ok
-andpd_1 ... ok
-andpd_2 ... ok
-andnpd_1 ... ok
-andnpd_2 ... ok
-cmpeqpd_1 ... ok
-cmpeqpd_2 ... ok
-cmpltpd_1 ... ok
-cmpltpd_2 ... ok
-cmplepd_1 ... ok
-cmplepd_2 ... ok
-cmpunordpd_1 ... ok
-cmpunordpd_2 ... ok
-cmpneqpd_1 ... ok
-cmpneqpd_2 ... ok
-cmpnltpd_1 ... ok
-cmpnltpd_2 ... ok
-cmpnlepd_1 ... ok
-cmpnlepd_2 ... ok
-cmpordpd_1 ... ok
-cmpordpd_2 ... ok
-cmpeqsd_1 ... ok
-cmpeqsd_2 ... ok
-cmpltsd_1 ... ok
-cmpltsd_2 ... ok
-cmplesd_1 ... ok
-cmplesd_2 ... ok
-cmpunordsd_1 ... ok
-cmpunordsd_2 ... ok
-cmpneqsd_1 ... ok
-cmpneqsd_2 ... ok
-cmpnltsd_1 ... ok
-cmpnltsd_2 ... ok
-cmpnlesd_1 ... ok
-cmpnlesd_2 ... ok
-cmpordsd_1 ... ok
-cmpordsd_2 ... ok
-comisd_1 ... ok
-comisd_2 ... ok
-comisd_3 ... ok
-comisd_4 ... ok
-comisd_5 ... ok
-comisd_6 ... ok
-cvtdq2pd_1 ... ok
-cvtdq2pd_2 ... ok
-cvtdq2ps_1 ... ok
-cvtdq2ps_2 ... ok
-cvtpd2dq_1 ... ok
-cvtpd2dq_2 ... ok
-cvtpd2pi_1 ... ok
-cvtpd2pi_2 ... ok
-cvtpd2ps_1 ... ok
-cvtpd2ps_2 ... ok
-cvtpi2pd_1 ... ok
-cvtpi2pd_2 ... ok
-cvtps2dq_1 ... ok
-cvtps2dq_2 ... ok
-cvtps2pd_1 ... ok
-cvtps2pd_2 ... ok
-cvtsd2si_1 ... ok
-cvtsd2si_2 ... ok
-cvtsd2ss_1 ... ok
-cvtsd2ss_2 ... ok
-cvtsi2sd_1 ... ok
-cvtsi2sd_2 ... ok
-cvtss2sd_1 ... ok
-cvtss2sd_2 ... ok
-cvttpd2pi_1 ... ok
-cvttpd2pi_2 ... ok
-cvttpd2dq_1 ... ok
-cvttpd2dq_2 ... ok
-cvttps2dq_1 ... ok
-cvttps2dq_2 ... ok
-cvttsd2si_1 ... ok
-cvttsd2si_2 ... ok
-divpd_1 ... ok
-divpd_2 ... ok
-divsd_1 ... ok
-divsd_2 ... ok
-lfence_1 ... ok
-maxpd_1 ... ok
-maxpd_2 ... ok
-maxsd_1 ... ok
-maxsd_2 ... ok
-mfence_1 ... ok
-minpd_1 ... ok
-minpd_2 ... ok
-minsd_1 ... ok
-minsd_2 ... ok
-movapd_1 ... ok
-movapd_2 ... ok
-movd_1 ... ok
-movd_2 ... ok
-movd_3 ... ok
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/more_x86_fp.stderr.diff
=================================================
--- more_x86_fp.stderr.exp 2011-04-12 21:41:21.412957856 -0500
+++ more_x86_fp.stderr.out 2011-04-12 21:47:05.590100936 -0500
@@ -0,0 +1 @@
+valgrind: ./more_x86_fp: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/more_x86_fp.stdout.diff
=================================================
--- more_x86_fp.stdout.exp 2011-04-12 21:41:21.411957905 -0500
+++ more_x86_fp.stdout.out 2011-04-12 21:47:05.564102208 -0500
@@ -1,175 +0,0 @@
-a=2.000000 b=3.000000 a+b=5.000000
-a=2.000000 b=3.000000 a-b=-1.000000
-a=2.000000 b=3.000000 a*b=6.000000
-a=2.000000 b=3.000000 a/b=0.666667
-a=2.000000 b=3.000000 fmod(a, b)=2.000000
-a=2.000000 sqrt(a)=1.414214
-a=2.000000 sin(a)=0.909297
-a=2.000000 cos(a)=-0.416147
-a=2.000000 tan(a)=-2.185040
-a=2.000000 log(a)=0.693147
-a=2.000000 exp(a)=7.389056
-a=2.000000 b=3.000000 atan2(a, b)=0.588003
-a=2.000000 asin(sin(a))=1.141593
-a=2.000000 acos(cos(a))=2.000000
-a=2.000000 atan(tan(a))=-1.141593
-a=1.400000 b=-5.000000 a+b=-3.600000
-a=1.400000 b=-5.000000 a-b=6.400000
-a=1.400000 b=-5.000000 a*b=-7.000000
-a=1.400000 b=-5.000000 a/b=-0.280000
-a=1.400000 b=-5.000000 fmod(a, b)=1.400000
-a=1.400000 sqrt(a)=1.183216
-a=1.400000 sin(a)=0.985450
-a=1.400000 cos(a)=0.169967
-a=1.400000 tan(a)=5.797884
-a=1.400000 log(a)=0.336472
-a=1.400000 exp(a)=4.055200
-a=1.400000 b=-5.000000 atan2(a, b)=2.868584
-a=1.400000 asin(sin(a))=1.400000
-a=1.400000 acos(cos(a))=1.400000
-a=1.400000 atan(tan(a))=1.400000
-(2.000000<-1.000000)=0
-(2.000000<=-1.000000)=0
-(2.000000==-1.000000)=0
...
[truncated message content] |
|
From: Tom H. <th...@cy...> - 2011-04-13 02:39:38
|
Nightly build on mg ( x86_64, Fedora 9 ) Started at 2011-04-13 03:10:06 BST Ended at 2011-04-13 03:39:24 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 == 573 tests, 3 stderr failures, 4 stdout failures, 0 post failures == none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/amd64/sse4-64 (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) |