Towards exception handling on ARM
David Nadlinger
code at klickverbot.at
Mon Jan 6 23:11:51 PST 2014
Hi all,
Just wanted to share the latest news concerning ARM support.
I just had another go at fixing exception handling on ARM, and with
the very, _very_ crude patch linked in
https://github.com/ldc-developers/ldc/issues/489, simple instances of
EH such as in the following example now behave as expected: (LLVM 3.3,
ldc merge-2.064, armv7l-unknown-linux-gnueabihf)
———
void thrower() {
throw new Exception("Hello World!");
}
void main() {
import std.stdio;
try {
thrower();
} catch (Exception e) {
writeln(e.msg);
}
}
———
There is still a long way to go through, as evidenced by this test
suite log: https://gist.github.com/klickverbot/8294261. I cancelled
the build of the std.algorithm tests due to its ridiculous memory
requirements (in ARM SoC terms), but note that quite a few tests are
segfaulting in strange ways. Many of which turn out to be caused by
remaining unwinding issues (just look at the backtrace in GDB).
I don't think I'll really have the time to resume work on this until
end of January or so, but if somebody else wants to continue where I
left off, I'd be glad to provide assistance. The next step I'd suggest
is getting the dmd-testsuite machinery to run, so as to iron out the
most critical bugs before attacking the more complex Phobos test
cases.
Best,
David
More information about the digitalmars-d-ldc
mailing list