I’d start by taking small executables that you generate yourself that already properly translate under emscripten and then move up in complexity with larger projects that already have translation ports (Lua and Python). I think the main concern would be getting libc to link properly.
The libc part wouldn’t be that bad. (disclaimer: I’ve worked on emscripten for various clients (including Mozilla), including major changes to the libc and libcxx handling in emscripten.)
You’d want to modify the linking process to give preference to the libc symbols rather than the application’s copy of that code. I’d probably initially be concerned more about differences in things like var args handling and the alignment of various types since the ABIs are different. (emscripten no longer uses the x86 Linux stuff in LLVM but a custom target similar to that of PNaCL.)
It’d be a fun project though if I had the time. :)
I think there needs to be a new blogpost format where people outline an interesting project and set it free on the internet. Possibly with some guidance when the adventurers hit snags. Kinda like a lazy web version of a grad student or postdoc.
Ok, new idea. You should get a contract with GOG to emscriptenize their catalog.
Ok, new new idea. Create a backend via x86 -> llvm -> emscripten to bring Delphi (Turbo Pascal) code directly to the browser. Maybe port some greenscreen stuff so runs directly, same binaries. JC Penny, Sears (are they still in business), auto parts stores ?
I almost want to know what happens if I take an x86 binary, run it through this and then run the resulting LLVM bitcode through emscripten.
I’d start by taking small executables that you generate yourself that already properly translate under emscripten and then move up in complexity with larger projects that already have translation ports (Lua and Python). I think the main concern would be getting
libcto link properly.The libc part wouldn’t be that bad. (disclaimer: I’ve worked on emscripten for various clients (including Mozilla), including major changes to the libc and libcxx handling in emscripten.)
You’d want to modify the linking process to give preference to the libc symbols rather than the application’s copy of that code. I’d probably initially be concerned more about differences in things like var args handling and the alignment of various types since the ABIs are different. (emscripten no longer uses the x86 Linux stuff in LLVM but a custom target similar to that of PNaCL.)
It’d be a fun project though if I had the time. :)
I think there needs to be a new blogpost format where people outline an interesting project and set it free on the internet. Possibly with some guidance when the adventurers hit snags. Kinda like a lazy web version of a grad student or postdoc.
Ok, new idea. You should get a contract with GOG to emscriptenize their catalog.
Ok, new new idea. Create a backend via x86 -> llvm -> emscripten to bring Delphi (Turbo Pascal) code directly to the browser. Maybe port some greenscreen stuff so runs directly, same binaries. JC Penny, Sears (are they still in business), auto parts stores ?