[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [valgrind] [Bug 371966] No uninitialised values reported with PGI -Mstack_arrays
From:       Carl Ponder <bugzilla_noreply () kde ! org>
Date:       2016-11-03 13:00:17
Message-ID: bug-371966-17878-it35OqYZKa () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=371966

--- Comment #7 from Carl Ponder <CPonder@nVidia.Com> ---
Ok here's better -- I can see the data if I compile using "-O0 -g" rather than
"-O0 -gopt", which I'd assumed would be the same thing.
Here's what I'm seeing in the step-through: at line 77, the array contains

      (gdb) print x
      $1 = (0, 1, 2, 3, 4, 0, 69349896, 0, 19, 0)

where x(6:10) are uninitialized values. Here are the bits for the 40-byte range
of x:

(gdb) print &x
$6 = (PTR TO -> ( integer (10))) 0xffeffed90
(gdb) monitor xb 0xffeffed90 40
                  00      00      00      00      00      00      00      00
0xFFEFFED90:    0x00    0x00    0x00    0x00    0x01    0x00    0x00    0x00
                  00      00      00      00      00      00      00      00
0xFFEFFED98:    0x02    0x00    0x00    0x00    0x03    0x00    0x00    0x00
                  00      00      00      00      00      00      00      00
0xFFEFFEDA0:    0x04    0x00    0x00    0x00    0x00    0x00    0x00    0x00
                  00      00      00      00      00      00      00      00
0xFFEFFEDA8:    0x08    0x32    0x22    0x04    0x00    0x00    0x00    0x00
                  00      00      00      00      00      00      00      00
0xFFEFFEDB0:    0x13    0x00    0x00    0x00    0x00    0x00    0x00    0x00

This doesn't look right to me, given that x(4) is assigned but x(8) is not:

(gdb) print x(4)
$18 = 3
(gdb) print &x(4)
$19 = (PTR TO -> ( integer )) 0xffeffed9c
(gdb) monitor xb 0xffeffed9c 4
                  00      00      00      00
0xFFEFFED9C:    0x03    0x00    0x00    0x00

(gdb) print x(8)
$20 = 0
(gdb) print &x(8)
$21 = (PTR TO -> ( integer )) 0xffeffedac
(gdb) monitor xb 0xffeffedac 4
                  00      00      00      00
0xFFEFFEDAC:    0x00    0x00    0x00    0x00

Based on the explanation in the document, I would expect all the bytes to be
assigned FF for X(1:5) and 00 for the rest.

-- 
You are receiving this mail because:
You are watching all bug changes.=
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic