assembly - 哪些 PowerPC 指令将 r0 视为 0?

标签 assembly cpu-registers powerpc

当其RA参数为0时,addi指令会将其视为一个值,而不是像该参数为其他值时那样从相应的寄存器中读取。加载和存储指令的行为方式相同。

还有其他类似的指令吗?

最佳答案

此信息的官方来源是 ISA - here's最新发布的芯片 Power9 的一个。

如果您在 pdf 中搜索“RA = 0”,您可以看到其行为取决于 RA 为 0 的指令。我可以找到:

  • l{b,h,w}z[x]
  • l{h,w}a[x]
  • ld[x]
  • st{b,h,w,d}[x]
  • {l,st}q
  • {l,st}{h,w,d}brx
  • {l,st}mw
  • {l,st}sw{i,x}
  • 阿迪[s]
  • {l,st}f{s,d}[x]
  • lfiw{z,a}x
  • stfiwx
  • {l,st}fdp[x]
  • {l,st}ve{b,h,w}x
  • {l,st}vx[l]
  • lvs{l,r}
  • dcbz
  • 复制、粘贴
  • l{b,h,w,d,q}arx
  • st{b,h,w,d,q}cx。
  • tabort./treclaim.,有点
  • l{b,h,w,d}zcix
  • st{b,h,w,d}cix

关于assembly - 哪些 PowerPC 指令将 r0 视为 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66191217/

相关文章:

assembly - Cortex M0+ (SAMD21) 未执行待处理中断

python - Python 是将函数参数加载到寄存器中还是将它们保存在堆栈中?

linux - 将软件包移植到 powerpc 需要什么工具?

kernel - 如何在 AIX/powerpc 上实现原子分配?

assembly - NASM 程序集 16 位 "invalid combination of opcode and operands"

c - 在thumb模式下编译时的GCC arm指令模式

assembly - 为什么 rbp 和 rsp 被称为通用寄存器?

assembly - 无法将寄存器移动到不同大小的寄存器

c - 带寄存器的 Stm32 定时器计数器

c - GCC PowerPC 避免使用 float 的 .rodata 部分