gdb: Add PowerPC support to gdb.dwarf2/frame-inlined-in-outer-frame
authorCarl Love <cel@us.ibm.com>
Fri, 19 Nov 2021 18:33:51 +0000 (18:33 +0000)
committerCarl Love <cel@us.ibm.com>
Mon, 6 Dec 2021 19:49:20 +0000 (13:49 -0600)
This patch adds an #elif defined for PowerPC to setup the exit_0 macro.
This patch addes the needed macro definitionald logic to handle both elfV1
and elfV2.

The patch has been successfully tested on both PowerPC BE, Powerpc LE and
X86_64 with no regressions.

gdb/testsuite/gdb.dwarf2/frame-inlined-in-outer-frame.S

index 9fb6e7b716411ae0da4b9442451764519d05d8aa..224b50b20a5aaccc11820d2f0bf7138fc3cc25c2 100644 (file)
        swi 0x0
 .endm
 
+#elif defined __powerpc64__
+
+# define RETURN_ADDRESS_REGNO 65
+
+.macro exit_0
+       li 0, __NR_exit  /* r0 - contains system call number */
+       li 3, 0          /* r3 - contains first argument for sys call */
+       sc
+.endm
+
 #else
 # error "Unsupported architecture"
 #endif
    16 }
 */
 
+#if defined __powerpc64__
+#  if _CALL_ELF == 2
+.abiversion 2   /* Tell gdb what ELF version to use. */
+#  else
+.abiversion 1   /* Tell gdb what ELF version to use. */
+.align 2
+.section ".opd", "aw"
+.align 3
+.quad ._start,.TOC.@tocbase,0
+.previous
+.type ._start,@function
+._start:
+#  endif
+#endif
 .global _start
 _start:
 .cfi_startproc