[llvm-dev] compiler-rt, v4.0: arm\udivsi3.S broken for division by zero
Peter Jakubek via llvm-dev
llvm-dev at lists.llvm.org
Tue Mar 21 11:32:50 PDT 2017
Hello,
I think the current implementation for the call "bl __aeabi_idiv0" in
builtins\arm\udivsi3.S is broken.
At least for the case that __aeabi_idiv0 returns. (the provided
implementation does)
Since LR is not preserved, the following JMP(lr) results in an endless loop.
Or is this an intentional change of the behavior?
The file contains another implementation enabled by
__ARM_ARCH_EXT_IDIV__. This uses "b" instead of "bl".
(This works as in previous versions)
Cheers,
Peter
More information about the llvm-dev
mailing list