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
(32) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
1
(22) |
2
(32) |
3
(34) |
4
(27) |
|
5
(36) |
6
(30) |
7
(19) |
8
(30) |
9
(28) |
10
(13) |
11
(1) |
|
12
|
13
(1) |
14
(2) |
15
(14) |
16
(21) |
17
(16) |
18
(19) |
|
19
(2) |
20
(9) |
21
(19) |
22
(15) |
23
(30) |
24
(28) |
25
(22) |
|
26
(23) |
27
(18) |
28
(35) |
29
(24) |
30
(24) |
31
(16) |
|
|
From: Patrick J. L. <lop...@gm...> - 2012-08-28 16:56:44
|
On Tue, Aug 28, 2012 at 9:34 AM, Florian Krohm <br...@ac...> wrote: > > The reason is that the comparisons aLocal < limLo and aLocal >= limHi > cause undefined behaviour (according to c99 6.5.8) because they compare > pointers that do not point into the same aggregate. > Compilers are free to do whatever they like in that case. > Another fix would be to transform the pointers to like-sized integers > and compare those. This sounds like a better fix to me, if you do not mind using C99. Just cast to uintptr_t (from <stdint.h>). (If not C99, "unsigned long" should work.) Comparing such integers is technically implementation-defined, but (a) that is much better than "undefined" and (b) let's face it, on any conceivable system it will work fine. Assuming this actually fixes the problem, of course. - Pat |
|
From: <sv...@va...> - 2012-08-28 16:50:50
|
florian 2012-08-28 17:50:39 +0100 (Tue, 28 Aug 2012)
New Revision: 12906
Log:
Add a tester for V-bit propagation through IROps.
The tester is located in memcheck/tests/vbit-test.
It needs the following support on the valgrind / VEX side:
(1) a new client request VG_USERREQ__VEX_INIT_FOR_IRI
(2) a new "special instruction" on all architectures inserted via
VALGRIND_VEX_INJECT_IR
(3) VEX changes to detect the special insn and insert IR (ir_inject.c)
The README file in vbit-test has some more information.
See also VEX r2490. Fixes bugzilla #300102.
Added directories:
trunk/memcheck/tests/vbit-test/
Added files:
trunk/memcheck/tests/vbit-test/Makefile.am
trunk/memcheck/tests/vbit-test/README
trunk/memcheck/tests/vbit-test/TODO
trunk/memcheck/tests/vbit-test/binary.c
trunk/memcheck/tests/vbit-test/filter_stderr
trunk/memcheck/tests/vbit-test/irops.c
trunk/memcheck/tests/vbit-test/main.c
trunk/memcheck/tests/vbit-test/qernary.c
trunk/memcheck/tests/vbit-test/ternary.c
trunk/memcheck/tests/vbit-test/unary.c
trunk/memcheck/tests/vbit-test/util.c
trunk/memcheck/tests/vbit-test/valgrind.c
trunk/memcheck/tests/vbit-test/vbit-test.stderr.exp
trunk/memcheck/tests/vbit-test/vbit-test.vgtest
trunk/memcheck/tests/vbit-test/vbits.c
trunk/memcheck/tests/vbit-test/vbits.h
trunk/memcheck/tests/vbit-test/vtest.h
Modified files:
trunk/Makefile.am
trunk/Makefile.vex.am
trunk/configure.in
trunk/coregrind/m_scheduler/scheduler.c
trunk/include/valgrind.h
Added: trunk/memcheck/tests/vbit-test/
Added: trunk/memcheck/tests/vbit-test/main.c (+133 -0)
===================================================================
--- trunk/memcheck/tests/vbit-test/main.c 2012-08-28 14:33:10 +01:00 (rev 12905)
+++ trunk/memcheck/tests/vbit-test/main.c 2012-08-28 17:50:39 +01:00 (rev 12906)
@@ -0,0 +1,133 @@
+/* -*- mode: C; c-basic-offset: 3; -*- */
+
+#include <assert.h> // assert
+#include <stdio.h> // printf
+#include <stdlib.h> // malloc
+#include <string.h> // memset
+#include "valgrind.h" // RUNNING_ON_VALGRIND
+#include "vtest.h"
+
+
+static test_data_t *
+new_test_data(const irop_t *op)
+{
+ test_data_t *data = malloc(sizeof *data);
+
+ memset(data, 0x0, sizeof *data); // initialise
+
+ /* Obtain the operand types and set them */
+ IRType t_dst, t1, t2, t3, t4;
+
+ typeof_primop(op->op, &t_dst, &t1, &t2, &t3, &t4);
+ assert(t_dst != Ity_INVALID);
+ assert(t1 != Ity_INVALID);
+
+ data->result.type = t_dst;
+ if (is_floating_point_op_with_rounding_mode(op->op)) {
+ data->opnds[0].type = t2;
+ data->opnds[1].type = t3;
+ data->opnds[2].type = t4;
+ data->opnds[3].type = Ity_INVALID;
+ } else {
+ data->opnds[0].type = t1;
+ data->opnds[1].type = t2;
+ data->opnds[2].type = t3;
+ data->opnds[3].type = t4;
+ }
+
+ /* Set the rounding mode if the operation requires one.
+ FIXME: We should iterate over all rounding modes. For that need
+ FIXME: to distinguish between binary and decimal floating point */
+ if (is_floating_point_op_with_rounding_mode(op->op)) {
+ // for now just pick one
+ data->rounding_mode = Irrm_NEAREST; // same as Irrm_DFP_NEAREST
+ } else {
+ data->rounding_mode = NO_ROUNDING_MODE;
+ }
+
+ return data;
+}
+
+int verbose = 0;
+
+int
+main(int argc, char *argv[])
+{
+ assert(sizeof(long long) == 8);
+
+ for (int i = 1; i < argc; ++i) {
+ if (strcmp(argv[i], "-v") == 0) ++verbose;
+ else if (strcmp(argv[i], "--help") == 0) {
+ printf("\nvbit-test [ -v | --help ]\n");
+ printf("\n\t-v verbose mode; shows IROps being tested\n");
+ printf("\n\t-v -v verbose mode, extreme edition\n\n");
+ return 0;
+ } else {
+ printf("%s ? Nothing happens.\n", argv[i]);
+ return 1;
+ }
+ }
+
+ if (! RUNNING_ON_VALGRIND) {
+ fprintf(stderr, "*** This program needs to run under memcheck.\n");
+ return 1;
+ }
+
+ setbuf(stdout, NULL); // make stdout unbuffered
+
+ // Iterate over all primops
+ IROp first = Iop_INVALID + 1;
+ IROp last = Iop_LAST;
+ IROp opkind;
+
+ if (0) { // overwrite for debugging
+ first = Iop_CasCmpEQ8; last = first + 1;
+ }
+
+ // Iterate over all IROps in the enum type. That is the only way to
+ // make sure the operator is tested on at least one platform.
+
+ // Loop assumes no holes in the enumerator values
+ for (opkind = first; opkind < last; ++opkind) {
+
+ const irop_t *op = get_irop(opkind);
+ if (op == NULL) continue;
+
+ test_data_t *data = new_test_data(op);
+
+ if (op->undef_kind == UNDEF_UNKNOWN) {
+ fprintf(stderr, "...skipping %s; unknown undef propagation\n",
+ op->name);
+ continue;
+ }
+
+ if (verbose) printf("Testing operator %s\n", op->name);
+
+ IRICB iricb = new_iricb(op, data);
+
+ valgrind_vex_init_for_iri(&iricb);
+
+ switch (iricb.num_operands) {
+ case 1:
+ test_unary_op(op, data);
+ break;
+
+ case 2:
+ test_binary_op(op, data);
+ break;
+
+ case 3:
+ test_ternary_op(op, data);
+ break;
+
+ case 4:
+ test_qernary_op(op, data);
+ break;
+
+ default:
+ panic("operator not handled");
+ }
+ }
+
+ return 0;
+}
Added: trunk/memcheck/tests/vbit-test/irops.c (+891 -0)
===================================================================
--- trunk/memcheck/tests/vbit-test/irops.c 2012-08-28 14:33:10 +01:00 (rev 12905)
+++ trunk/memcheck/tests/vbit-test/irops.c 2012-08-28 17:50:39 +01:00 (rev 12906)
@@ -0,0 +1,891 @@
+/* -*- mode: C; c-basic-offset: 3; -*- */
+
+#include <stdio.h> // fprintf
+#include <stdlib.h> // exit
+#include "vtest.h"
+
+#define DEFOP(op,ukind) op, #op, ukind
+
+/* The opcodes appear in the same order here as in libvex_ir.h
+ That is not necessary but helpful when supporting a new architecture.
+*/
+static const irop_t irops[] = {
+ { DEFOP(Iop_Add8, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Add16, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Add32, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Add64, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Sub8, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Sub16, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Sub32, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Sub64, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Mul8, UNDEF_LEFT), .s390x = 0, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_Mul16, UNDEF_LEFT), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_Mul32, UNDEF_LEFT), .s390x = 0, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Mul64, UNDEF_LEFT), .s390x = 0, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Or8, UNDEF_OR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Or16, UNDEF_OR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Or32, UNDEF_OR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Or64, UNDEF_OR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_And8, UNDEF_AND), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_And16, UNDEF_AND), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_And32, UNDEF_AND), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_And64, UNDEF_AND), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Xor8, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Xor16, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Xor32, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Xor64, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Shl8, UNDEF_SHL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Shl16, UNDEF_SHL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Shl32, UNDEF_SHL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Shl64, UNDEF_SHL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Shr8, UNDEF_SHR), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc asserts in isel
+ { DEFOP(Iop_Shr16, UNDEF_SHR), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc asserts in isel
+ { DEFOP(Iop_Shr32, UNDEF_SHR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Shr64, UNDEF_SHR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Sar8, UNDEF_SAR), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc asserts in isel
+ { DEFOP(Iop_Sar16, UNDEF_SAR), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc asserts in isel
+ { DEFOP(Iop_Sar32, UNDEF_SAR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Sar64, UNDEF_SAR), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpEQ8, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CmpEQ16, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CmpEQ32, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpEQ64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpNE8, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CmpNE16, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CmpNE32, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpNE64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Not8, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Not16, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Not32, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Not64, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CasCmpEQ8, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpEQ16, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpEQ32, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpEQ64, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpNE8, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpNE16, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpNE32, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CasCmpNE64, UNDEF_NONE), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MullS8, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MullS16, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MullS32, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ // s390 has signed multiplication of 64-bit values but the result
+ // is 64-bit (not 128-bit). So we cannot test this op standalone.
+ { DEFOP(Iop_MullS64, UNDEF_LEFT), .s390x = 0, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_MullU8, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MullU16, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MullU32, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_MullU64, UNDEF_LEFT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Clz64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Clz32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_Ctz64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_Ctz32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CmpLT32S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpLT64S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpLE32S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpLE64S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpLT32U, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpLT64U, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpLE32U, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpLE64U, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpNEZ8, UNDEF_ALL), }, // not supported by mc_translate
+ { DEFOP(Iop_CmpNEZ16, UNDEF_ALL), }, // not supported by mc_translate
+ { DEFOP(Iop_CmpNEZ32, UNDEF_ALL), }, // not supported by mc_translate
+ { DEFOP(Iop_CmpNEZ64, UNDEF_ALL), }, // not supported by mc_translate
+ { DEFOP(Iop_CmpwNEZ32, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_CmpwNEZ64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Left8, UNDEF_UNKNOWN), }, // not supported by mc_translate
+ { DEFOP(Iop_Left16, UNDEF_UNKNOWN), }, // not supported by mc_translate
+ { DEFOP(Iop_Left32, UNDEF_UNKNOWN), }, // not supported by mc_translate
+ { DEFOP(Iop_Left64, UNDEF_UNKNOWN), }, // not supported by mc_translate
+ { DEFOP(Iop_Max32U, UNDEF_UNKNOWN), }, // not supported by mc_translate
+ { DEFOP(Iop_CmpORD32U, UNDEF_UNKNOWN), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpORD64U, UNDEF_UNKNOWN), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpORD32S, UNDEF_UNKNOWN), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_CmpORD64S, UNDEF_UNKNOWN), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivU32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivS32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivU64, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivS64, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivU64E, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivS64E, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivU32E, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivS32E, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ // On s390 the DivMod operations always appear in a certain context
+ // So they cannot be tested in isolation on that platform.
+ { DEFOP(Iop_DivModU64to32, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_DivModS64to32, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_DivModU128to64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_DivModS128to64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_DivModS64to64, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_8Uto16, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_8Uto32, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_8Uto64, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_16Uto32, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_16Uto64, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_32Uto64, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_8Sto16, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_8Sto32, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_8Sto64, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_16Sto32, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_16Sto64, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_32Sto64, UNDEF_SEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_64to8, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_32to8, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_64to16, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_16to8, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_16HIto8, UNDEF_UPPER), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_8HLto16, UNDEF_CONCAT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc isel
+ { DEFOP(Iop_32to16, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ { DEFOP(Iop_32HIto16, UNDEF_UPPER), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_16HLto32, UNDEF_CONCAT), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // ppc isel
+ { DEFOP(Iop_64to32, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_64HIto32, UNDEF_UPPER), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_32HLto64, UNDEF_CONCAT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_128to64, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_128HIto64, UNDEF_UPPER), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_64HLto128, UNDEF_CONCAT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_Not1, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_32to1, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_64to1, UNDEF_TRUNC), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Uto8, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Uto32, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Uto64, UNDEF_ZEXT), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Sto8, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Sto16, UNDEF_ALL), }, // not handled by mc_translate
+ { DEFOP(Iop_1Sto32, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_1Sto64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_AddF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_SubF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_MulF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_DivF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_AddF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_SubF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_MulF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_DivF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_AddF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_SubF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_MulF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_DivF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_NegF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_AbsF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_NegF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_AbsF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_SqrtF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_SqrtF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_CmpF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_CmpF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F64toI16S, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F64toI32S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_F64toI64S, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_F64toI64U, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_F64toI32U, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_I32StoF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_I64StoF64, UNDEF_ALL), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_I64UtoF64, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_I64UtoF32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_I32UtoF64, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F32toI32S, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F32toI64S, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_I32StoF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_I64StoF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F32toF64, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_F64toF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_ReinterpF64asI64, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_ReinterpI64asF64, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_ReinterpF32asI32, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 1, .mips32 = 1 },
+ // ppc requires this op to show up in a specific context. So it cannot be
+ // tested standalone on that platform.
+ { DEFOP(Iop_ReinterpI32asF32, UNDEF_SAME), .s390x = 1, .amd64 = 1, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_F64HLtoF128, UNDEF_CONCAT), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128HItoF64, UNDEF_UPPER), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128LOtoF64, UNDEF_TRUNC), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_AddF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_SubF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MulF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_DivF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_NegF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_AbsF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_SqrtF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_I32StoF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_I64StoF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F32toF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F64toF128, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128toI32S, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128toI64S, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128toF64, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_F128toF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_AtanF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_Yl2xF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_Yl2xp1F64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_PRemF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_PRemC3210F64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_PRem1F64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_PRem1C3210F64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_ScaleF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_SinF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_CosF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_TanF64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_2xm1F64, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_RoundF64toInt, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_RoundF32toInt, UNDEF_ALL), .s390x = 0, .amd64 = 1, .ppc64 = 0, .mips32 = 1 },
+ { DEFOP(Iop_MAddF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MSubF32, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 0, .mips32 = 0 },
+ { DEFOP(Iop_MAddF64, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_MSubF64, UNDEF_ALL), .s390x = 1, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_MAddF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_MSubF64r32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_Est5FRSqrt, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_RoundF64toF64_NEAREST, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_RoundF64toF64_NegINF, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_RoundF64toF64_PosINF, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_RoundF64toF64_ZERO, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+ { DEFOP(Iop_TruncF64asF32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 }, // mips asserts
+ { DEFOP(Iop_RoundF64toF32, UNDEF_ALL), .s390x = 0, .amd64 = 0, .ppc64 = 1, .mips32 = 0 },
+
+ /* ------------------ 32-bit SIMD Integer ------------------ */
+ { DEFOP(Iop_QAdd32S, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub32S, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add16x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub16x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HAdd16Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HAdd16Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HSub16Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HSub16Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add8x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub8x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HAdd8Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HAdd8Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HSub8Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_HSub8Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sad8Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ16x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ8x4, UNDEF_UNKNOWN), },
+ /* ------------------ 64-bit SIMD FP ------------------------ */
+ { DEFOP(Iop_I32UtoFx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_I32StoFx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_FtoI32Ux2_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_FtoI32Sx2_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F32ToFixed32Ux2_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F32ToFixed32Sx2_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Fixed32UToF32x2_RN, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Fixed32SToF32x2_RN, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGE32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recps32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrte32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrts32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Neg32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs32Fx2, UNDEF_UNKNOWN), },
+ /* ------------------ 64-bit SIMD Integer. ------------------ */
+ { DEFOP(Iop_CmpNEZ8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd64Ux1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd64Sx1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub64Ux1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub64Sx1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PolynomialMul8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulHi16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulHi32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QRDMulHi16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QRDMulHi32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cnt8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal64x1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl64x1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal64x1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN64Sx1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN64x1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN64x1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin16Sto8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin16Sto8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin32Sto16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowBin16to8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowBin32to16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveOddLanes8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveEvenLanes8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveOddLanes16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveEvenLanes16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatOddLanes8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatOddLanes16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatEvenLanes8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatEvenLanes16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SetElem8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SetElem16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SetElem32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Extract64, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse16_8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse32_8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse32_16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Perm8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrte32x2, UNDEF_UNKNOWN), },
+ /* ------------------ Decimal Floating Point ------------------ */
+ { DEFOP(Iop_AddD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_SubD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_MulD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_DivD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_AddD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_SubD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_MulD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_DivD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_ShlD64, UNDEF_SHL), .s390x = 0, .ppc64 = 0 }, // ppc asserts
+ { DEFOP(Iop_ShrD64, UNDEF_SHR), .s390x = 0, .ppc64 = 0 }, // ditto
+ { DEFOP(Iop_ShlD128, UNDEF_SHL), .s390x = 0, .ppc64 = 0 }, // ditto
+ { DEFOP(Iop_ShrD128, UNDEF_SHR), .s390x = 0, .ppc64 = 0 }, // ditto
+ { DEFOP(Iop_D32toD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D64toD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_I64StoD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D64toD32, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D128toD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_I64StoD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D64toI64S, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D128toI64S, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_RoundD64toInt, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_RoundD128toInt, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_CmpD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_CmpD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_QuantizeD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_QuantizeD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_SignificanceRoundD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_SignificanceRoundD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_ExtractExpD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_ExtractExpD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_InsertExpD64, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_InsertExpD128, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D64HLtoD128, UNDEF_CONCAT), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D128HItoD64, UNDEF_UPPER), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_D128LOtoD64, UNDEF_TRUNC), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_DPBtoBCD, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_BCDtoDPB, UNDEF_ALL), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_ReinterpI64asD64, UNDEF_SAME), .s390x = 0, .ppc64 = 1 },
+ { DEFOP(Iop_ReinterpD64asI64, UNDEF_SAME), .s390x = 0, .ppc64 = 1 },
+ /* ------------------ 128-bit SIMD FP. ------------------ */
+ { DEFOP(Iop_Add32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLT32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLE32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpUN32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGE32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMax32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwMin32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RSqrt32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Neg32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recps32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrte32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrts32Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_I32UtoFx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_I32StoFx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_FtoI32Ux4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_FtoI32Sx4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QFtoI32Ux4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QFtoI32Sx4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RoundF32x4_RM, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RoundF32x4_RP, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RoundF32x4_RN, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RoundF32x4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F32ToFixed32Ux4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F32ToFixed32Sx4_RZ, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Fixed32UToF32x4_RN, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Fixed32SToF32x4_RN, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F32toF16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_F16toF32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLT32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLE32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpUN32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RSqrt32F0x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLT64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLE64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpUN64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RSqrt64Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLT64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpLE64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpUN64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RSqrt64F0x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V128to64, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V128HIto64, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_64HLtoV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_64UtoV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SetV128lo64, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_32UtoV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V128to32, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SetV128lo32, UNDEF_UNKNOWN), },
+ /* ------------------ 128-bit SIMD Integer. ------------------ */
+ { DEFOP(Iop_NotV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_AndV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_OrV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_XorV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd64Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QAdd64Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub64Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSub64Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MulHi32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MullEven8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MullEven16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MullEven8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_MullEven16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mull32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulHi16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulHi32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QRDMulHi16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QRDMulHi32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulLong16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QDMulLong32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PolynomialMul8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PolynomialMull8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAdd32Fx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_PwAddL32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Abs32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Avg32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpEQ64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT64Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpGT32Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cnt8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Clz32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Cls32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShlN64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ShrN64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_SarN64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shl64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Shr64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sar64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sal64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rol8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rol16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rol32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShl64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSal64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN32Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN64Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QShlN64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QSalN64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin16Sto8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin32Sto16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin16Sto8Sx16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin32Sto16Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin16Uto8Ux16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowBin32Uto16Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowBin16to8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowBin32to16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowUn16to8x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowUn32to16x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NarrowUn64to32x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn16Sto8Sx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn32Sto16Sx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn64Sto32Sx2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn16Sto8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn32Sto16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn64Sto32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn16Uto8Ux8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn32Uto16Ux4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_QNarrowUn64Uto32Ux2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen8Uto16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen16Uto32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen32Uto64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen8Sto16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen16Sto32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Widen32Sto64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveHI64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveLO64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveOddLanes8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveEvenLanes8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveOddLanes16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveEvenLanes16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveOddLanes32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_InterleaveEvenLanes32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatOddLanes8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatOddLanes16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatOddLanes32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatEvenLanes8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatEvenLanes16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CatEvenLanes32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_GetElem64x2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Dup32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_ExtractV128, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse16_8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse32_8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse32_16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_16x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Reverse64_32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Perm8x16, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Perm32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32x4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Rsqrte32x4, UNDEF_UNKNOWN), },
+ /* ------------------ 256-bit SIMD Integer. ------------------ */
+ { DEFOP(Iop_V256to64_0, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V256to64_1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V256to64_2, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V256to64_3, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_64x4toV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V256toV128_0, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V256toV128_1, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_V128HLtoV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_AndV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_OrV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_XorV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_NotV256, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ32x8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_CmpNEZ64x4, UNDEF_UNKNOWN), },
+ /* ------------------ 256-bit SIMD FP. ------------------ */
+ { DEFOP(Iop_Add64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Add32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sub32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Mul32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Div32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Sqrt64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_RSqrt32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Recip32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min32Fx8, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Max64Fx4, UNDEF_UNKNOWN), },
+ { DEFOP(Iop_Min64Fx4, UNDEF_UNKNOWN), },
+};
+
+
+/* Return a descriptor for OP, iff it exists and it is implemented
+ for the current architecture. */
+const irop_t *
+get_irop(IROp op)
+{
+ unsigned i;
+
+ for (i = 0; i < sizeof irops / sizeof *irops; ++i) {
+ const irop_t *p = irops + i;
+ if (p->op == op) {
+#ifdef __s390x__
+ return p->s390x ? p : NULL;
+#endif
+#ifdef __x86_64__
+ return p->amd64 ? p : NULL;
+#endif
+#ifdef __powerpc__
+#ifdef __powerpc64__
+ return p->ppc64 ? p : NULL;
+#else
+ return p->ppc32 ? p : NULL;
+#endif
+#endif
+#ifdef __mips__
+ return p->mips32 ? p : NULL;
+#endif
+#ifdef __arm__
+ return p->arm ? p : NULL;
+#endif
+#ifdef __i386__
+ return p->x86 ? p : NULL;
+#endif
+ return NULL;
+ }
+ }
+
+ fprintf(stderr, "unknown opcode %d\n", op);
+ exit(1);
+}
Modified: trunk/Makefile.vex.am (+1 -0)
===================================================================
--- trunk/Makefile.vex.am 2012-08-28 14:33:10 +01:00 (rev 12905)
+++ trunk/Makefile.vex.am 2012-08-28 17:50:39 +01:00 (rev 12906)
@@ -96,6 +96,7 @@
priv/main_main.c \
priv/main_util.c \
priv/ir_defs.c \
+ priv/ir_inject.c \
priv/ir_match.c \
priv/ir_opt.c \
priv/guest_generic_bb_to_IR.c \
Added: trunk/memcheck/tests/vbit-test/README (+102 -0)
===================================================================
--- trunk/memcheck/tests/vbit-test/README 2012-08-28 14:33:10 +01:00 (rev 12905)
+++ trunk/memcheck/tests/vbit-test/README 2012-08-28 17:50:39 +01:00 (rev 12906)
@@ -0,0 +1,102 @@
+vbit-test
+
+The program tests the effect of an undefined input bit to an IROp on the
+definedness of the result of that operation. It also checks that only those
+bits in the result are undefined that we expect to be undefined. That way
+we can detect false positives (there are bits in the result that are
+undefined but shouldn't) and false negatives (there are defined bits in
+the result that should be undefined).
+
+By design, the tester will always be in-synch with the list of IROps
+in libvex_ir.h. Addition / removel of IROps will cause a compile or
+runtime error of the tester and thusly will not go unnoticed.
+
+
+How it works
+------------
+The underlying idea is to
+(1) use VALGRIND_SET_VBITS to set the V-bits of the operands of an IROp
+(2) execute that IROp
+(3) use VALGRIND_GET_VBITS to obtain the V-bits of the result
+(4) compare the result against our expectation
+Do that for all IROps and for all input bits of their operands.
+For all this to work, the tester must run under the auspices of memcheck.
+
+The key step here is #2. To "execute an IROp" we need to inject some
+IR into the the superblock. This is accomplished by adding a new "special
+instruction" that is supported by all frontends. During the decoding step
+that instruction will be recognised and a suitable piece of IR will be
+inserted (function vex_inject_ir does just that). What is "suitable" depends
+on the IROp at hand and its operands. We need to know the addresses of
+those operands, their types and, trivially, which IROp we want to execute.
+This information is collected in the IR Injection Control Block (IRICB).
+To get the IRICB to VEX we use the...
[truncated message content] |
|
From: <sv...@va...> - 2012-08-28 16:49:41
|
florian 2012-08-28 17:49:30 +0100 (Tue, 28 Aug 2012)
New Revision: 2490
Log:
VEX-side support for the V-bit tester.
- recognise the new "special instruction" for all architectures
(ARM needs implementation work; x86 and ARM are untested)
- inject IR into the superblock
- type definition for the IR injection control block
Added files:
trunk/priv/ir_inject.c
Modified files:
trunk/priv/guest_amd64_toIR.c
trunk/priv/guest_arm_toIR.c
trunk/priv/guest_mips_toIR.c
trunk/priv/guest_ppc_toIR.c
trunk/priv/guest_s390_toIR.c
trunk/priv/guest_x86_toIR.c
trunk/pub/libvex.h
trunk/pub/libvex_ir.h
Modified: trunk/priv/guest_s390_toIR.c (+17 -0)
===================================================================
--- trunk/priv/guest_s390_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_s390_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -14129,6 +14129,23 @@
s390_irgen_guest_NRADDR();
} else if (bytes[0] == 0x18 && bytes[1] == 0x44 /* lr %r4, %r4 */) {
s390_irgen_call_noredir();
+ } else if (bytes[0] == 0x18 && bytes[1] == 0x55 /* lr %r5, %r5 */) {
+ vex_inject_ir(irsb, Iend_BE);
+
+ /* Invalidate the current insn. The reason is that the IRop we're
+ injecting here can change. In which case the translation has to
+ be redone. For ease of handling, we simply invalidate all the
+ time. */
+ stmt(IRStmt_Put(S390X_GUEST_OFFSET(guest_TISTART),
+ mkU64(guest_IA_curr_instr)));
+ stmt(IRStmt_Put(S390X_GUEST_OFFSET(guest_TILEN),
+ mkU64(guest_IA_next_instr - guest_IA_curr_instr)));
+ vassert(guest_IA_next_instr - guest_IA_curr_instr ==
+ S390_SPECIAL_OP_PREAMBLE_SIZE + S390_SPECIAL_OP_SIZE);
+
+ put_IA(mkaddr_expr(guest_IA_next_instr));
+ dis_res->whatNext = Dis_StopHere;
+ dis_res->jk_StopHere = Ijk_TInval;
} else {
/* We don't know what it is. */
return S390_DECODE_UNKNOWN_SPECIAL_INSN;
Modified: trunk/pub/libvex.h (+27 -0)
===================================================================
--- trunk/pub/libvex.h 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/pub/libvex.h 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -750,7 +750,34 @@
extern void LibVEX_ShowStats ( void );
+/*-------------------------------------------------------*/
+/*-- IR injection --*/
+/*-------------------------------------------------------*/
+/* IR Injection Control Block */
+
+#define NO_ROUNDING_MODE (~0u)
+
+typedef
+ struct {
+ IROp op; // the operation to perform
+ HWord result; // address of the result
+ HWord opnd1; // address of 1st operand
+ HWord opnd2; // address of 2nd operand
+ HWord opnd3; // address of 3rd operand
+ HWord opnd4; // address of 4th operand
+ IRType t_result; // type of result
+ IRType t_opnd1; // type of 1st operand
+ IRType t_opnd2; // type of 2nd operand
+ IRType t_opnd3; // type of 3rd operand
+ IRType t_opnd4; // type of 4th operand
+ UInt rounding_mode;
+ UInt num_operands; // excluding rounding mode, if any
+ }
+ IRICB;
+
+extern void LibVEX_InitIRI ( const IRICB * );
+
/*-------------------------------------------------------*/
/*--- Notes ---*/
/*-------------------------------------------------------*/
Modified: trunk/priv/guest_amd64_toIR.c (+22 -0)
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_amd64_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -117,6 +117,7 @@
4887DB (xchgq %rbx,%rbx) %RDX = client_request ( %RAX )
4887C9 (xchgq %rcx,%rcx) %RAX = guest_NRADDR
4887D2 (xchgq %rdx,%rdx) call-noredir *%RAX
+ 4887F6 (xchgq %rdi,%rdi) IR injection
Any other bytes following the 16-byte preamble are illegal and
constitute a failure in instruction decoding. This all assumes
@@ -26548,6 +26549,27 @@
vassert(dres.whatNext == Dis_StopHere);
goto decode_success;
}
+ else
+ if (code[16] == 0x48 && code[17] == 0x87
+ && code[18] == 0xff /* xchgq %rdi,%rdi */) {
+ /* IR injection */
+ DIP("IR injection\n");
+ vex_inject_ir(irsb, Iend_LE);
+
+ // Invalidate the current insn. The reason is that the IRop we're
+ // injecting here can change. In which case the translation has to
+ // be redone. For ease of handling, we simply invalidate all the
+ // time.
+ stmt(IRStmt_Put(OFFB_TISTART, mkU64(guest_RIP_curr_instr)));
+ stmt(IRStmt_Put(OFFB_TILEN, mkU64(19)));
+
+ delta += 19;
+
+ stmt( IRStmt_Put( OFFB_RIP, mkU64(guest_RIP_bbstart + delta) ) );
+ dres.whatNext = Dis_StopHere;
+ dres.jk_StopHere = Ijk_TInval;
+ goto decode_success;
+ }
/* We don't know what it is. */
goto decode_failure;
/*NOTREACHED*/
Added: trunk/priv/ir_inject.c (+253 -0)
===================================================================
--- trunk/priv/ir_inject.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/ir_inject.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -0,0 +1,253 @@
+/* -*- mode: C; c-basic-offset: 3; -*- */
+
+/*---------------------------------------------------------------*/
+/*--- begin ir_inject.c ---*/
+/*---------------------------------------------------------------*/
+
+
+/*
+ This file is part of Valgrind, a dynamic binary instrumentation
+ framework.
+
+ Copyright (C) 2012-2012 Florian Krohm (br...@ac...)
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA.
+
+ The GNU General Public License is contained in the file COPYING.
+*/
+
+#include "libvex_basictypes.h"
+#include "libvex_ir.h"
+#include "libvex.h"
+#include "main_util.h"
+
+/* Convenience macros for readibility */
+#define mkU32(v) IRExpr_Const(IRConst_U32(v))
+#define mkU64(v) IRExpr_Const(IRConst_U64(v))
+#define unop(kind, a) IRExpr_Unop(kind, a)
+#define binop(kind, a1, a2) IRExpr_Binop(kind, a1, a2)
+#define triop(kind, a1, a2, a3) IRExpr_Triop(kind, a1, a2, a3)
+#define qop(kind, a1, a2, a3, a4) IRExpr_Qop(kind, a1, a2, a3, a4)
+#define stmt(irsb, st) addStmtToIRSB(irsb, st)
+
+
+/* The IR Injection Control Block. vex_inject_ir will query its contents
+ to construct IR statements for testing purposes. */
+static IRICB iricb;
+
+
+void
+LibVEX_InitIRI(const IRICB *iricb_in)
+{
+ iricb = *iricb_in; // copy in
+}
+
+
+static IRExpr *
+load_aux(IREndness endian, IRType type, IRExpr *addr)
+{
+ if (type == Ity_D64) {
+ /* The insn selectors do not support loading a DFP value from memory.
+ So we need to fix it here by loading an integer value and
+ reinterpreting it as DFP. */
+ return unop(Iop_ReinterpI64asD64,
+ IRExpr_Load(endian, Ity_I64, addr));
+ }
+ if (type == Ity_I1) {
+ /* A Boolean value is stored as a 32-bit entity (see store_aux). */
+ return unop(Iop_32to1, IRExpr_Load(endian, Ity_I32, addr));
+ }
+
+ return IRExpr_Load(endian, type, addr);
+}
+
+
+/* Load a value from memory. Loads of more than 8 byte are split into
+ a series of 8-byte loads and combined using appropriate IROps. */
+static IRExpr *
+load(IREndness endian, IRType type, HWord haddr)
+{
+ IROp concat;
+ IRExpr *addr, *next_addr;
+
+ if (VEX_HOST_WORDSIZE == 8) {
+ addr = mkU64(haddr);
+ next_addr = binop(Iop_Add64, addr, mkU64(8));
+ } else if (VEX_HOST_WORDSIZE == 4) {
+ addr = mkU32(haddr);
+ next_addr = binop(Iop_Add32, addr, mkU32(4));
+ } else {
+ vpanic("invalid #bytes for address");
+ }
+
+ switch (type) {
+ case Ity_I128: concat = Iop_64HLto128; type = Ity_I64; goto load128;
+ case Ity_F128: concat = Iop_F64HLtoF128; type = Ity_F64; goto load128;
+ case Ity_D128: concat = Iop_D64HLtoD128; type = Ity_D64; goto load128;
+
+ load128:
+ /* Two loads of 64 bit each. */
+ if (endian == Iend_BE) {
+ /* The more significant bits are at the lower address. */
+ return binop(concat,
+ load_aux(endian, type, addr),
+ load_aux(endian, type, next_addr));
+ } else {
+ /* The more significant bits are at the higher address. */
+ return binop(concat,
+ load_aux(endian, type, next_addr),
+ load_aux(endian, type, addr));
+ }
+
+ default:
+ return load_aux(endian, type, addr);
+ }
+}
+
+
+static void
+store_aux(IRSB *irsb, IREndness endian, IRExpr *addr, IRExpr *data)
+{
+ if (typeOfIRExpr(irsb->tyenv, data) == Ity_D64) {
+ /* The insn selectors do not support writing a DFP value to memory.
+ So we need to fix it here by reinterpreting the DFP value as an
+ integer and storing that. */
+ data = unop(Iop_ReinterpD64asI64, data);
+ }
+ if (typeOfIRExpr(irsb->tyenv, data) == Ity_I1) {
+ /* We cannot store a single bit. So we store it in a 32-bit container.
+ See also load_aux. */
+ data = unop(Iop_1Uto32, data);
+ }
+ stmt(irsb, IRStmt_Store(endian, addr, data));
+}
+
+
+/* Store a value to memory. If a value requires more than 8 bytes a series
+ of 8-byte loads will be generated. */
+static void __inline__
+store(IRSB *irsb, IREndness endian, HWord haddr, IRExpr *data)
+{
+ IROp high, low;
+ IRExpr *addr, *next_addr;
+
+ if (VEX_HOST_WORDSIZE == 8) {
+ addr = mkU64(haddr);
+ next_addr = binop(Iop_Add64, addr, mkU64(8));
+ } else if (VEX_HOST_WORDSIZE == 4) {
+ addr = mkU32(haddr);
+ next_addr = binop(Iop_Add32, addr, mkU32(4));
+ } else {
+ vpanic("invalid #bytes for address");
+ }
+
+ switch (typeOfIRExpr(irsb->tyenv, data)) {
+ case Ity_I128: high = Iop_128HIto64; low = Iop_128to64; goto store128;
+ case Ity_F128: high = Iop_F128HItoF64; low = Iop_F128LOtoF64; goto store128;
+ case Ity_D128: high = Iop_D128HItoD64; low = Iop_D128LOtoD64; goto store128;
+
+ store128:
+ /* Two stores of 64 bit each. */
+ if (endian == Iend_BE) {
+ /* The more significant bits are at the lower address. */
+ store_aux(irsb, endian, addr, unop(high, data));
+ store_aux(irsb, endian, next_addr, unop(low, data));
+ } else {
+ /* The more significant bits are at the higher address. */
+ store_aux(irsb, endian, addr, unop(low, data));
+ store_aux(irsb, endian, next_addr, unop(high, data));
+ }
+ return;
+
+ default:
+ store_aux(irsb, endian, addr, data);
+ return;
+ }
+}
+
+
+/* Inject IR stmts depending on the data provided in the control
+ block iricb. */
+void
+vex_inject_ir(IRSB *irsb, IREndness endian)
+{
+ IRExpr *data, *rounding_mode, *opnd1, *opnd2, *opnd3, *opnd4;
+
+ rounding_mode = NULL;
+ if (iricb.rounding_mode != NO_ROUNDING_MODE) {
+ rounding_mode = mkU32(iricb.rounding_mode);
+ }
+
+ switch (iricb.num_operands) {
+ case 1:
+ opnd1 = load(endian, iricb.t_opnd1, iricb.opnd1);
+ if (rounding_mode)
+ data = binop(iricb.op, rounding_mode, opnd1);
+ else
+ data = unop(iricb.op, opnd1);
+ break;
+
+ case 2:
+ opnd1 = load(endian, iricb.t_opnd1, iricb.opnd1);
+ opnd2 = load(endian, iricb.t_opnd2, iricb.opnd2);
+ if (rounding_mode)
+ data = triop(iricb.op, rounding_mode, opnd1, opnd2);
+ else
+ data = binop(iricb.op, opnd1, opnd2);
+ break;
+
+ case 3:
+ opnd1 = load(endian, iricb.t_opnd1, iricb.opnd1);
+ opnd2 = load(endian, iricb.t_opnd2, iricb.opnd2);
+ opnd3 = load(endian, iricb.t_opnd3, iricb.opnd3);
+ if (rounding_mode)
+ data = qop(iricb.op, rounding_mode, opnd1, opnd2, opnd3);
+ else
+ data = triop(iricb.op, opnd1, opnd2, opnd3);
+ break;
+
+ case 4:
+ vassert(rounding_mode == NULL);
+ opnd1 = load(endian, iricb.t_opnd1, iricb.opnd1);
+ opnd2 = load(endian, iricb.t_opnd2, iricb.opnd2);
+ opnd3 = load(endian, iricb.t_opnd3, iricb.opnd3);
+ opnd4 = load(endian, iricb.t_opnd4, iricb.opnd4);
+ data = qop(iricb.op, opnd1, opnd2, opnd3, opnd4);
+ break;
+
+ default:
+ vpanic("unsupported operator");
+ }
+
+ store(irsb, endian, iricb.result, data);
+
+ if (0) {
+ vex_printf("BEGIN inject\n");
+ if (sizeofIRType(iricb.t_result) <= 8) {
+ ppIRStmt(irsb->stmts[irsb->stmts_used - 1]);
+ } else if (sizeofIRType(iricb.t_result) == 16) {
+ ppIRStmt(irsb->stmts[irsb->stmts_used - 2]);
+ vex_printf("\n");
+ ppIRStmt(irsb->stmts[irsb->stmts_used - 1]);
+ vex_printf("\n");
+ }
+ vex_printf("END inject\n");
+ }
+}
+
+/*---------------------------------------------------------------*/
+/*--- end ir_inject.c ---*/
+/*---------------------------------------------------------------*/
Modified: trunk/priv/guest_arm_toIR.c (+25 -0)
===================================================================
--- trunk/priv/guest_arm_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_arm_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -91,6 +91,7 @@
E18AA00A (orr r10,r10,r10) R3 = client_request ( R4 )
E18BB00B (orr r11,r11,r11) R3 = guest_NRADDR
E18CC00C (orr r12,r12,r12) branch-and-link-to-noredir R4
+ E18DD00D (orr r13,r13,r13) IR injection
Any other bytes following the 16-byte preamble are illegal and
constitute a failure in instruction decoding. This all assumes
@@ -12476,6 +12477,30 @@
dres.whatNext = Dis_StopHere;
goto decode_success;
}
+ else
+ if (getUIntLittleEndianly(code+16) == 0xE18DD00D
+ /* orr r13,r13,r13 */) {
+ /* IR injection */
+ DIP("IR injection\n");
+
+ vex_inject_ir(irsb, Iend_LE);
+
+ // Invalidate the current insn. The reason is that the IRop we're
+ // injecting here can change. In which case the translation has to
+ // be redone. For ease of handling, we simply invalidate all the
+ // time.
+#if 0
+ // FIXME: needs to be fixed
+ stmt(IRStmt_Put(OFFB_TISTART, mkU32(guest_R15_curr_instr_notENC)));
+ stmt(IRStmt_Put(OFFB_TILEN, mkU32(20)));
+
+ llPutIReg(15, mkU32( guest_R15_curr_instr_notENC + 20 ));
+
+ dres.whatNext = Dis_StopHere;
+ dres.jk_StopHere = Ijk_TInval;
+ goto decode_success;
+#endif
+ }
/* We don't know what it is. Set opc1/opc2 so decode_failure
can print the insn following the Special-insn preamble. */
insn = getUIntLittleEndianly(code+16);
Modified: trunk/pub/libvex_ir.h (+9 -1)
===================================================================
--- trunk/pub/libvex_ir.h 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/pub/libvex_ir.h 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -1461,7 +1461,8 @@
Iop_Recip32Fx8,
Iop_Max32Fx8, Iop_Min32Fx8,
- Iop_Max64Fx4, Iop_Min64Fx4
+ Iop_Max64Fx4, Iop_Min64Fx4,
+ Iop_LAST /* must be the last enumerator */
}
IROp;
@@ -2496,6 +2497,13 @@
/* Is this any value actually in the enumeration 'IRType' ? */
extern Bool isPlausibleIRType ( IRType ty );
+
+/*---------------------------------------------------------------*/
+/*--- IR injection ---*/
+/*---------------------------------------------------------------*/
+void vex_inject_ir(IRSB *, IREndness);
+
+
#endif /* ndef __LIBVEX_IR_H */
Modified: trunk/priv/guest_x86_toIR.c (+21 -0)
===================================================================
--- trunk/priv/guest_x86_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_x86_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -148,6 +148,7 @@
87DB (xchgl %ebx,%ebx) %EDX = client_request ( %EAX )
87C9 (xchgl %ecx,%ecx) %EAX = guest_NRADDR
87D2 (xchgl %edx,%edx) call-noredir *%EAX
+ 87FF (xchgl %edi,%edi) IR injection
Any other bytes following the 12-byte preamble are illegal and
constitute a failure in instruction decoding. This all assumes
@@ -8017,6 +8018,26 @@
vassert(dres.whatNext == Dis_StopHere);
goto decode_success;
}
+ else
+ if (code[12] == 0x87 && code[13] == 0xFF /* xchgl %edi,%edi */) {
+ /* IR injection */
+ DIP("IR injection\n");
+ vex_inject_ir(irsb, Iend_LE);
+
+ // Invalidate the current insn. The reason is that the IRop we're
+ // injecting here can change. In which case the translation has to
+ // be redone. For ease of handling, we simply invalidate all the
+ // time.
+ stmt(IRStmt_Put(OFFB_TISTART, mkU32(guest_EIP_curr_instr)));
+ stmt(IRStmt_Put(OFFB_TILEN, mkU32(14)));
+
+ delta += 14;
+
+ stmt( IRStmt_Put( OFFB_EIP, mkU32(guest_EIP_bbstart + delta) ) );
+ dres.whatNext = Dis_StopHere;
+ dres.jk_StopHere = Ijk_TInval;
+ goto decode_success;
+ }
/* We don't know what it is. */
goto decode_failure;
/*NOTREACHED*/
Modified: trunk/priv/guest_ppc_toIR.c (+22 -0)
===================================================================
--- trunk/priv/guest_ppc_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_ppc_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -93,6 +93,7 @@
7C421378 (or 2,2,2) %R3 = guest_NRADDR
7C631B78 (or 3,3,3) branch-and-link-to-noredir %R11
7C842378 (or 4,4,4) %R3 = guest_NRADDR_GPR2
+ 7CA52B78 (or 5,5,5) IR injection
Any other bytes following the 16-byte preamble are illegal and
constitute a failure in instruction decoding. This all assumes
@@ -16589,6 +16590,27 @@
putIReg(3, IRExpr_Get( OFFB_NRADDR_GPR2, ty ));
goto decode_success;
}
+ else
+ if (getUIntBigendianly(code+16) == 0x7CA52B78 /* or 5,5,5 */) {
+ DIP("IR injection\n");
+
+ vex_inject_ir(irsb, Iend_BE);
+
+ delta += 20;
+ dres.len = 20;
+
+ // Invalidate the current insn. The reason is that the IRop we're
+ // injecting here can change. In which case the translation has to
+ // be redone. For ease of handling, we simply invalidate all the
+ // time.
+ stmt(IRStmt_Put(OFFB_TISTART, mkU64(guest_CIA_curr_instr)));
+ stmt(IRStmt_Put(OFFB_TILEN, mkU64(20)));
+
+ putGST( PPC_GST_CIA, mkSzImm( ty, guest_CIA_bbstart + delta ));
+ dres.whatNext = Dis_StopHere;
+ dres.jk_StopHere = Ijk_TInval;
+ goto decode_success;
+ }
/* We don't know what it is. Set opc1/opc2 so decode_failure
can print the insn following the Special-insn preamble. */
theInstr = getUIntBigendianly(code+16);
Modified: trunk/priv/guest_mips_toIR.c (+19 -0)
===================================================================
--- trunk/priv/guest_mips_toIR.c 2012-08-28 14:31:31 +01:00 (rev 2489)
+++ trunk/priv/guest_mips_toIR.c 2012-08-28 17:49:30 +01:00 (rev 2490)
@@ -1292,6 +1292,25 @@
dres.jk_StopHere = Ijk_NoRedir;
dres.whatNext = Dis_StopHere;
goto decode_success;
+ } else if (getUInt(code + 16) == 0x016b5825/* or t3,t3,t3 */ ) {
+ /* IR injection */
+ DIP("IR injection\n");
+#if defined (_MIPSEL)
+ vex_inject_ir(irsb, Iend_LE);
+#elif defined (_MIPSEB)
+ vex_inject_ir(irsb, Iend_BE);
+#endif
+ stmt(IRStmt_Put(offsetof(VexGuestMIPS32State, guest_TISTART),
+ mkU32(guest_PC_curr_instr)));
+ stmt(IRStmt_Put(offsetof(VexGuestMIPS32State, guest_TILEN),
+ mkU32(20)));
+
+ putPC(mkU32(guest_PC_curr_instr + 20));
+ dres.whatNext = Dis_StopHere;
+ dres.jk_StopHere = Ijk_TInval;
+ dres.len = 20;
+ delta += 20;
+ goto decode_success;
}
/* We don't know what it is. Set opc1/opc2 so decode_failure
|
|
From: Florian K. <br...@ac...> - 2012-08-28 16:34:33
|
On 08/28/2012 11:27 AM, Andrew C. Morrow wrote:
> Hi Julian -
>
> Thanks for the pointer to the relevant code.
>
> I can make the check work again by marking aLocal as volatile:
>
> HChar* volatile aLocal = (HChar*)&limLo; /* any auto local will do */
>
> Complete speculation, but maybe what is happening is that clang is
> optimizing away the entire conditional as always taken, reasoning
> (correctly or incorrectly) that an auto variable will never fall
> within an address range that is reserved for an extern char array?
The reason is that the comparisons aLocal < limLo and aLocal >= limHi
cause undefined behaviour (according to c99 6.5.8) because they compare
pointers that do not point into the same aggregate.
Compilers are free to do whatever they like in that case.
Another fix would be to transform the pointers to like-sized integers
and compare those. That kind of conversion causes implementation defined
behaviour which compilers are supposed to document. So you could look up
whether it works.. I suppose, using volatile is the easier "fix".
Florian
>> VG_(debugLog)(1, "main", "Checking current stack is plausible\n");
>> { HChar* limLo = (HChar*)(&VG_(interim_stack).bytes[0]);
>> HChar* limHi = limLo + sizeof(VG_(interim_stack));
>> HChar* aLocal = (HChar*)&limLo; /* any auto local will do */
>> /* "Apple clang version 4.0 (tags/Apple/clang-421.0.57) (based on
>> LLVM 3.1svn)" appears to miscompile the following check,
>> causing run to abort at this point (in 64-bit mode) even
>> though aLocal is within limLo .. limHi. Try building with
>> gcc instead. */
>> if (aLocal < limLo || aLocal >= limHi) {
|
|
From: Julian S. <js...@ac...> - 2012-08-28 15:44:10
|
On Tuesday, August 28, 2012, Andrew C. Morrow wrote: > I can make the check work again by marking aLocal as volatile: > > HChar* volatile aLocal = (HChar*)&limLo; /* any auto local will do */ > > Complete speculation, but maybe what is happening is that clang is > optimizing away the entire conditional as always taken, reasoning > (correctly or incorrectly) that an auto variable will never fall > within an address range that is reserved for an extern char array? Hmm, that's a good point. I couldn't figure out why it was failing. If you can verify that the change works with both clang and gcc then I'll be happy to commit it. J |
|
From: Andrew C. M. <and...@gm...> - 2012-08-28 15:27:41
|
Hi Julian -
Thanks for the pointer to the relevant code.
I can make the check work again by marking aLocal as volatile:
HChar* volatile aLocal = (HChar*)&limLo; /* any auto local will do */
Complete speculation, but maybe what is happening is that clang is
optimizing away the entire conditional as always taken, reasoning
(correctly or incorrectly) that an auto variable will never fall
within an address range that is reserved for an extern char array?
On Tue, Aug 28, 2012 at 5:05 AM, Julian Seward <js...@ac...> wrote:
>
> On Monday, August 27, 2012, Andrew C. Morrow wrote:
>> --2030:0:main Root stack 0x238E20000 to 0x238F24000, a local
>> 0x238F21FB0 --2030:0:main Valgrind: FATAL: Initial stack switched
>> failed.
>> --2030:0:main Cannot continue. Sorry.
>>
>> If I rebuild valgrind with llvm-gcc-4.2 as the compiler, all is well.
>
> Ah yes. I fell over this too, and documented it in the sources, but
> failed to document it anywhere else.
>
> It is to do with this bit of m_main.c, around line 1614 -- see the
> comment. I didn't chase it further, because it compiled with gcc and
> it had (and still does have) more serious problems on OSX 10.8, so
> I spent time investigating those instead.
>
> If you want to try and make sense of what's going on here with
> clang, that would be good, since I find it hard to believe that
> clang would really have miscompiled an expression as simple
> as "aLocal < limLo || aLocal >= limHi".
>
> J
>
>
> //--------------------------------------------------------------
> // Ensure we're on a plausible stack.
> // p: logging
> //--------------------------------------------------------------
> VG_(debugLog)(1, "main", "Checking current stack is plausible\n");
> { HChar* limLo = (HChar*)(&VG_(interim_stack).bytes[0]);
> HChar* limHi = limLo + sizeof(VG_(interim_stack));
> HChar* aLocal = (HChar*)&limLo; /* any auto local will do */
> /* "Apple clang version 4.0 (tags/Apple/clang-421.0.57) (based on
> LLVM 3.1svn)" appears to miscompile the following check,
> causing run to abort at this point (in 64-bit mode) even
> though aLocal is within limLo .. limHi. Try building with
> gcc instead. */
> if (aLocal < limLo || aLocal >= limHi) {
> /* something's wrong. Stop. */
> VG_(debugLog)(0, "main", "Root stack %p to %p, a local %p\n",
> limLo, limHi, aLocal );
> VG_(debugLog)(0, "main", "Valgrind: FATAL: "
> "Initial stack switched failed.\n");
> VG_(debugLog)(0, "main", " Cannot continue. Sorry.\n");
> VG_(exit)(1);
> }
> }
>
|
|
From: <sv...@va...> - 2012-08-28 13:33:28
|
florian 2012-08-28 14:33:10 +0100 (Tue, 28 Aug 2012)
New Revision: 12905
Log:
s390: Add zEC12 machine model. Fix spelling for some older models.
Modified files:
trunk/coregrind/m_machine.c
trunk/tests/s390x_features.c
Modified: trunk/tests/s390x_features.c (+5 -4)
===================================================================
--- trunk/tests/s390x_features.c 2012-08-28 01:38:47 +01:00 (rev 12904)
+++ trunk/tests/s390x_features.c 2012-08-28 14:33:10 +01:00 (rev 12905)
@@ -79,12 +79,13 @@
{ "2066", "z800" },
{ "2084", "z990" },
{ "2086", "z890" },
- { "2094", "z9-ec" },
- { "2096", "z9-bc" },
- { "2097", "z10-ec" },
- { "2098", "z10-bc" },
+ { "2094", "z9-EC" },
+ { "2096", "z9-BC" },
+ { "2097", "z10-EC" },
+ { "2098", "z10-BC" },
{ "2817", "z196" },
{ "2818", "z114" },
+ { "2827", "zEC12" },
};
Modified: trunk/coregrind/m_machine.c (+1 -0)
===================================================================
--- trunk/coregrind/m_machine.c 2012-08-28 01:38:47 +01:00 (rev 12904)
+++ trunk/coregrind/m_machine.c 2012-08-28 14:33:10 +01:00 (rev 12905)
@@ -531,6 +531,7 @@
{ "2098", VEX_S390X_MODEL_Z10_BC },
{ "2817", VEX_S390X_MODEL_Z196 },
{ "2818", VEX_S390X_MODEL_Z114 },
+ { "2827", VEX_S390X_MODEL_ZEC12 },
};
Int model, n, fh;
|
|
From: <sv...@va...> - 2012-08-28 13:31:46
|
florian 2012-08-28 14:31:31 +0100 (Tue, 28 Aug 2012)
New Revision: 2489
Log:
s390: Add the zEC12 machine model.
Modified files:
trunk/pub/libvex.h
Modified: trunk/pub/libvex.h (+2 -1)
===================================================================
--- trunk/pub/libvex.h 2012-08-26 19:58:13 +01:00 (rev 2488)
+++ trunk/pub/libvex.h 2012-08-28 14:31:31 +01:00 (rev 2489)
@@ -119,7 +119,8 @@
#define VEX_S390X_MODEL_Z10_BC 7
#define VEX_S390X_MODEL_Z196 8
#define VEX_S390X_MODEL_Z114 9
-#define VEX_S390X_MODEL_UNKNOWN 10 /* always last in list */
+#define VEX_S390X_MODEL_ZEC12 10
+#define VEX_S390X_MODEL_UNKNOWN 11 /* always last in list */
#define VEX_S390X_MODEL_MASK 0x3F
#define VEX_HWCAPS_S390X_LDISP (1<<6) /* Long-displacement facility */
|
|
From: Julian S. <js...@ac...> - 2012-08-28 09:06:28
|
On Monday, August 27, 2012, Andrew C. Morrow wrote:
> --2030:0:main Root stack 0x238E20000 to 0x238F24000, a local
> 0x238F21FB0 --2030:0:main Valgrind: FATAL: Initial stack switched
> failed.
> --2030:0:main Cannot continue. Sorry.
>
> If I rebuild valgrind with llvm-gcc-4.2 as the compiler, all is well.
Ah yes. I fell over this too, and documented it in the sources, but
failed to document it anywhere else.
It is to do with this bit of m_main.c, around line 1614 -- see the
comment. I didn't chase it further, because it compiled with gcc and
it had (and still does have) more serious problems on OSX 10.8, so
I spent time investigating those instead.
If you want to try and make sense of what's going on here with
clang, that would be good, since I find it hard to believe that
clang would really have miscompiled an expression as simple
as "aLocal < limLo || aLocal >= limHi".
J
//--------------------------------------------------------------
// Ensure we're on a plausible stack.
// p: logging
//--------------------------------------------------------------
VG_(debugLog)(1, "main", "Checking current stack is plausible\n");
{ HChar* limLo = (HChar*)(&VG_(interim_stack).bytes[0]);
HChar* limHi = limLo + sizeof(VG_(interim_stack));
HChar* aLocal = (HChar*)&limLo; /* any auto local will do */
/* "Apple clang version 4.0 (tags/Apple/clang-421.0.57) (based on
LLVM 3.1svn)" appears to miscompile the following check,
causing run to abort at this point (in 64-bit mode) even
though aLocal is within limLo .. limHi. Try building with
gcc instead. */
if (aLocal < limLo || aLocal >= limHi) {
/* something's wrong. Stop. */
VG_(debugLog)(0, "main", "Root stack %p to %p, a local %p\n",
limLo, limHi, aLocal );
VG_(debugLog)(0, "main", "Valgrind: FATAL: "
"Initial stack switched failed.\n");
VG_(debugLog)(0, "main", " Cannot continue. Sorry.\n");
VG_(exit)(1);
}
}
|
|
From: Rich C. <rc...@wi...> - 2012-08-28 05:17:39
|
valgrind revision: 12904
VEX revision: 2488
C compiler: i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)
Assembler:
C library: unknown
uname -mrs: Darwin 10.8.0 i386
Vendor version: unknown
Nightly build on macx86 ( Darwin 10.8.0 i386 )
Started at 2012-08-27 23:35:00 CDT
Ended at 2012-08-28 00:17:24 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
== 498 tests, 144 stderr failures, 4 stdout failures, 3 stderrB failures, 3 stdoutB failures, 1 post failure ==
gdbserver_tests/mchelp (stdoutB)
gdbserver_tests/mchelp (stderrB)
gdbserver_tests/mcinvokeRU (stdoutB)
gdbserver_tests/mcinvokeRU (stderrB)
gdbserver_tests/mcinvokeWS (stdoutB)
gdbserver_tests/mcinvokeWS (stderrB)
memcheck/tests/accounting (stderr)
memcheck/tests/badpoll (stderr)
memcheck/tests/big_blocks_freed_list (stderr)
memcheck/tests/bug287260 (stderr)
memcheck/tests/darwin/aio (stderr)
memcheck/tests/darwin/pth-supp (stderr)
memcheck/tests/darwin/scalar (stderr)
memcheck/tests/deep-backtrace (stderr)
memcheck/tests/err_disable4 (stderr)
memcheck/tests/leak-delta (stderr)
memcheck/tests/memcmptest (stderr)
memcheck/tests/mismatches (stderr)
memcheck/tests/null_socket (stdout)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/overlap (stdout)
memcheck/tests/overlap (stderr)
memcheck/tests/strchr (stderr)
memcheck/tests/test-plo-no (stderr)
memcheck/tests/varinfo3 (stderr)
memcheck/tests/varinfo5 (stderr)
memcheck/tests/vcpu_fnfns (stdout)
memcheck/tests/writev1 (stderr)
massif/tests/big-alloc (post)
massif/tests/pages_as_heap (stderr)
none/tests/allexec32 (stderr)
none/tests/allexec64 (stderr)
none/tests/async-sigs (stderr)
none/tests/cmdline5 (stderr)
none/tests/execve (stderr)
none/tests/faultstatus (stderr)
none/tests/mmap_fcntl_bug (stderr)
none/tests/nodir (stderr)
none/tests/pth_blockedsig (stderr)
none/tests/require-text-symbol-2 (stderr)
none/tests/rlimit64_nofile (stderr)
none/tests/shell_nosuchfile (stderr)
none/tests/x86/cse_fail (stdout)
helgrind/tests/annotate_hbefore (stderr)
helgrind/tests/annotate_rwlock (stderr)
helgrind/tests/annotate_smart_pointer (stderr)
helgrind/tests/cond_timedwait_invalid (stderr)
helgrind/tests/free_is_write (stderr)
helgrind/tests/hg01_all_ok (stderr)
helgrind/tests/hg02_deadlock (stderr)
helgrind/tests/hg03_inherit (stderr)
helgrind/tests/hg04_race (stderr)
helgrind/tests/hg05_race2 (stderr)
helgrind/tests/hg06_readshared (stderr)
helgrind/tests/locked_vs_unlocked1_fwd (stderr)
helgrind/tests/locked_vs_unlocked1_rev (stderr)
helgrind/tests/locked_vs_unlocked2 (stderr)
helgrind/tests/locked_vs_unlocked3 (stderr)
helgrind/tests/pth_destroy_cond (stderr)
helgrind/tests/rwlock_race (stderr)
helgrind/tests/rwlock_test (stderr)
helgrind/tests/t2t_laog (stderr)
helgrind/tests/tc01_simple_race (stderr)
helgrind/tests/tc02_simple_tls (stderr)
helgrind/tests/tc03_re_excl (stderr)
helgrind/tests/tc04_free_lock (stderr)
helgrind/tests/tc05_simple_race (stderr)
helgrind/tests/tc06_two_races (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
helgrind/tests/tc07_hbl1 (stderr)
helgrind/tests/tc08_hbl2 (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
helgrind/tests/tc10_rec_lock (stderr)
helgrind/tests/tc11_XCHG (stderr)
helgrind/tests/tc12_rwl_trivial (stderr)
helgrind/tests/tc13_laog1 (stderr)
helgrind/tests/tc14_laog_dinphils (stderr)
helgrind/tests/tc15_laog_lockdel (stderr)
helgrind/tests/tc16_byterace (stderr)
helgrind/tests/tc17_sembar (stderr)
helgrind/tests/tc18_semabuse (stderr)
helgrind/tests/tc19_shadowmem (stderr)
helgrind/tests/tc21_pthonce (stderr)
helgrind/tests/tc23_bogus_condwait (stderr)
helgrind/tests/tc24_nonzero_sem (stderr)
drd/tests/annotate_barrier (stderr)
drd/tests/annotate_barrier_xml (stderr)
drd/tests/annotate_hb_race (stderr)
drd/tests/annotate_hbefore (stderr)
drd/tests/annotate_ignore_read (stderr)
drd/tests/annotate_ignore_rw (stderr)
drd/tests/annotate_ignore_rw2 (stderr)
drd/tests/annotate_ignore_write (stderr)
drd/tests/annotate_ignore_write2 (stderr)
drd/tests/annotate_order_1 (stderr)
drd/tests/annotate_order_2 (stderr)
drd/tests/annotate_order_3 (stderr)
drd/tests/annotate_rwlock (stderr)
drd/tests/annotate_smart_pointer (stderr)
drd/tests/annotate_smart_pointer2 (stderr)
drd/tests/annotate_spinlock (stderr)
drd/tests/annotate_static (stderr)
drd/tests/atomic_var (stderr)
drd/tests/bug-235681 (stderr)
drd/tests/circular_buffer (stderr)
drd/tests/fp_race (stderr)
drd/tests/fp_race2 (stderr)
drd/tests/fp_race_xml (stderr)
drd/tests/free_is_write (stderr)
drd/tests/free_is_write2 (stderr)
drd/tests/hg01_all_ok (stderr)
drd/tests/hg02_deadlock (stderr)
drd/tests/hg03_inherit (stderr)
drd/tests/hg04_race (stderr)
drd/tests/hg05_race2 (stderr)
drd/tests/hg06_readshared (stderr)
drd/tests/linuxthreads_det (stderr)
drd/tests/monitor_example (stderr)
drd/tests/pth_broadcast (stderr)
drd/tests/pth_cleanup_handler (stderr)
drd/tests/pth_cond_race (stderr)
drd/tests/pth_cond_race2 (stderr)
drd/tests/pth_cond_race3 (stderr)
drd/tests/pth_create_chain (stderr)
drd/tests/pth_detached3 (stderr)
drd/tests/pth_inconsistent_cond_wait (stderr)
drd/tests/pth_once (stderr)
drd/tests/read_and_free_race (stderr)
drd/tests/rwlock_race (stderr)
drd/tests/rwlock_test (stderr)
drd/tests/sem_open (stderr)
drd/tests/sem_open2 (stderr)
drd/tests/sem_open3 (stderr)
drd/tests/sem_open_traced (stderr)
drd/tests/sem_wait (stderr)
drd/tests/sigalrm (stderr)
drd/tests/tc01_simple_race (stderr)
drd/tests/tc02_simple_tls (stderr)
drd/tests/tc03_re_excl (stderr)
drd/tests/tc05_simple_race (stderr)
drd/tests/tc06_two_races (stderr)
drd/tests/tc07_hbl1 (stderr)
drd/tests/tc08_hbl2 (stderr)
drd/tests/tc09_bad_unlock (stderr)
drd/tests/tc11_XCHG (stderr)
drd/tests/tc16_byterace (stderr)
drd/tests/tc17_sembar (stderr)
drd/tests/tc19_shadowmem (stderr)
drd/tests/tc21_pthonce (stderr)
drd/tests/tc23_bogus_condwait (stderr)
drd/tests/thread_name (stderr)
drd/tests/thread_name_xml (stderr)
drd/tests/threaded-fork (stderr)
drd/tests/unit_bitmap (stderr)
drd/tests/unit_vc (stderr)
=================================================
./valgrind-new/drd/tests/annotate_barrier.stderr.diff
=================================================
--- annotate_barrier.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_barrier.stderr.out 2012-08-28 00:14:13.000000000 -0500
@@ -37,6 +37,123 @@
by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
Thread 1:
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Address 0x........ is at offset 8 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Address 0x........ is at offset 8 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
<truncated beyond 100 lines>
=================================================
./valgrind-new/drd/tests/annotate_barrier_xml.stderr.diff
=================================================
--- annotate_barrier_xml.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_barrier_xml.stderr.out 2012-08-28 00:14:14.000000000 -0500
@@ -188,7 +188,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>start_thread</fn>
+ <fn>_pthread_start</fn>
</frame>
</stack>
<auxwhat>Address 0x........ is at offset 0 from 0x.........</auxwhat>
@@ -258,6 +258,575 @@
<error>
<unique>0x........</unique>
<tid>...</tid>
+ <kind>ConflictingAccess</kind>
+ <what>Conflicting load by thread 1 at 0x........ size 4</what>
+ <stack>
+ <frame>
+ <ip>0x........</ip>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$UNIX2003</fn>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$*</fn>
+ <dir>...</dir>
+ <file>drd_pthread_intercepts.c</file>
+ <line>...</line>
+ </frame>
+ </stack>
+ <auxwhat>Allocation context: Data section of /usr/lib/libSystem.B.dylib</auxwhat>
+</error>
+
+<error>
+ <unique>0x........</unique>
+ <tid>...</tid>
+ <kind>ConflictingAccess</kind>
+ <what>Conflicting load by thread 1 at 0x........ size 4</what>
+ <stack>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>new_sem_from_pool</fn>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$UNIX2003</fn>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$*</fn>
+ <dir>...</dir>
+ <file>drd_pthread_intercepts.c</file>
+ <line>...</line>
+ </frame>
+ </stack>
+ <auxwhat>Allocation context: Data section of /usr/lib/libSystem.B.dylib</auxwhat>
+</error>
+
+<error>
+ <unique>0x........</unique>
+ <tid>...</tid>
+ <kind>ConflictingAccess</kind>
+ <what>Conflicting load by thread 1 at 0x........ size 4</what>
+ <stack>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>new_sem_from_pool</fn>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$UNIX2003</fn>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>pthread_join$*</fn>
+ <dir>...</dir>
+ <file>drd_pthread_intercepts.c</file>
+ <line>...</line>
+ </frame>
+ </stack>
+ <auxwhat>Allocation context: Data section of /usr/lib/libSystem.B.dylib</auxwhat>
+</error>
+
+<error>
+ <unique>0x........</unique>
+ <tid>...</tid>
+ <kind>ConflictingAccess</kind>
+ <what>Conflicting load by thread 1 at 0x........ size 4</what>
+ <stack>
<truncated beyond 100 lines>
=================================================
./valgrind-new/drd/tests/annotate_hb_race.stderr.diff
=================================================
--- annotate_hb_race.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_hb_race.stderr.out 2012-08-28 00:14:16.000000000 -0500
@@ -3,6 +3,60 @@
at 0x........: main (annotate_hb_race.c:?)
Allocation context: BSS section of annotate_hb_race
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Address 0x........ is at offset 4 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hb_race.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Done.
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_hbefore.stderr.diff
=================================================
--- annotate_hbefore.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_hbefore.stderr.out 2012-08-28 00:14:18.000000000 -0500
@@ -1,3 +1,44 @@
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+Address 0x........ is at offset 4 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_hbefore.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+
+ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_ignore_read.stderr.diff
=================================================
--- annotate_ignore_read.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_ignore_read.stderr.out 2012-08-28 00:14:19.000000000 -0500
@@ -1,6 +1,88 @@
FLAGS [phb=1, fm=0]
test69: negative
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Address 0x........ is at offset 12 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test69::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
GLOB=30
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_ignore_rw.stderr.diff
=================================================
--- annotate_ignore_rw.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_ignore_rw.stderr.out 2012-08-28 00:14:21.000000000 -0500
@@ -4,6 +4,60 @@
Location 0x........ is 0 bytes inside local var "s_c"
declared at annotate_ignore_rw.c:12, in frame #? of thread 1
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Address 0x........ is at offset 0 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Finished.
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_ignore_rw2.stderr.diff
=================================================
--- annotate_ignore_rw2.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_ignore_rw2.stderr.out 2012-08-28 00:14:23.000000000 -0500
@@ -14,6 +14,60 @@
Location 0x........ is 0 bytes inside local var "s_c"
declared at annotate_ignore_rw.c:12, in frame #? of thread 1
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Address 0x........ is at offset 0 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_rw.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Finished.
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_ignore_write.stderr.diff
=================================================
--- annotate_ignore_write.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_ignore_write.stderr.out 2012-08-28 00:14:24.000000000 -0500
@@ -14,6 +14,60 @@
Location 0x........ is 0 bytes inside local var "s_a"
declared at annotate_ignore_write.c:10, in frame #? of thread 1
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Address 0x........ is at offset 0 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Finished.
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_ignore_write2.stderr.diff
=================================================
--- annotate_ignore_write2.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_ignore_write2.stderr.out 2012-08-28 00:14:25.000000000 -0500
@@ -19,6 +19,60 @@
Location 0x........ is 0 bytes inside local var "s_a"
declared at annotate_ignore_write.c:10, in frame #? of thread 1
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread 1 at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Address 0x........ is at offset 0 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread 1 at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_ignore_write.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Finished.
-ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_order_1.stderr.diff
=================================================
--- annotate_order_1.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_order_1.stderr.out 2012-08-28 00:14:27.000000000 -0500
@@ -1,6 +1,18 @@
FLAGS [phb=1, fm=0]
test03: negative
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: ThreadPool::~ThreadPool() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: test03::Waiter() (tsan_unittest.cpp:?)
+ by 0x........: test03::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
GLOB=2
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_order_2.stderr.diff
=================================================
--- annotate_order_2.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_order_2.stderr.out 2012-08-28 00:14:29.000000000 -0500
@@ -1,6 +1,71 @@
FLAGS [phb=1, fm=0]
test30: negative
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Address 0x........ is at offset 12 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test30::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
GLOB=47
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_order_3.stderr.diff
=================================================
--- annotate_order_3.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_order_3.stderr.out 2012-08-28 00:14:31.000000000 -0500
@@ -1,6 +1,71 @@
FLAGS [phb=1, fm=0]
test31: negative
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Address 0x........ is at offset 4 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test31::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
GLOB=48
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_rwlock.stderr.diff
=================================================
--- annotate_rwlock.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_rwlock.stderr.out 2012-08-28 00:14:36.000000000 -0500
@@ -1,4 +1,58 @@
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Address 0x........ is at offset 36 from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: main (annotate_rwlock.c:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Finished.
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_smart_pointer.stderr.diff
=================================================
--- annotate_smart_pointer.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_smart_pointer.stderr.out 2012-08-28 00:14:46.000000000 -0500
@@ -1,4 +1,64 @@
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Address 0x........ is at offset 196 from 0x......... Allocation context:
+ at 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Done.
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_smart_pointer2.stderr.diff
=================================================
--- annotate_smart_pointer2.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_smart_pointer2.stderr.out 2012-08-28 00:14:47.000000000 -0500
@@ -5,9 +5,71 @@
by 0x........: smart_ptr<counter>::operator=(counter*) (annotate_smart_pointer.cpp:?)
by 0x........: main (annotate_smart_pointer.cpp:?)
Address 0x........ is at offset ... from 0x......... Allocation context:
- at 0x........: ...operator new... (vg_replace_malloc.c:...)
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: operator new(unsigned long) (in /usr/lib/libstdc++.6.0.9.dylib)
by 0x........: main (annotate_smart_pointer.cpp:?)
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Address 0x........ is at offset ... from 0x......... Allocation context:
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: realloc (vg_replace_malloc.c:...)
+ by 0x........: new_sem_from_pool (in /...libc...)
+ by 0x........: _pthread_exit (in /...libc...)
+ by 0x........: thread_start (in /...libc...)
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: Thread::Join() (annotate_smart_pointer.cpp:?)
+ by 0x........: main (annotate_smart_pointer.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
Done.
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/annotate_spinlock.stderr.diff
=================================================
--- annotate_spinlock.stderr.exp 2012-08-27 23:56:33.000000000 -0500
+++ annotate_spinlock.stderr.out 2012-08-28 00:14:49.000000000 -0500
@@ -1,6 +1,88 @@
FLAGS [phb=1, fm=0]
test27: negative
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test27::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: ???
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test27::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting load by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_pthread.h:?)
+ by 0x........: MyThreadArray::Join() (tsan_unittest.cpp:?)
+ by 0x........: test27::Run() (tsan_unittest.cpp:?)
+ by 0x........: Test::Run() (tsan_unittest.cpp:?)
+ by 0x........: main (tsan_unittest.cpp:?)
+Allocation context: Data section of /usr/lib/libSystem.B.dylib
+
+Conflicting store by thread x at 0x........ size 4
+ at 0x........: restore_sem_to_pool (in /...libc...)
+ by 0x........: pthread_join$UNIX2003 (in /...libc...)
+ by 0x........: pthread_join (drd_pthread_intercepts.c:?)
+ by 0x........: MyThread::Join() (tsan_thread_wrappers_...
[truncated message content] |
|
From: Philippe W. <phi...@sk...> - 2012-08-28 03:47:53
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.3.1-3.fc16.ppc64 ppc64 Vendor version: Fedora release 16 (Verne) Nightly build on gcc110 ( Fedora release 16 (Verne), ppc64 ) Started at 2012-08-27 20:00:08 PDT Ended at 2012-08-27 20:46:31 PDT 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 == 531 tests, 6 stderr failures, 2 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/mcmain_pic (stdoutB) gdbserver_tests/mcmain_pic (stderrB) memcheck/tests/supp_unknown (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) massif/tests/big-alloc (post) massif/tests/deep-D (post) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 03:10:33
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) Assembler: GNU assembler version 2.18.50.0.6-2 20080403 C library: GNU C Library stable release version 2.8 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 9 (Sulphur) Nightly build on bristol ( x86_64, Fedora 9 ) Started at 2012-08-28 03:41:23 BST Ended at 2012-08-28 04:10:14 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 605 tests, 0 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == none/tests/amd64/sse4-64 (stdout) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 605 tests, 1 stderr failure, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) none/tests/amd64/sse4-64 (stdout) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2012-08-28 03:55:55.737964728 +0100 --- new.short 2012-08-28 04:10:14.700467201 +0100 *************** *** 8,11 **** ! == 605 tests, 1 stderr failure, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == ! memcheck/tests/err_disable4 (stderr) none/tests/amd64/sse4-64 (stdout) --- 8,10 ---- ! == 605 tests, 0 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == none/tests/amd64/sse4-64 (stdout) |
|
From: <br...@ac...> - 2012-08-28 03:00:24
|
valgrind revision: 12904
VEX revision: 2488
C compiler: gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-3)
Assembler: GNU assembler 2.15.92.0.2 20040927
C library: GNU C Library stable release version 2.3.4
uname -mrs: Linux 2.6.9-42.EL s390x
Vendor version: Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Nightly build on z10-ec ( s390x build on z10-EC )
Started at 2012-08-27 22:20:25 EDT
Ended at 2012-08-27 23:00:11 EDT
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 527 tests, 6 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures ==
memcheck/tests/manuel3 (stderr)
memcheck/tests/partial_load_ok (stderr)
memcheck/tests/varinfo6 (stderr)
none/tests/s390x/fpconv (stdout)
helgrind/tests/tc09_bad_unlock (stderr)
helgrind/tests/tc18_semabuse (stderr)
helgrind/tests/tc20_verifywrap (stderr)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-08-27 22:41:55.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-08-27 22:55:37.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-08-27 22:41:55.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-08-27 22:55:45.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-08-27 22:41:55.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-08-27 22:55:55.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-08-27 22:42:40.000000000 -0400
+++ manuel3.stderr.out 2012-08-27 22:50:24.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-08-27 22:42:40.000000000 -0400
+++ partial_load_ok.stderr.out 2012-08-27 22:50:56.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-08-27 22:42:40.000000000 -0400
+++ partial_load_ok.stderr.out 2012-08-27 22:50:56.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-08-27 22:42:40.000000000 -0400
+++ varinfo6.stderr.out 2012-08-27 22:51:56.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-08-27 22:42:40.000000000 -0400
+++ varinfo6.stderr.out 2012-08-27 22:51:56.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
=================================================
./valgrind-new/none/tests/s390x/fpconv.stdout.diff
=================================================
--- fpconv.stdout.exp 2012-08-27 22:42:56.000000000 -0400
+++ fpconv.stdout.out 2012-08-27 22:53:54.000000000 -0400
@@ -35,137 +35,137 @@
"cdgbr" -9223372036854775808.000000
"cdgbr" 9223372036854775808.000000
"cxfbr" 0.000000
-"cxfbr" 1.000000
-"cxfbr" -1.000000
-"cxfbr" -2147483648.000000
-"cxfbr" 2147483647.000000
+"cxfbr" 1.937500
+"cxfbr" -1.937500
+"cxfbr" -7.500000
+"cxfbr" 7.500000
"cxfbr" 0.000000
-"cxfbr" -1.000000
+"cxfbr" -1.937500
"cxfbr" 0.000000
-"cxfbr" -1.000000
+"cxfbr" -1.937500
"cxgbr" 0.000000
-"cxgbr" 1.000000
-"cxgbr" 4294967295.000000
-"cxgbr" 2147483648.000000
-"cxgbr" 2147483647.000000
-"cxgbr" 4294967296.000000
-"cxgbr" -1.000000
-"cxgbr" -9223372036854775808.000000
-"cxgbr" 9223372036854775807.000000
-"cfebr" 4294967295 cc=1
-"cfebr" 0 cc=0
-"cfebr" 1 cc=2
-"cfebr" 1 cc=2
-"cfebr" 2 cc=2
-"cfebr" 2 cc=2
-"cfebr" 16000 cc=2
-"cfebr" 160000000 cc=2
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=2
-"cfebr" 0 cc=2
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=0
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=0
-"cfebr" 2147483647 cc=3
-"cgebr" -1 cc=1
-"cgebr" 0 cc=0
-"cgebr" 1 cc=2
-"cgebr" 1 cc=2
-"cgebr" 2 cc=2
-"cgebr" 2 cc=2
-"cgebr" 16000 cc=2
-"cgebr" 160000000 cc=2
-"cgebr" 1599999967232 cc=2
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=2
-"cgebr" 0 cc=2
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=0
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=0
-"cgebr" 9223372036854775807 cc=3
-"cfdbr" 4294967295 cc=1
-"cfdbr" 0 cc=0
-"cfdbr" 1 cc=2
-"cfdbr" 1 cc=2
-"cfdbr" 2 cc=2
-"cfdbr" 2 cc=2
-"cfdbr" 16000 cc=2
-"cfdbr" 160000000 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=2
-"cfdbr" 0 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=0
-"cfdbr" 2147483647 cc=3
-"cgdbr" -1 cc=1
-"cgdbr" 0 cc=0
-"cgdbr" 1 cc=2
-"cgdbr" 1 cc=2
-"cgdbr" 2 cc=2
-"cgdbr" 2 cc=2
-"cgdbr" 16000 cc=2
-"cgdbr" 160000000 cc=2
-"cgdbr" 1600000000000 cc=2
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 0 cc=2
-"cgdbr" 0 cc=2
<truncated beyond 100 lines>
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-08-27 22:22:02.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-08-27 22:37:10.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-08-27 22:22:02.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-08-27 22:37:18.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-08-27 22:22:02.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-08-27 22:37:28.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-08-27 22:22:37.000000000 -0400
+++ manuel3.stderr.out 2012-08-27 22:31:57.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-08-27 22:22:37.000000000 -0400
+++ partial_load_ok.stderr.out 2012-08-27 22:32:29.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-08-27 22:22:37.000000000 -0400
+++ partial_load_ok.stderr.out 2012-08-27 22:32:29.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-08-27 22:22:37.000000000 -0400
+++ varinfo6.stderr.out 2012-08-27 22:33:29.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-08-27 22:22:37.000000000 -0400
+++ varinfo6.stderr.out 2012-08-27 22:33:29.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
=================================================
./valgrind-old/none/tests/s390x/fpconv.stdout.diff
=================================================
--- fpconv.stdout.exp 2012-08-27 22:22:54.000000000 -0400
+++ fpconv.stdout.out 2012-08-27 22:35:27.000000000 -0400
@@ -35,137 +35,137 @@
"cdgbr" -9223372036854775808.000000
"cdgbr" 9223372036854775808.000000
"cxfbr" 0.000000
-"cxfbr" 1.000000
-"cxfbr" -1.000000
-"cxfbr" -2147483648.000000
-"cxfbr" 2147483647.000000
+"cxfbr" 1.937500
+"cxfbr" -1.937500
+"cxfbr" -7.500000
+"cxfbr" 7.500000
"cxfbr" 0.000000
-"cxfbr" -1.000000
+"cxfbr" -1.937500
"cxfbr" 0.000000
-"cxfbr" -1.000000
+"cxfbr" -1.937500
"cxgbr" 0.000000
-"cxgbr" 1.000000
-"cxgbr" 4294967295.000000
-"cxgbr" 2147483648.000000
-"cxgbr" 2147483647.000000
-"cxgbr" 4294967296.000000
-"cxgbr" -1.000000
-"cxgbr" -9223372036854775808.000000
-"cxgbr" 9223372036854775807.000000
-"cfebr" 4294967295 cc=1
-"cfebr" 0 cc=0
-"cfebr" 1 cc=2
-"cfebr" 1 cc=2
-"cfebr" 2 cc=2
-"cfebr" 2 cc=2
-"cfebr" 16000 cc=2
-"cfebr" 160000000 cc=2
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=2
-"cfebr" 0 cc=2
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=0
-"cfebr" 2147483647 cc=3
-"cfebr" 0 cc=0
-"cfebr" 2147483647 cc=3
-"cgebr" -1 cc=1
-"cgebr" 0 cc=0
-"cgebr" 1 cc=2
-"cgebr" 1 cc=2
-"cgebr" 2 cc=2
-"cgebr" 2 cc=2
-"cgebr" 16000 cc=2
-"cgebr" 160000000 cc=2
-"cgebr" 1599999967232 cc=2
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=2
-"cgebr" 0 cc=2
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=0
-"cgebr" 9223372036854775807 cc=3
-"cgebr" 0 cc=0
-"cgebr" 9223372036854775807 cc=3
-"cfdbr" 4294967295 cc=1
-"cfdbr" 0 cc=0
-"cfdbr" 1 cc=2
-"cfdbr" 1 cc=2
-"cfdbr" 2 cc=2
-"cfdbr" 2 cc=2
-"cfdbr" 16000 cc=2
-"cfdbr" 160000000 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=2
-"cfdbr" 0 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=2
-"cfdbr" 2147483647 cc=3
-"cfdbr" 0 cc=0
-"cfdbr" 2147483647 cc=3
-"cgdbr" -1 cc=1
-"cgdbr" 0 cc=0
-"cgdbr" 1 cc=2
-"cgdbr" 1 cc=2
-"cgdbr" 2 cc=2
-"cgdbr" 2 cc=2
-"cgdbr" 16000 cc=2
-"cgdbr" 160000000 cc=2
-"cgdbr" 1600000000000 cc=2
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 9223372036854775807 cc=3
-"cgdbr" 0 cc=2
-"cgdbr" 0 cc=2
<truncated beyond 100 lines>
|
|
From: Tom H. <to...@co...> - 2012-08-28 02:57:56
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2) Assembler: GNU assembler version 2.19.51.0.14-3.fc11 20090722 C library: GNU C Library stable release version 2.10.2 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 11 (Leonidas) Nightly build on bristol ( x86_64, Fedora 11 ) Started at 2012-08-28 03:31:07 BST Ended at 2012-08-28 03:57:40 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 == 609 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) memcheck/tests/long_namespace_xml (stderr) none/tests/amd64/sse4-64 (stdout) |
|
From: Rich C. <rc...@wi...> - 2012-08-28 02:56:41
|
valgrind revision: 12904
VEX revision: 2488
C compiler: gcc (SUSE Linux) 4.5.1 20101208 [gcc-4_5-branch revision 167585]
Assembler: GNU assembler (GNU Binutils; openSUSE 11.4) 2.21
C library: GNU C Library stable release version 2.11.3 (20110203)
uname -mrs: Linux 2.6.37.6-0.7-desktop x86_64
Vendor version: Welcome to openSUSE 11.4 "Celadon" - Kernel %r (%t).
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.6-0.7-desktop x86_64 )
Started at 2012-08-27 21:30:01 CDT
Ended at 2012-08-27 21:56:31 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
== 617 tests, 2 stderr failures, 0 stdout failures, 6 stderrB failures, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mcbreak (stderrB)
gdbserver_tests/mcclean_after_fork (stderrB)
gdbserver_tests/mcleak (stderrB)
gdbserver_tests/mcmain_pic (stderrB)
gdbserver_tests/mcvabits (stderrB)
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/linux/timerfd-syscall (stderr)
memcheck/tests/origin5-bz2 (stderr)
=================================================
./valgrind-new/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-08-27 21:43:54.995866249 -0500
+++ mcbreak.stderrB.out 2012-08-27 21:47:40.208825337 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-new/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-08-27 21:43:54.995866249 -0500
+++ mcclean_after_fork.stderrB.out 2012-08-27 21:47:41.921022713 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-08-27 21:43:54.992865904 -0500
+++ mcleak.stderrB.out 2012-08-27 21:48:00.002107060 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-new/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-08-27 21:43:54.998866596 -0500
+++ mcmain_pic.stderrB.out 2012-08-27 21:48:01.602291528 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-08-27 21:43:55.000866827 -0500
+++ mcvabits.stderrB.out 2012-08-27 21:48:06.536860382 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-08-27 21:43:54.999866712 -0500
+++ mssnapshot.stderrB.out 2012-08-27 21:48:09.596213063 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/memcheck/tests/linux/timerfd-syscall.stderr.diff
=================================================
--- timerfd-syscall.stderr.exp 2012-08-27 21:43:56.544044681 -0500
+++ timerfd-syscall.stderr.out 2012-08-27 21:49:14.278669858 -0500
@@ -33,7 +33,7 @@
got timer ticks (1) after 0.5 s
absolute timer test (at 500 ms) ...
waiting timer ...
-got timer ticks (1) after 0.5 s
+got timer ticks (1) after 0.0 s
sequential timer test (100 ms clock) ...
sleeping one second ...
timerfd_gettime returned:
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-08-27 21:44:01.417606373 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:49:29.667443986 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-08-27 21:44:01.400604413 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:49:29.667443986 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-08-27 21:44:01.344597959 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:49:29.667443986 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-08-27 21:44:01.374601416 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:49:29.667443986 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-08-27 21:44:01.387602915 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:49:29.667443986 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
=================================================
./valgrind-old/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-08-27 21:31:15.800198557 -0500
+++ mcbreak.stderrB.out 2012-08-27 21:34:49.916946347 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-old/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-08-27 21:31:15.800198557 -0500
+++ mcclean_after_fork.stderrB.out 2012-08-27 21:34:51.615142639 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-08-27 21:31:15.796198094 -0500
+++ mcleak.stderrB.out 2012-08-27 21:35:09.944261292 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-old/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-08-27 21:31:15.803198905 -0500
+++ mcmain_pic.stderrB.out 2012-08-27 21:35:11.561448225 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-08-27 21:31:15.804199021 -0500
+++ mcvabits.stderrB.out 2012-08-27 21:35:16.495018499 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-old/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-08-27 21:31:15.803198905 -0500
+++ mssnapshot.stderrB.out 2012-08-27 21:35:19.643382419 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-old/memcheck/tests/linux/timerfd-syscall.stderr.diff
=================================================
--- timerfd-syscall.stderr.exp 2012-08-27 21:31:21.402846073 -0500
+++ timerfd-syscall.stderr.out 2012-08-27 21:36:23.718789101 -0500
@@ -33,7 +33,7 @@
got timer ticks (1) after 0.5 s
absolute timer test (at 500 ms) ...
waiting timer ...
-got timer ticks (1) after 0.5 s
+got timer ticks (1) after 0.0 s
sequential timer test (100 ms clock) ...
sleeping one second ...
timerfd_gettime returned:
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-08-27 21:31:24.995261259 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:36:38.806533184 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-08-27 21:31:24.978259293 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:36:38.806533184 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-08-27 21:31:24.922252822 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:36:38.806533184 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-08-27 21:31:24.952256288 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:36:38.806533184 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-08-27 21:31:24.965257792 -0500
+++ origin5-bz2.stderr.out 2012-08-27 21:36:38.806533184 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
|
|
From: Tom H. <to...@co...> - 2012-08-28 02:52:17
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.4.5 20101112 (Red Hat 4.4.5-2) Assembler: GNU assembler version 2.20.51.0.2-20.fc13 20091009 C library: GNU C Library stable release version 2.12.2 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 13 (Goddard) Nightly build on bristol ( x86_64, Fedora 13 ) Started at 2012-08-28 03:22:11 BST Ended at 2012-08-28 03:52:02 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 609 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) helgrind/tests/pth_barrier3 (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 02:46:48
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) Assembler: GNU assembler version 2.20.51.0.7-8.fc14 20100318 C library: GNU C Library stable release version 2.13 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 14 (Laughlin) Nightly build on bristol ( x86_64, Fedora 14 ) Started at 2012-08-28 03:11:40 BST Ended at 2012-08-28 03:46:33 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 == 624 tests, 2 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 02:35:16
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.51.0.6-6.fc15 20110118 C library: GNU C Library stable release version 2.14.1 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2012-08-28 03:02:50 BST Ended at 2012-08-28 03:34:58 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 == 626 tests, 3 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 02:26:14
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2012-08-28 02:52:11 BST Ended at 2012-08-28 03:26:02 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 626 tests, 3 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (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 == 626 tests, 2 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2012-08-28 03:07:25.005503348 +0100 --- new.short 2012-08-28 03:26:02.260514574 +0100 *************** *** 8,10 **** ! == 626 tests, 2 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) --- 8,10 ---- ! == 626 tests, 3 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) *************** *** 12,13 **** --- 12,14 ---- gdbserver_tests/nlpasssigalrm (stdoutB) + memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 02:13:49
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2012-08-28 02:41:30 BST Ended at 2012-08-28 03:13:33 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 == 626 tests, 7 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallRU (stderr) gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) |
|
From: Christian B. <bor...@de...> - 2012-08-28 02:12:25
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] Assembler: GNU assembler (GNU Binutils; SUSE Linux Enterprise 11) 2.20.0.20100122-0.7.9 C library: GNU C Library stable release version 2.11.1 (20100118) uname -mrs: Linux 2.6.32.59-0.7-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP1 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z196 (s390x) ) Started at 2012-08-28 03:45:01 CEST Ended at 2012-08-28 04:12:14 CEST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 563 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) |
|
From: Christian B. <bor...@de...> - 2012-08-28 02:04:17
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.5.3 20110121 (Red Hat 4.5.3-5) Assembler: GNU assembler version 2.20.51.0.7-4bb6.fc13 20100318 C library: GNU C Library stable release version 2.12.1 uname -mrs: Linux 3.3.4-53.x.20120504-s390xperformance s390x Vendor version: unknown Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2012-08-28 03:45:01 CEST Ended at 2012-08-28 04:04:22 CEST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 562 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) drd/tests/tc21_pthonce (stderr) |
|
From: Tom H. <to...@co...> - 2012-08-28 01:57:44
|
valgrind revision: 12904 VEX revision: 2488 C compiler: gcc (GCC) 4.7.1 20120813 (Red Hat 4.7.1-7) Assembler: GNU assembler version 2.23.51.0.1-3.fc18 20120806 C library: GNU C Library development release version 2.16.90 uname -mrs: Linux 3.4.0-1.fc17.x86_64 x86_64 Vendor version: Fedora release 19 (Rawhide) Nightly build on bristol ( x86_64, Fedora 19 ) Started at 2012-08-28 02:31:11 BST Ended at 2012-08-28 02:57:32 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 == 626 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) |
|
From: <sv...@va...> - 2012-08-28 00:38:57
|
florian 2012-08-28 01:38:47 +0100 (Tue, 28 Aug 2012)
New Revision: 12904
Log:
Fix EXTRA_DIST. Add dummy .exp file to satisfy the consistency checker
Added files:
trunk/none/tests/s390x/ecag.stdout.exp
Modified files:
trunk/none/tests/s390x/Makefile.am
Modified: trunk/none/tests/s390x/Makefile.am (+1 -0)
===================================================================
--- trunk/none/tests/s390x/Makefile.am 2012-08-26 20:05:06 +01:00 (rev 12903)
+++ trunk/none/tests/s390x/Makefile.am 2012-08-28 01:38:47 +01:00 (rev 12904)
@@ -18,6 +18,7 @@
$(addsuffix .stderr.exp,$(INSN_TESTS)) \
$(addsuffix .stdout.exp,$(INSN_TESTS)) \
$(addsuffix .vgtest,$(INSN_TESTS)) \
+ ecag.stdout.exp-z10ec ecag.stdout.exp-z196 \
op00.stderr.exp1 op00.stderr.exp2 op00.vgtest \
test.h opcodes.h add.h and.h div.h insert.h \
mul.h or.h sub.h test.h xor.h table.h
Added: trunk/none/tests/s390x/ecag.stdout.exp (+1 -0)
===================================================================
--- trunk/none/tests/s390x/ecag.stdout.exp 2012-08-26 20:05:06 +01:00 (rev 12903)
+++ trunk/none/tests/s390x/ecag.stdout.exp 2012-08-28 01:38:47 +01:00 (rev 12904)
@@ -0,0 +1 @@
+just to silence the consistency checker
|
|
From: Andrew C. M. <and...@gm...> - 2012-08-27 21:57:01
|
Hi - I recently built valgrind-3.8.0 using clang from XCode 4.5, via macports, on OS X 10.8.1. It builds successfully, but the resulting valgrind binary doesn't work. Any invocation of valgrind (even just 'valgrind --help') fails as follows: --2030:0:main Root stack 0x238E20000 to 0x238F24000, a local 0x238F21FB0 --2030:0:main Valgrind: FATAL: Initial stack switched failed. --2030:0:main Cannot continue. Sorry. Turning on debug logging doesn't reveal anything interesting: --2127:1:debuglog DebugLog system started by Stage 1, level 1 logging requested --2127:1:launcher no tool requested, defaulting to 'memcheck' --2127:1:launcher valgrind_lib = /opt/local/lib/valgrind --2127:1:launcher arch 'x86' IS NOT installed --2127:1:launcher arch 'amd64' IS installed --2127:1:launcher arch 'arm' IS NOT installed --2127:1:launcher arch 'ppc32' IS NOT installed --2127:1:launcher arch 'ppc64' IS NOT installed --2127:1:launcher no client specified, defaulting arch to 'amd64' --2127:1:launcher launcher_name = /opt/local/bin/valgrind --2127:1:launcher launching /opt/local/lib/valgrind/memcheck-amd64-darwin --2127:1:debuglog DebugLog system started by Stage 2 (main), level 1 logging requested --2127:1:main Welcome to Valgrind version 3.8.0 debug logging --2127:1:main Checking current stack is plausible --2127:0:main Root stack 0x238E20000 to 0x238F24000, a local 0x238F21FB0 --2127:0:main Valgrind: FATAL: Initial stack switched failed. --2127:0:main Cannot continue. Sorry. If I rebuild valgrind with llvm-gcc-4.2 as the compiler, all is well. Is this a known issue? I searched the bug database but nothing jumped out. If not, does anyone have any thoughts on what may be causing this or where to start debugging? Obviously I can work around by building with GCC, but AFAIK clang is the future on Apple platforms so it would be good if this worked. Thanks, Andrew |