On Wednesday, 20 June 2018 at 07:25:37 UTC, makedgreatagain wrote:
On Wednesday, 20 June 2018 at 05:26:25 UTC, Joakim wrote:
Do you mean ltsmaster or master? There shouldn't be much change with the former.

master branch.

The TLS patches shouldn't be needed after llvm 3.8 or so, ie you should be able to use a stock llvm for iOS:

https://forum.dlang.org/thread/m237o97vf0....@comcast.net

this is great.


That makes no sense: there are no C++ files in the runtime, only C and D. Anyway, if you only care about betterC, you don't want to build the runtime, so doesn't matter.

My suggestion is that you simply build his working ldc for iOS project, but with the betterC patch I linked you backported. Once you're sure that's working, you can try these more advanced steps. Have you tried that? It's not clear.

the origin ldc with your patch is working. but I find it is very limit betterC support with old version(some code will not work, and fixed at late dmd/ldc version).

The patched ldc not build because a lot old code Dan Olson write is not working any more( ldc cpp interface changed, or llvm cpp interface changed). I try to fix but never get it working. (I patch all 36 files)

Looking at his commits diffed against ltsmaster, there isn't much to port, particularly once you throw out the TLS commits and the floating-point cross-compilation code that has since been added in the official repo, maybe 500-800 lines largely in his new iOS ABI files:

https://github.com/ldc-developers/ldc/compare/ltsmaster...smolt:ios

Of course, adapting that diff to upstream takes careful knowledge of ABI details and how llvm and LDC handle them, which you may not be familiar with. You may want to see if one of the LDC devs is interested in porting this patch upstream, by posting in their forum:

https://forum.dlang.org/group/ldc

Some of them do consulting work for companies, maybe you could pay one of them to do it.

Reply via email to