* Christoph Müllner via Binutils: > I'd like to add two points to this topic and raise two questions. > > 1) Accepting vendor extensions = avoidance of fragmentation > > RISC-V implementors are actively encouraged to implement their > own ISA extensions. To avoid fragmentation in the SW ecosystem > (every vendor maintains a fork of tools, distros and binaries) there > needs to be a principle acceptance to get vendor extension support > upstream.
If you eventually want portable binaries, it's necessary to converge on a small set of widely implemented extensions. x86 didn't have this, and adoption was poor outside specialized libraries (and JIT, of course). Yet everything was as upstream as possible (ISA manuals, assemblers, compiler intrinsics, even automated adoption by optimizers). So upstreaming is only the first step. Not every useful CPU feature can be adopted through run-time dispatching (IFUNCs, function multi-versionining). Thanks, Florian