Converting x86 binaries to arm binaries in place (arxiv.org)
from moonpiedumplings@programming.dev to programming@programming.dev on 13 May 2026 08:05
https://programming.dev/post/50314128

I can’t find the source code for this, I am posting here to save it to remind myself to search later.

#programming

threaded - newest

kibiz0r@midwest.social on 13 May 2026 11:50 next collapse

Elevator achieves performance on par with or better than QEMU’s user-mode JIT emulation.

QEMU is a weird pick here. Why not FEX?

refalo@programming.dev on 13 May 2026 17:18 collapse

Why is it “weird”? It has been around much longer AFAIK.

moonpiedumplings@programming.dev on 13 May 2026 18:02 collapse

Because fex/box86 have the ability to run arm binaries linked to x86 libraries, netting signficantly greater performance. In addition to other tricks.

box86.org/…/box86-box64-vs-qemu-vs-fex-vs-rosetta…

ExperimentalGuy@programming.dev on 13 May 2026 18:08 next collapse

What’s the point of this when you can compile between ISAs using a build tool and source? When would you need to cross compile a binary after building?

jdr@lemmy.ml on 13 May 2026 18:18 next collapse

Because you don’t have the source or because you can’t configure the cross-compiler

ExperimentalGuy@programming.dev on 14 May 2026 15:53 collapse

I guess I’m confused about the context you’d be in that situation.

qaz@lemmy.world on 14 May 2026 16:51 next collapse

E.g. when you have a proprietary program that is only available on x86, but you want to run it on ARM.

jdr@lemmy.ml on 14 May 2026 18:06 next collapse

I’m not talking about closed source software (heaven forfend!) but maybe you don’t have network access, or you don’t know what version you have or something. Sometimes even the best of us end up with binaries of unknown provenance that still must run.

dev_null@lemmy.ml on 14 May 2026 18:32 next collapse

Most software most people run is closed source and doesn’t have an arm version. Isn’t this the usual situation? Aunt Flo isn’t recompiling her tax filing software for arm. She just runs it, and it works because the arm laptop she has came with this built in.

HaraldvonBlauzahn@feddit.org on 15 May 2026 20:10 collapse

Easy to explain: The idiot project manager skipped to set up source control, and the sources have been lost.

FizzyOrange@programming.dev on 14 May 2026 17:25 collapse

It’s for closed source software obviously.

HaraldvonBlauzahn@feddit.org on 15 May 2026 20:07 collapse

Isn’t going all that AI tech going to make automated decompilation trivial? Re-compiling would not need illustrative variable names…

FizzyOrange@programming.dev on 16 May 2026 07:43 collapse

That is basically what this does, but more reliably.

HaraldvonBlauzahn@feddit.org on 14 May 2026 18:20 collapse

I think there will be cases that do not work. For example, default memory access semantics of multi-threaded code are different for x86 compared to ARM - the code likely contains assumptions that are not valid on ARM.