Skip to content

Commit a3b28fa

Browse files
committed
Update to LDC release-0.17.0-alpha
In addition, the scaffolding is setup to support tvOS and watchOS.
1 parent af794e6 commit a3b28fa

2 files changed

Lines changed: 16 additions & 16 deletions

File tree

README.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
11
# ldc-iphone-dev
2-
An LDC (LLVM-base D Compiler) development sandbox for targetting iOS.
2+
An LDC (LLVM-base D Compiler) development sandbox for targetting
3+
iOS and soon its siblings tvOS, watchOS.
34

4-
This [repo](https://github.com/smolt/ldc-iphone-dev) glues together various pieces needed to build an LDC cross compiler targeting Apple's iOS for iPhone, iPad, and iPod Touch. It also includes a few samples to show how to get started. The compiler and libraries are in good enough shape to pass the druntime/phobos unittests with a few minor math failures (see [Unittest Status](#unittest-status) below). This means someone could, if so inclined, build their D library and use it in an iOS App.
5+
This [repo](https://github.com/smolt/ldc-iphone-dev) glues together
6+
various pieces needed to build an LDC cross compiler targeting Apple's
7+
iOS for iPhone, iPad, and iPod Touch. It also includes a few samples
8+
to show how to get started. The compiler and libraries are in good
9+
enough shape to pass the druntime/phobos unittests (see
10+
[Unittest Status](#unittest-status) below). So yes, you can build
11+
your D library and use it in an iOS App.
512

6-
Versions derived from: LDC 0.16.1 (DMD v2.067.1) and LLVM 3.6.2.
13+
Versions derived from: LDC 0.17.0 alpha (DMD v2.068.2) and LLVM 3.6.2.
714

815
There is still stuff to [work on](#what-is-missing), but overall the core D language is ready for iOS.
916

@@ -129,21 +136,14 @@ Restoring FPU mode
129136
Note: that iOS by default runs with the ARM FPU "Default NaN" (arm,arm64) and "Flush to Zero" (arm only) modes enabled. In order to pass many of the math unittests, these modes are disabled first. This is something to consider if you are doing some fancy math and expect full subnormal and NaN behavior.
130137

131138
### Unittest Status
132-
Most druntime and phobos unittests pass with the exceptions being math
133-
related.
134-
135-
- std.internal.math.gammafunction - needs update for 64-bit reals
136-
137-
All the failures are marked in the druntime and phobos source with
138-
versions that begin with "WIP" to workaround the failure so rest of
139-
test can run. Grep for "WIP" to see all the details.
139+
Everything seems to be working! A couple comparisons in
140+
std.internal.math.gammafunction are off by a ulp, but no big deal.
140141

141142
## What is Missing
142-
Or what is left to do.
143-
144-
Back burner
143+
- Support tvOS and watchOS. Working on this thanks to LLVM 3.8, hopefully done
144+
before new years!
145+
- Xcode/D integration. I think this is the next most import thing.
145146
- Objective-C interop - work in progress under [DIP 43](http://wiki.dlang.org/DIP43)
146-
- Xcode/D integration (could use someone who loves working with Xcode plugins)
147147
- APIs for iPhone SDK - [DStep](https://github.com/jacob-carlborg/dstep) helps here
148148
- A D-based iOS App submitted to Apple App Store
149149
- A D-based iOS App accepted by the Apple App Store!

ldc

Submodule ldc updated 230 files

0 commit comments

Comments
 (0)