4 ms·
Does it fix everything?
by GoOnThenDoTell 4y ago
Does it fix everything?
- gpderetta 4y agoSure, given a Sufficiently Smart Decoder.
- less_less 4y agoNo, of course. It'd be interesting to see how much you can claw back with a practical implementation though. Off the top of my head, it's not practical to fix RISCV's multi-precision arithmetic issues with instruction fusion. That's not a dominant use-case, especially if post-quantum crypto takes off, but it's definitely a place where RISCV underperforms ARM and x86 by a large factor instruction-for-instruction. Also there are places where ARM's instructions improve code density, like LDMIA, STMDB etc. These of course can't be fixed by fusion. I'm sure there are other areas.
- snvzz 4y ago>code density RISC-V excels in code density. 64-bit RISC-V is the most dense 64bit ISA by a large margin and has been for a long time. 32-bit RISC-V is the most dense 32bit ISA as of the recent B and Zc work; it used to be Thumb2 was ahead. All of this is without compromising "purity" or needlessly complicating decode; there already is a 8-wide decode implementation (Ascalon, by Jim Keller's team), matching Apple M1/M2 decode width.
- less_less 4y agoSure, that's fair. And I'm not saying RISC-V made the wrong choice. Just that lack of "impure" instructions like LDMIA does reduce code density, and can't be fixed through fusion, even if you can get ahead of Thumb2 with improvements elsewhere. (Thumb2 is the most apt comparison here I think, since the instructions I mentioned are Thumb2 instructions.)