小编ANu*_*Num的帖子

了解 RiscV objdump

我正在检查使用以下命令编译的 C 文件的 objdump:

riscv64-unknown-elf-gcc -O0 -o maxmul.o maxmul.c
riscv64-unknown-elf-objdump -d maxmul.o > maxmul.dump
Run Code Online (Sandbox Code Playgroud)

奇怪的是(或没有)这些地址似乎没有在 32 位字上对齐,但实际上是在 16 位边界上对齐。

谁能解释一下为什么吗?

谢谢。

objdump 摘录:

00000000000101da <main>:
   101da:   7155                    addi    sp,sp,-208
   101dc:   e586                    sd  ra,200(sp)
   101de:   e1a2                    sd  s0,192(sp)
   101e0:   0980                    addi    s0,sp,208
   ...
Run Code Online (Sandbox Code Playgroud)

C代码:

int main()
{

  int first[3][3], second[3][3], multiply[3][3];
  int golden[3][3];
  int sum;

  first[0][0] = 1;  first[0][1] = 2;  first[0][2] = 3;
  first[1][0] = 4;  first[1][1] = 5;  first[1][2] = 6;
  first[2][0] = 7;  first[2][1] = 8;  first[2][2] = …
Run Code Online (Sandbox Code Playgroud)

objdump riscv

4
推荐指数
1
解决办法
6961
查看次数

标签 统计

objdump ×1

riscv ×1