0

一旦发生异常,我正在尝试为 Xtensa 创建一个 CORE ELF 文件。这适用于未连接硬件调试器的系统。

目前我有一个从 Xtensa GUI 生成的 CORE ELF 文件。此核心文件的信息如下所示。基本上我想添加相同的段并创建我的 CORE ELF 文件。

早些时候,我能够成功地为 ARM 系统创建 CORE ELF 文件,其中标题“NT_PRSTATUS”保留了“.reg”部分。但在这里,Xtensa gui 生成的核心文件中不存在“NT_PRSTATUS”。

我没有得到太多关于“.reg2”和“NT_FPREGSET”的信息。我想知道是否有人可以指导我添加“.reg2”和“NT_FPREGSET”以及在这种情况下命令“info register”如何获取寄存器值。

$ xt-objdump.exe -x core_file
core_dump_file:     file format elf32-xtensa-le
core_dump_file architecture: xtensa, flags 0x00000000:
start address 0x00000000
Xtensa header:
Machine     = Base
Insn tables = false
Literal tables = false

Program Header:

NOTE off    0x000000d4 vaddr 0x00000000 paddr 0x00000000 align 2**0
     filesz 0x00000aa0 memsz 0x00000000 flags r--
LOAD off    0x00000b74 vaddr 0x63140000 paddr 0x00000000 align 2**0
     filesz 0x00001ee8 memsz 0x00001ee8 flags rwx
LOAD off    0x00002a5c vaddr 0x63100000 paddr 0x00000000 align 2**0
     filesz 0x00001324 memsz 0x00001324 flags rwx
LOAD off    0x00003d80 vaddr 0x63138c00 paddr 0x00000000 align 2**0
     filesz 0x00000000 memsz 0x00000000 flags rwx
LOAD off    0x00003d80 vaddr 0x6313f920 paddr 0x00000000 align 2**0
     filesz 0xffffd2e0 memsz 0xffffd2e0 flags rwx

Sections:

Idx Name          Size      VMA       LMA       File off  Algn
0 note0         00000aa0  00000000  00000000  000000d4  2**0
                CONTENTS, READONLY
1 .reg2/0       000009fc  00000000  00000000  00000178  2**2
                CONTENTS
2 .reg2         000009fc  00000000  00000000  00000178  2**2
                CONTENTS
3 load1         00001ee8  63140000  00000000  00000b74  2**0
                CONTENTS, ALLOC, LOAD, CODE
4 load2         00001324  63100000  00000000  00002a5c  2**0
                CONTENTS, ALLOC, LOAD, CODE
5 load4         ffffd2e0  6313f920  00000000  00003d80  2**0
                CONTENTS, ALLOC, LOAD, CODE
SYMBOL TABLE:
no symbols


$ xt-readelf.exe -n core_file

Notes at offset 0x000000d4 with length 0x00000aa0:
Owner                 Data size       Description
CORE                 0x0000007c       NT_PRPSINFO (prpsinfo structure)
note0                0x000009fc       NT_FPREGSET (floating point registers)
4

0 回答 0