2015-07-21 59 views
1

我正在使用riscv代码,我想用尖峰工具来模拟它。模拟的目的是查看一些浮点寄存器的内容。如何在尖峰上看到浮点寄存器的内容?

所以,如果我想看到的整数寄存器内容我使用的下一个命令:

reg 0 s0 

但如果我尝试使用相同的命令的浮点寄存器:

reg 0 ft0 

它总是显示我设置为零的所有位............

我附上一些我工作的汇编代码....

10164: 0000f053   fadd.s ft0,ft1,ft0 
10168: fe042227   fsw ft0,-28(s0) 

在这段代码中,我使用命令reg在 fadd.s指令之后查看浮点寄存器ft1和ft0(reg 0 ft1或reg 0 ft0)的内容,结果为:

core 0: 0x0000000000010164 (0x0000f053) fadd.s ft0, ft1, ft0 
: reg 0 ft0 
0x0000000000000000 

但是,如果我去找FSW指令执行后保存在内存中的内容,结果不是零,这是正确的

core 0: 0x0000000000010168 (0xfe042227) fsw  ft0, -28(s0) 
: mem 0 7fffff04 
0x0000000040e00000 

正如你的问题是,为什么用看reg命令查看内容一个浮点寄存器总是把零作为寄存器的内容。 reg格式和浮点寄存器有问题吗?

回答

1

对于浮点寄存器,必须使用命令fregsfregd,这取决于您希望看到的值表示为单精度值还是双精度值。

+1

谢谢克里斯!!!! –

相关问题