By: Wilco (wilco.dijkstra.delete@this.ntlworld.com), November 3, 2019 6:38 am
Room: Moderated Discussions
Gabriele Svelto (gabriele.svelto.delete@this.gmail.com) on November 3, 2019 1:25 am wrote:
> I hope that settles it since it comes up in each and every RISC-V discussion.
It's just a proposal at this point. The extension is quite large and consists of several optional parts, so it isn't obvious whether conditional moves will ever be added. Even then it isn't obvious the extension will ever be used in implementations which would benefit the most (ie. lower-end ones with no or basic branch predictors).
> Outside of the base general-purpose profiles the whole ISA is still largely in flow (which
> could be said of pretty much any ISA these days). Using the general purpose profile as
> a baseline is OK, but high-performance cores are unlikely to ship it w/o extensions.
I don't believe the situation is in any way similar. The fact we're discussing a proposed bitmanipulation extension almost 10 years after introduction of RISC-V is telling. Generally you start off with a well designed base ISA that includes all commonly used instructions - including multiply, division, count-leading-zeroes, bitinsert/extract, conditional moves etc. This means all implementations benefit from these instructions from day one and are binary compatible.
Wilco
> I hope that settles it since it comes up in each and every RISC-V discussion.
It's just a proposal at this point. The extension is quite large and consists of several optional parts, so it isn't obvious whether conditional moves will ever be added. Even then it isn't obvious the extension will ever be used in implementations which would benefit the most (ie. lower-end ones with no or basic branch predictors).
> Outside of the base general-purpose profiles the whole ISA is still largely in flow (which
> could be said of pretty much any ISA these days). Using the general purpose profile as
> a baseline is OK, but high-performance cores are unlikely to ship it w/o extensions.
I don't believe the situation is in any way similar. The fact we're discussing a proposed bitmanipulation extension almost 10 years after introduction of RISC-V is telling. Generally you start off with a well designed base ISA that includes all commonly used instructions - including multiply, division, count-leading-zeroes, bitinsert/extract, conditional moves etc. This means all implementations benefit from these instructions from day one and are binary compatible.
Wilco