By: j (invalid.delete@this.example.net),
Room: Moderated Discussions
Adrian (a.delete@this.acm.org) on November 2, 2019 9:33 am wrote:
> I refuse to believe to believe that instruction-pair fusion is simpler or better than the
> trivial enhancement of the instruction encoding to cover the more complex instructions that
> are needed in almost all loops, e.g. either with indexed or auto-indexed addressing.
>
>
OTOH risc-v has compare-and-branch instructions so it doesn't need to fuse compare+jump, nor does it have a flags register. At least the risc-v people are claiming that virtualizing the flags register is a somewhat complex task for superscalar/OoO implementations.
(the biggest downside afaics is that because the jump instructions need two register specifiers, so the max jump offset is quite small)
> I refuse to believe to believe that instruction-pair fusion is simpler or better than the
> trivial enhancement of the instruction encoding to cover the more complex instructions that
> are needed in almost all loops, e.g. either with indexed or auto-indexed addressing.
>
>
OTOH risc-v has compare-and-branch instructions so it doesn't need to fuse compare+jump, nor does it have a flags register. At least the risc-v people are claiming that virtualizing the flags register is a somewhat complex task for superscalar/OoO implementations.
(the biggest downside afaics is that because the jump instructions need two register specifiers, so the max jump offset is quite small)


