【24h】

Reducing the cost of branches by using registers

机译:通过使用寄存器减少分支机构的成本

获取原文

摘要

In an attempt to reduce the number of operand memory references, many RISC machines have thirty-two or more general-purpose registers (e.g., MIPS, ARM, Spectrum, 88K). Without special compiler optimizations, such as inlining or interprocedural register allocation, it is rare that a compiler will use a majority of these registers for a function. This paper explores the possibility of using some of these registers to hold branch target addresses and the corresponding instruction at each branch target. To evaluate the effectiveness of this scheme, two machines were designed and emulated. One machine had thirty-two general-purpose registers used for data references, while the other machine had sixteen data registers and sixteen registers used for branching. The results show that using registers for branching can effectively reduce the cost of transfers of control.

机译:

为了减少操作数存储器引用的数量,许多RISC机器都具有32个或更多的通用寄存器(例如MIPS,ARM,Spectrum,88K)。如果没有特殊的编译器优化(例如内联或过程间寄存器分配),很少有编译器将这些寄存器中的大多数用于函数。本文探讨了使用其中一些寄存器保存分支目标地址以及每个分支目标上相应指令的可能性。为了评估该方案的有效性,设计并仿真了两台机器。一台机器有32个用于数据引用的通用寄存器,而另一台机器有16个数据寄存器和16个用于分支的寄存器。结果表明,使用寄存器进行分支可以有效降低控制权转移的成本。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号