Ok so can we now build a swift toolchain in web assembly?

Or are we missing something? We see swift building for 32bit arm. Maybe just maybe?

The problem here is we don't run our Swift compiler on 32-bit platforms for now, so it might assume 64-bit address space or pointer size.

For example, the lowest 3-bits of pointer to swift::Type are used to embed some tags: include/swift/AST/TypeAlignments.h#L73
It works on 64-bit platforms because a pointer is 8 bytes aligned but not the same on 32-bit platforms where a pointer is 4 bytes aligned.

As far as I understand, those stuff are not an essential part of the compiler but optimizations, so we can make it 32-bit compatible in theory, but it would require non-trivial work.