I've tried; the results are consistent with the interrupt thing. The following snippet:

ASMTest
    mov r12, lr
    blx a
    mov lr, r12
    bx lr

    ALIGN 4
    ARM
a
    bx lr

Consistently crashes when executed under a debugger, but ran as expected 10 times in a row when standalone.

Naturally, this means that any kind of *sensible* ARM code would pointless. Oh well. At least there are no CPU-level miracles :)

> You can't prevent interrupts when in Usermode. So even a short function will crash sometimes.

> When you do a non-Thumb function that does not call any other function same only can be influenced by an interrupt. So if it crashes at all, you know that the interrupt logic of the OS is buggy.



_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to