Hi Ulrich and community, Please find attached the patch. >Sorry, this is wrong - it will enable those sections unconditionally >across all platforms and operating systems. >Instead, you need to implement a function >rs6000_aix_core_read_description >that will determine the correct tdesc to use for any particular >core file depending on the sections that are actually present there. >You can see e.g. ppc_linux_core_read_description for >examples how to implement this routine. Kindly check in this patch.. It is a simple check to see for aix-vmx or vsx presence in a bfd file. And then we return the required target desc. --------------------------------------------------------- Output without patch:- ./gdb ~/gdb_tests/bll_core core.13828468 GNU gdb (GDB) 14.0.50.20230221-git Copyright (C) 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "powerpc64-ibm-aix7.2.0.0". Type "show configuration" for configuration details. For bug reporting instructions, please see: https://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /home/aditya/gdb_tests/bll_core... Core was generated by `bll_core'. #0 main () at /home/aditya/gdb_tests/bll_core.c:24 24 int length1 = 7; (gdb) info reg r0 0x2ff22b50 804399952 r1 0x2ff22b10 804399888 r2 0x20000448 536872008 r3 0x2ff22b50 804399952 r4 0x100010e0 268439776 r5 0x0 0 r6 0x5 5 r7 0x2b67 11111 r8 0x56ce 22222 r9 0x60 96 r10 0xad9c 44444 r11 0x0 0 r12 0x22648680 577013376 r13 0xdeadbeef -559038737 r14 0x1 1 r15 0x2ff22c00 804400128 r16 0x2ff22c08 804400136 r17 0xdeadbeef -559038737 r18 0xdeadbeef -559038737 r19 0xf0806b50 -260019376 r20 0xdeadbeef -559038737 r21 0xdeadbeef -559038737 r22 0xdeadbeef -559038737 r23 0xdeadbeef -559038737 r24 0xdeadbeef -559038737 r25 0xdeadbeef -559038737 r26 0x96c2062c -1765669332 r27 0x88 136 r28 0x200002ed 536871661 r29 0x10000000 268435456 r30 0x3 3 r31 0x2ff22b10 804399888 pc 0x10000690 0x10000690 msr 0x200d032 33607730 cnd 0x24648244 610566724 lr 0x10000634 0x10000634 cnt 0x0 0 xer 0x20040000 537133056 fpscr 0x0 0 mq 0xdeadbeef -559038737 ------------------------------------------ Output with patch:- ./gdb ~/gdb_tests/bll_core core.13828468 GNU gdb (GDB) 14.0.50.20230221-git Copyright (C) 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "powerpc64-ibm-aix7.2.0.0". Type "show configuration" for configuration details. For bug reporting instructions, please see: https://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /home/aditya/gdb_tests/bll_core... Core was generated by `bll_core'. #0 main () at /home/aditya/gdb_tests/bll_core.c:24 24 int length1 = 7; (gdb) info reg r0 0x2ff22b50 804399952 r1 0x2ff22b10 804399888 r2 0x20000448 536872008 r3 0x2ff22b50 804399952 r4 0x100010e0 268439776 r5 0x0 0 r6 0x5 5 r7 0x2b67 11111 r8 0x56ce 22222 r9 0x60 96 r10 0xad9c 44444 r11 0x0 0 r12 0x22648680 577013376 r13 0xdeadbeef 3735928559 r14 0x1 1 r15 0x2ff22c00 804400128 r16 0x2ff22c08 804400136 r17 0xdeadbeef 3735928559 r18 0xdeadbeef 3735928559 r19 0xf0806b50 4034947920 r20 0xdeadbeef 3735928559 r21 0xdeadbeef 3735928559 r22 0xdeadbeef 3735928559 r23 0xdeadbeef 3735928559 r24 0xdeadbeef 3735928559 r25 0xdeadbeef 3735928559 r26 0x96c2062c 2529297964 r27 0x88 136 r28 0x200002ed 536871661 r29 0x10000000 268435456 r30 0x3 3 r31 0x2ff22b10 804399888 pc 0x10000690 0x10000690 msr 0x200d032 33607730 cr 0x24648244 610566724 lr 0x10000634 0x10000634 ctr 0x0 0 xer 0x20040000 537133056 fpscr 0x0 0 vscr 0x0 0 vrsave 0x1 1 (gdb) info reg $vr0 vr0 {uint128 = 0x14de4f00a6f27802337255053793c0, v4_float = {0x14de4f, 0xa6f278, 0x2337255, 0x53793c0}, v4_int32 = {0x14de4f, 0xa6f278, 0x2337255, 0x53793c0}, v8_int16 = {0x14, 0xde4f, 0xa6, 0xf278, 0x233, 0x7255, 0x537, 0x93c0}, v16_int8 = {0x0, 0x14, 0xde, 0x4f, 0x0, 0xa6, 0xf2, 0x78, 0x2, 0x33, 0x72, 0x55, 0x5, 0x37, 0x93, 0xc0}} (gdb) From: Ulrich Weigand Date: Monday, 13 March 2023 at 6:36 PM To: gdb-patches@sourceware.org , Aditya Kamath1 Cc: Sangamesh Mallayya Subject: Re: [PATCH] Enable-vector-register-visibility-in-core-file-for-AIX.patch Aditya Kamath1 wrote: >Since we now support vector register contents debugging, we have added the below architecture. That is all the change. >- bfd_mach_rs6k, &tdesc_rs6000}, >+ bfd_mach_rs6k, &tdesc_powerpc_vsx32}, Sorry, this is wrong - it will enable those sections unconditionally across all platforms and operating systems. Instead, you need to implement a function rs6000_aix_core_read_description that will determine the correct tdesc to use for any particular core file depending on the sections that are actually present there. You can see e.g. ppc_linux_core_read_description for examples how to implement this routine. Bye, Ulrich