|
From: Mineeva, T. A <tat...@in...> - 2017-12-05 14:17:34
|
Hello Philippe,
(Sorry for a duplicate mail, the first one got rejected by the mailing list).
I have got an issue with vgdb: sometimes, it seems to show the values of vector registers incorrectly.
Please find a small reproducer (vgdb_ymm_test.c) attached. The reproducer loads the data into register, sums it up with itself, and stores the result back to memory.
Steps I did to reproduce the issue:
- Compile the reproducer with flags "-O0 -g"
- Run the reproducer under vgdb (valgrind --tool=none --vgdb=yes --vgdb-error=0 ./a.out); from another shell, start gdb and attach to vgdb (target remote | vgdb)
- Set breakpoint at line 4, continue to the breakpoint
- Check ymm15. The register is expected to contain the values at this point, but "i r ymm15" returns "v4_int64 = {0x0, 0x0, 0x0, 0x0}"
- Go to the next instruction, check ymm15. vgdb shows the expected values, v4_int64 = {0x0, 0x2, 0x4, 0x6}
Is "v4_int64 = {0x0, 0x0, 0x0, 0x0}" a bug or expected vgdb behavior?
Valgrind version is 3.13.0 (also reproducible on valgrind-3.14.0.GIT), GDB version 8.0.1, GCC version 7.1.0; OS - CentOS Linux release 7.2.1511.
Thank you,
Tanya
--------------------------------------------------------------------
Joint Stock Company Intel A/O
Registered legal address: Krylatsky Hills Business Park,
17 Krylatskaya Str., Bldg 4, Moscow 121614,
Russian Federation
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
|
|
From: Ivo R. <iv...@iv...> - 2017-12-05 14:28:02
|
2017-12-05 15:16 GMT+01:00 Mineeva, Tatyana A <tat...@in...>: > Hello Philippe, > > (Sorry for a duplicate mail, the first one got rejected by the mailing > list). > > > > I have got an issue with vgdb: sometimes, it seems to show the values of > vector registers incorrectly. > > > > Please find a small reproducer (vgdb_ymm_test.c) attached. The reproducer > loads the data into register, sums it up with itself, and stores the result > back to memory. > > Steps I did to reproduce the issue: > > - Compile the reproducer with flags “-O0 -g” > > - Run the reproducer under vgdb (valgrind --tool=none --vgdb=yes > --vgdb-error=0 ./a.out); from another shell, start gdb and attach to vgdb > (target remote | vgdb) Please re-run with '--vgdb=full' instead of '--vgdb=yes'. See http://valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.gdbserver-limitations I. |
|
From: Mineeva, T. A <tat...@in...> - 2017-12-05 14:37:33
|
Ivo, Thank you, it resolved the issue. -----Original Message----- From: Ivo Raisr [mailto:iv...@iv...] Sent: Tuesday, December 5, 2017 5:28 PM To: Mineeva, Tatyana A <tat...@in...> Cc: phi...@sk...; val...@li... Subject: Re: [Valgrind-developers] Vgdb sometimes shows unexpected values for vector registers 2017-12-05 15:16 GMT+01:00 Mineeva, Tatyana A <tat...@in...>: > Hello Philippe, > > (Sorry for a duplicate mail, the first one got rejected by the mailing > list). > > > > I have got an issue with vgdb: sometimes, it seems to show the values > of vector registers incorrectly. > > > > Please find a small reproducer (vgdb_ymm_test.c) attached. The > reproducer loads the data into register, sums it up with itself, and > stores the result back to memory. > > Steps I did to reproduce the issue: > > - Compile the reproducer with flags “-O0 -g” > > - Run the reproducer under vgdb (valgrind --tool=none --vgdb=yes > --vgdb-error=0 ./a.out); from another shell, start gdb and attach to > vgdb (target remote | vgdb) Please re-run with '--vgdb=full' instead of '--vgdb=yes'. See http://valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.gdbserver-limitations I. -------------------------------------------------------------------- Joint Stock Company Intel A/O Registered legal address: Krylatsky Hills Business Park, 17 Krylatskaya Str., Bldg 4, Moscow 121614, Russian Federation This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. |