Swift Runtime Error running on Android SDK 30 arm64-v8a

I've put together a pull that fixes this issue on Android AArch64 by moving Swift's string tag to the second byte, along with other needed moves I found, more detailed technical writeup there. I've tested it on two devices with this problem and one without, with everything working well now. Took me a week of rooting around failing tests with lldb to track these various Swift collisions with Android's memory tagging down.

If @Geordie_J and others running Swift on Android would try it out, more testing would be good. @v.gorlov, try it with your Android cross-compilation toolchain and let us know.

I've pushed the fix into my native Swift toolchain package that runs on Android, which works on these tagged devices for the first time, but recompiling my 5.5 cross-compilation Android SDKs won't be enough, as the Swift compiler itself has to be patched. I'll try to get the fix into the 5.6 branch before the upcoming release, so that this should be fixed by then.

1 Like