"Joakim" <[email protected]> writes: > Around 15 of 71 phobos modules' tests fail somewhere, most likely > related to "long double" issues that either need to be backported, as > git master for ldc is still using a year-old druntime/phobos that > doesn't have some subsequent Android PRs, or fixed, but I haven't > looked into those much yet. Obviously, I can reuse some of this work > for Android/ARM, so it should help.
Joakim, the ldc merge-2.067 branch works well and has updated druntime/phobos. I know it has some of your Android updates. You may have more fun working with it. > I tried the same approach that worked on x86 on ARM, with the similar > ARM GOT relocation as can be seen in the llvm patch above, but it > didn't work. I'm reading up on the relevant ELF relocation info and > looking at the ARM assembly. If anybody better versed with those > low-level linker details would like to chip in, that should be the > last remaining piece to get much of Android/ARM working. I am not better versed, but I do like to tinker, so maybe I'll see something this weekend. I wonder if we should keep a common LLVM fork with changes to support D on targets without builtin TLS? I did another LLVM hack in x86 backend to support TLS on iPhone sim, and have been thinking about adding a fallback TLS, like emulated tls that gcc and gdc has, to support TLS using a target plugin to get lookup address. That way it could be wired into any old embedded multi thread RTOS with some sort of thread-local support. Maybe someday could even get LLVM to accept some patches.
