Add support for signed 64-bit division. The implementation mostly relies on __aeabi_uldivmod, which is already implemented. ldivmod.S was adapted from CrOS EC version of ldivmod.S: https://chromium.googlesource.com/chromiumos/platform/ec/+/main/third_party/libaeabi-cortexm0/core/cortex-m0/ldivmod.S The CrOS EC version was adapted from: https://github.com/bobbl/libaeabi-cortexm0/blob/master/ldivmod.S BUG=b:240316722 BRANCH=None TEST=Signed division works in PSP verstage (runs on ARM) Change-Id: I53785c732b0fa35a4809bc054f1482c5461ada7b Signed-off-by: Rob Barnes <robbarnes@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/66207 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> |
||
|---|---|---|
| .. | ||
| armv4 | ||
| armv7 | ||
| include | ||
| libgcc | ||
| asmlib.h | ||
| boot.c | ||
| boot_linux.S | ||
| clock.c | ||
| div0.c | ||
| eabi_compat.c | ||
| fit_payload.c | ||
| Kconfig | ||
| Makefile.inc | ||
| memcpy.S | ||
| memmove.S | ||
| memset.S | ||
| stages.c | ||
| tables.c | ||