On Friday, 28 February 2014 at 21:18:05 UTC, Timo Sintonen wrote:
On Wednesday, 8 January 2014 at 19:13:36 UTC, Timo Sintonen
wrote:
On Wednesday, 8 January 2014 at 15:52:25 UTC, Johannes Pfau
wrote:
Stupid question, but are C++ exceptions working for you? I
think we
don't change anything inthe compiler related to exception
handling, so
if C++ worked and D didn't it could only be a problem with
the runtime
code?
I investigated this a little. It seems that the processor gets
a fault interrupt when calling _Unwind_RaiseException in
_d_throw. The status bits indicate an invalid instruction code.
When looking at the disassembly I see that the call is a blx
instruction with address. In Cortex-m4 blx can only take a
register argument.
Is this a bug in gdc or gcc?
blx can also take a label. Are you sure it's an address and not
a label?