之前一直不知道数据类型的长度是如何被存到系统中的,现在找到了,原来是在regcache.c文件中。
long offset = 0;
descr->sizeof_register
=
GDBARCH_OBSTACK_CALLOC (gdbarch,
descr->nr_cooked_registers, long);
descr->register_offset
=
GDBARCH_OBSTACK_CALLOC (gdbarch,
descr->nr_cooked_registers, long);
for (i = 0; i
< descr->nr_cooked_registers;
i++)
{
}
descr->sizeof_cooked_registers = offset;
}
regcache.c文件,init_regcache_descr (struct gdbarch *gdbarch)
函数
初始化寄存器描述信息。
初始化了类型的长度等信息
{
descr->sizeof_register[i] = TYPE_LENGTH
(descr->register_type[i]);
descr->register_offset[i] = offset;
offset += descr->sizeof_register[i];
gdb_assert (MAX_REGISTER_SIZE >=
descr->sizeof_register[i]);
本文介绍了regcache.c文件中如何初始化寄存器描述信息。通过init_regcache_descr函数,该过程实现了寄存器类型长度等关键信息的设置。

1366

被折叠的 条评论
为什么被折叠?



