Comment on Linus Torvalds says RISC-V will make the same mistakes as Arm and x86
KillingTimeItself@lemmy.dbzer0.com 4 months agotheoretically you could do it by defining an architecture operations standard, and then adhering to that somewhat when designing a CPU. While providing hardware flexibility as you could simply, not implement certain features, or implement certain other features. Might be an interesting idea.
That or something that would require minimal “instruction translation” between different architectures.
sugar_in_your_tea@sh.itjust.works 4 months ago
It sounds like you’re just reinventing either the JVM (runtime instruction translation), compilers (LLVM IR), or something in between (JIT interpreters).
The problem is that it’s a hard problem to solve generally without expensive tradeoffs:
Each is fine and has a use case, but I really don’t think we need a hardware agnostic layer, we just need languages that help alleviate issues with different architectures. For example, Rust’s ownership model may help prevent bugs that out of order execution may expose. It could also allow programmers to specify more strict limits on types (e.g. non-zero numbers, for example), which could aid arch-specific optimizations).
KillingTimeItself@lemmy.dbzer0.com 4 months ago
yeah pretty much. The JVM but marginally less skill issued lol.