diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2026-02-09 16:26:29 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2026-02-09 16:26:29 +0000 |
| commit | 244f498074b5574d18d4518583863580498b8d3b (patch) | |
| tree | 4d456f2440b394b7c8d5e2cee368768cf92d49b1 | |
| parent | ec5d4664915f51ae62daec09fa4f9765c969adab (diff) | |
libmd aarch64: Use ands instead of bics to round down the length
GNU as does not accept bics with two register operands but instead
requires three register operands. However, clang assembles the bics
instruction to ands anyway, so just use ands directly.
Reviewed by: fuz
Differential Revision: https://reviews.freebsd.org/D55155
| -rw-r--r-- | lib/libmd/aarch64/md5block.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libmd/aarch64/md5block.S b/lib/libmd/aarch64/md5block.S index b928c8dd795a..297db7f6bdbd 100644 --- a/lib/libmd/aarch64/md5block.S +++ b/lib/libmd/aarch64/md5block.S @@ -134,7 +134,7 @@ d_ .req m5 stp x23, x24, [sp, #0x20] stp x25, x26, [sp, #0x30] - bics len, len, #63 // length in blocks + ands len, len, #~63 // length in blocks add end, buf, len // end pointer beq .Lend // was len == 0 after BICS? |
