|
From: <sv...@va...> - 2008-02-28 01:36:38
|
Author: sewardj
Date: 2008-02-28 01:36:38 +0000 (Thu, 28 Feb 2008)
New Revision: 7495
Log:
Stop gcc inlining in varinfo5so.c so as to get consistent results --
different gccs inline differently :-(
Modified:
branches/DATASYMS/memcheck/tests/varinfo5.stderr.exp
branches/DATASYMS/memcheck/tests/varinfo5.vgtest
branches/DATASYMS/memcheck/tests/varinfo5so.c
Modified: branches/DATASYMS/memcheck/tests/varinfo5.stderr.exp
===================================================================
--- branches/DATASYMS/memcheck/tests/varinfo5.stderr.exp 2008-02-27 18:10:19 UTC (rev 7494)
+++ branches/DATASYMS/memcheck/tests/varinfo5.stderr.exp 2008-02-28 01:36:38 UTC (rev 7495)
@@ -1,129 +1,161 @@
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:52)
+ by 0x........: varinfo1_main (varinfo5so.c:52)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Address 0x........ is 1 bytes inside a block of size 3 alloc'd
at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: varinfo5_main (varinfo5so.c:50)
+ by 0x........: varinfo1_main (varinfo5so.c:50)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:55)
+ by 0x........: varinfo1_main (varinfo5so.c:55)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside global var "global_u1"
declared at varinfo5so.c:38
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:56)
+ by 0x........: varinfo1_main (varinfo5so.c:56)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside global var "global_i1"
declared at varinfo5so.c:40
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:57)
+ by 0x........: varinfo1_main (varinfo5so.c:57)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside global_u2[3],
a global variable declared at varinfo5so.c:42
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:58)
+ by 0x........: varinfo1_main (varinfo5so.c:58)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside global_i2[7],
a global variable declared at varinfo5so.c:44
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:59)
+ by 0x........: varinfo1_main (varinfo5so.c:59)
+ by 0x........: varinfo5_main (varinfo5so.c:154)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside local var "local"
declared at varinfo5so.c:49, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:71)
+ by 0x........: foo2 (varinfo5so.c:71)
+ by 0x........: varinfo2_main (varinfo5so.c:81)
+ by 0x........: varinfo5_main (varinfo5so.c:155)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside var[7],
declared at varinfo5so.c:69, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:73)
+ by 0x........: foo2 (varinfo5so.c:73)
+ by 0x........: varinfo2_main (varinfo5so.c:81)
+ by 0x........: varinfo5_main (varinfo5so.c:155)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 2 bytes inside var.bar,
declared at varinfo5so.c:72, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:76)
+ by 0x........: foo2 (varinfo5so.c:76)
+ by 0x........: varinfo2_main (varinfo5so.c:81)
+ by 0x........: varinfo5_main (varinfo5so.c:155)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 1 byte inside local var "var"
declared at varinfo5so.c:67, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:106)
+ by 0x........: foo3 (varinfo5so.c:106)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside static_global_def[1],
declared at varinfo5so.c:87, in frame #0 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:107)
+ by 0x........: foo3 (varinfo5so.c:107)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_global_def[2],
a global variable declared at varinfo5so.c:88
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:108)
+ by 0x........: foo3 (varinfo5so.c:108)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside static_global_undef[3],
declared at varinfo5so.c:89, in frame #0 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:109)
+ by 0x........: foo3 (varinfo5so.c:109)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_global_undef[4],
a global variable declared at varinfo5so.c:90
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:94)
+ by 0x........: bar3 (varinfo5so.c:94)
+ by 0x........: foo3 (varinfo5so.c:110)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Location 0x........ is 0 bytes inside static_local_def[5],
- declared at varinfo5so.c:102, in frame #0 of thread 1
+ Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:95)
+ by 0x........: bar3 (varinfo5so.c:95)
+ by 0x........: foo3 (varinfo5so.c:110)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_local_def[6],
- declared at varinfo5so.c:103, in frame #1 of thread 1
+ declared at varinfo5so.c:103, in frame #2 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:96)
+ by 0x........: bar3 (varinfo5so.c:96)
+ by 0x........: foo3 (varinfo5so.c:110)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Location 0x........ is 0 bytes inside static_local_undef[7],
- declared at varinfo5so.c:104, in frame #0 of thread 1
+ Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
- by 0x........: varinfo5_main (varinfo5so.c:97)
+ by 0x........: bar3 (varinfo5so.c:97)
+ by 0x........: foo3 (varinfo5so.c:110)
+ by 0x........: varinfo3_main (varinfo5so.c:118)
+ by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_local_undef[8],
- declared at varinfo5so.c:105, in frame #1 of thread 1
+ declared at varinfo5so.c:105, in frame #2 of thread 1
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
by 0x........: blah4 (varinfo5so.c:137)
- by 0x........: varinfo5_main (varinfo5so.c:146)
+ by 0x........: varinfo4_main (varinfo5so.c:146)
+ by 0x........: varinfo5_main (varinfo5so.c:157)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 1 byte inside a[3].xyzzy[21].c1,
declared at varinfo5so.c:135, in frame #1 of thread 1
@@ -131,7 +163,8 @@
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
by 0x........: blah4 (varinfo5so.c:138)
- by 0x........: varinfo5_main (varinfo5so.c:146)
+ by 0x........: varinfo4_main (varinfo5so.c:146)
+ by 0x........: varinfo5_main (varinfo5so.c:157)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 0 bytes inside a[5].bong,
declared at varinfo5so.c:135, in frame #1 of thread 1
@@ -139,7 +172,8 @@
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
by 0x........: blah4 (varinfo5so.c:139)
- by 0x........: varinfo5_main (varinfo5so.c:146)
+ by 0x........: varinfo4_main (varinfo5so.c:146)
+ by 0x........: varinfo5_main (varinfo5so.c:157)
by 0x........: main (varinfo5.c:5)
Location 0x........ is 1 byte inside a[3].xyzzy[21].c2[2],
declared at varinfo5so.c:135, in frame #1 of thread 1
Modified: branches/DATASYMS/memcheck/tests/varinfo5.vgtest
===================================================================
--- branches/DATASYMS/memcheck/tests/varinfo5.vgtest 2008-02-27 18:10:19 UTC (rev 7494)
+++ branches/DATASYMS/memcheck/tests/varinfo5.vgtest 2008-02-28 01:36:38 UTC (rev 7495)
@@ -1,2 +1,3 @@
prog: varinfo5
vgopts: --read-var-info=yes
+stderr_filter: filter_varinfo3
Modified: branches/DATASYMS/memcheck/tests/varinfo5so.c
===================================================================
--- branches/DATASYMS/memcheck/tests/varinfo5so.c 2008-02-27 18:10:19 UTC (rev 7494)
+++ branches/DATASYMS/memcheck/tests/varinfo5so.c 2008-02-28 01:36:38 UTC (rev 7495)
@@ -18,7 +18,7 @@
/* Cause memcheck to complain about the address "a" and so to print
its best guess as to what "a" actually is. a must be
addressible. */
-
+__attribute__((noinline))
void croak ( void* aV )
{
char* a = (char*)aV;
@@ -43,7 +43,7 @@
char global_i2[10] = { 1,2,3,4,5,6,7,8,9,10 };
-
+__attribute__((noinline))
static int varinfo1_main ( void )
{
int local;
@@ -61,7 +61,7 @@
}
/* ------------ varinfo2 ------------ */
-
+__attribute__((noinline))
static void foo2 ( void )
{
int var;
@@ -75,7 +75,7 @@
}
croak( 1 + (char*)&var );
}
-
+__attribute__((noinline))
static int varinfo2_main ( void )
{
foo2();
@@ -88,7 +88,7 @@
char nonstatic_global_def[10] = {0,0,0,0,0, 0,0,0,0,0};
static char static_global_undef[10];
char nonstatic_global_undef[10];
-
+__attribute__((noinline))
static void bar3 ( char* p1, char* p2, char* p3, char* p4 )
{
croak(p1);
@@ -96,7 +96,7 @@
croak(p3);
croak(p4);
}
-
+__attribute__((noinline))
static void foo3 ( void )
{
static char static_local_def[10] = {0,0,0,0,0, 0,0,0,0,0};
@@ -112,7 +112,7 @@
7 + (char*)&static_local_undef,
8 + (char*)&nonstatic_local_undef );
}
-
+__attribute__((noinline))
static int varinfo3_main ( void )
{
foo3();
@@ -140,7 +140,7 @@
memset(a, 0, sizeof(a));
return a[3].xyzzy[x*y].c1;
}
-
+__attribute__((noinline))
static int varinfo4_main ( void )
{
fprintf(stderr, "answer is %d\n", blah4(3,7) );
|