On Jun 10, 2020, at 5:50 AM, Jesper Louis Andersen 
<jesper.louis.ander...@gmail.com> wrote:
> 
> 2. Dynamic binary translation from machine-code to machine-code has been used 
> in the past for these architectural changes. While this carries a penalty, it 
> also provides a short-term solution. The added efficiency of recompiles for 
> the new machine code target encourages people to install newer versions in 
> the case. The history is old and long here. M68K to PowerPC, PowerPC to x86, 
> x86 to DEC Alpha, VAX to Alpha RISC, and even more. Apple have been involved 
> in at least two such models in the past, so I wouldn't count this out as a 
> strategy.

This is certainly pedantry, but it's worth noting that the VAX to Alpha 
translation in VMS wasn't dynamic recompilation, but static.  There are almost 
certainly similar examples; I'm not familiar enough with NT history to remember 
if there was a similar translator for the Alpha version, but given that Dave 
Cutler was at the helm of that transition (though not the VAX->Alpha transition 
at DEC), I wouldn't be surprised.

Also worth noting that IBM i (f/k/a System i and AS/400) traditionally stores 
its executables as an IR form to be compiled to native code (currently PPC) on 
execution, though my recollection is that this is a one-time process, not a JIT 
process like Java or WASM.


- Dave

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/B924AC7A-F592-4FFA-A56F-75134C626D04%40gmail.com.

Reply via email to