Bug 17296 - gdb can't print neon register correctly on aarch64
Summary: gdb can't print neon register correctly on aarch64
Status: RESOLVED DUPLICATE of bug 17457
Alias: None
Product: gdb
Classification: Unclassified
Component: server (show other bugs)
Version: 7.8
: P2 critical
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-08-21 05:58 IST by zhongwei yao
Modified: 2015-10-13 20:51 IST (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments
neon example (294.01 KB, application/x-tar)
2014-08-21 05:58 IST, zhongwei yao
Details

Note You need to log in before you can comment on or make changes to this bug.
Description zhongwei yao 2014-08-21 05:58:00 IST
Created attachment 7753 [details]
neon example

Hi, there:
When debugging code on aarch64, I find gdb can't print neon register correctly. I've a simple example attached:

#define SIZE 8
int main(void)
{
  char arr[SIZE] = {0, 1, 2, 3, 4, 5, 6, 7};
  asm volatile("ld1 {v0.8b}, [%0], 8"::"r"(arr):"v0", "memory");
}

after running the 'ld1' instruction, the v0.8b value in gdb is:
  s = {4, 5, 6, 7, 0 <repeats 12 times>}
While the true value should be:
  s = {0, 1, 2, 3, 4, 5, 6, 7}
Comment 1 zhongwei yao 2014-08-21 06:59:59 IST
The runtime environment: Android on aarch64. Gdbserver runs under Android.
The gdbserver is built from gdb 7.8, with following commands:
      $export CC=aarch64-linux-gnu-gcc-4.8
      $export CFLAGS=--static
      $./gdb-7.8/gdb/gdbserver/configure --target=aarch64-linux-androideabi --host=x86-linux-androideabi
      $make
Comment 2 Josh Gao 2015-10-13 20:51:44 IST
This looks like #17457

*** This bug has been marked as a duplicate of bug 17457 ***