On 1/9/26 11:34, Kohei Tokunaga wrote:
Hi Paolo,
> > Long has it been threatened, but here we are at last.
> >
> > 32-bit host support was deprecated with the 10.0 release, and so
> > with the 11.0 release we may remove it. Phil already did some
> > cleanup in 10.2, removing support for mips32 and ppc32 within tcg.
>
> What is the situation with wasm? If I understand correctly, wasm32
> really is a 64-bit target from the TCG point of view, because it has
> 64-bit registers internally (similar to x32).
Currently, wasm32 compilation is treated as a 32bit target with support
only
for 32bit guests. 64bit guest support would require additional patches to
TCG, as discussed in the earlier attempt.
(e.g. https://patchew.org/QEMU/
[email protected]/).
As an alternative approach, there is a patch set for 64bit compilation
support using wasm64 target, which doesn't require the additional TCG
patches. QEMU can still run on wasm32 engines (e.g. Safari) by relying on
the Emscripten's feature to lower the output binary to wasm32.
What is the performance of lowered 64-bit vs. the TCG_VADDR_BITS
approach? Also, Emscripten's -sMEMORY64=2 is okay for TCI but it would
not work for TCG; you'd still need TCG_VADDR_BITS to be able to produce
wasm32 at runtime, which makes -sMEMORY64=2 only a stopgap.
So I think we should go for TCG_VADDR_BITS anyway. It's surprisingly
*un*invasive.
I assume wasm32 has CONFIG_ATOMIC64?
Paolo
https://patchew.org/QEMU/[email protected]/
I've rebased this series on the recent tree yesterday.
Regards,
Kohei