• @Treczoks
    link
    English
    19 hours ago

    Several differing extensions of the RISC-V core machine instructions, for example. A pain in the rear for any compiler builder.

    • @tekato
      link
      English
      15 hours ago

      That’s a good thing, meaning you can design RISC-V CPUs without functionality you don’t need (like microcontrollers that only need basic operations). However, for those who want a complete CPU, there are RVA profiles (latest being RVA23), which are a list of extensions required to be an application-ready CPU. So there’s really just 1 “standard” for general purpose computing, everything else is for specialized products.

      • @Treczoks
        link
        English
        139 minutes ago

        And it does not concern you that this RVA profile is version 23? Which means there are a number of CPUs based on lower versions, too, as they don’t just update on a whim? And they are incompatible, with version 23 because they lack instructions?

        So a compiler would have to support at least a certain number of those profiles (usually, parts in the embedded world are supported for 10+ years!), and be capable of supporting the one or other non-RVA extension, too, to satisfy customer needs.

        That is exactly what I meant with “too many standards”.