RISC-V ISA中有任何假设阻止堆栈增长而不是下降吗?

时间:2019-12-28 12:22:32

标签: riscv

我想知道ISA中的任何内容是否会使堆栈长大(推动增加sp,弹出减小它)或降低性能?我知道这不是当今工具(包括linux和gcc端口)如何工作的方式,但是除了“这将是一件疯狂的工作”之外,还有其他根本原因吗?

1 个答案:

答案 0 :(得分:0)

在微码中加一点而不是从sp中减去,可能很容易。

我能想到的根本原因是

  • 惯性。当需要更改每个工具链时,为什么要这么做?
  • 已安装的基座。许多代码可能会假设堆栈朝哪个方向增长。您需要一个很好的理由来破坏现有代码。
  • 复杂性。随着堆的分配逐渐增加到更高的地址,您是否还想扭转这种情况以保持堆和堆栈彼此之间的增长?