sbcl.sbcl/contrib/sb-rotate-byte
2026-06-29 14:01:31 +02:00
..
arm-vm.lisp arm32/sb-rotate-byte: fix a lifetime issue. 2018-04-09 15:06:40 +03:00
arm64-vm.lisp Better variable sb-rotate-byte. 2023-11-04 21:11:12 +03:00
compiler.lisp Add loongarch support in contrib 2026-01-19 06:34:44 +03:00
loongarch64-vm.lisp Add loongarch support in contrib 2026-01-19 06:34:44 +03:00
Makefile 0.7.13.32 2003-03-19 13:15:44 +00:00
manual.lisp doc: add new lisp manual files 2026-06-29 14:01:31 +02:00
package.lisp Don't have SB-BIGNUM use SB-ALIEN, SB-SYS, or SB-KERNEL. 2024-05-18 02:32:12 +02:00
ppc-vm.lisp x86-64: always use :DWORD size for count operand in rotate-byte 2023-11-04 09:03:35 -04:00
ppc64-vm.lisp Better rotate-byte for ppc64. 2023-11-06 15:48:26 +03:00
README 0.7.12.36: 2003-02-11 15:42:34 +00:00
riscv-vm.lisp sb-rotate-byte: Fix vops for 32-bit risc-v. 2019-06-04 23:59:26 -07:00
rotate-byte-tests.lisp Fix a test for 32-bit, again. 2023-11-10 19:52:48 +03:00
rotate-byte.lisp Recognize identity rotations in out-of-line ROTATE-BYTE 2023-11-10 10:20:30 +00:00
sb-rotate-byte.asd Add loongarch support in contrib 2026-01-19 06:34:44 +03:00
sb-rotate-byte.texinfo doc: update generated texinfo files 2026-06-29 14:01:31 +02:00
x86-64-vm.lisp Better variable sb-rotate-byte. 2023-11-04 21:11:12 +03:00
x86-vm.lisp x86-64: always use :DWORD size for count operand in rotate-byte 2023-11-04 09:03:35 -04:00

This module provides an implementation of ROTATE-BYTE, described at
<http://www.cliki.net/ROTATE-BYTE">.  Its inclusion is hoped to
achieve two aims:

(1) to provide the necessary functionality for implementations of
    cryptographic and hashing algorithms (e.g. MD5);

(2) to provide an example of the things that can be achieved by using
    the external but unsupported interfaces to the compiler.

Included in the module as of 2003-02-11 is an efficient implementation
of unsigned 32-bit rotation for the x86; when the compiler can prove
that the rotation in question is of an (UNSIGNED-BYTE 32) over the
byte specifier (BYTE 32 0), it will compile directly to machine
rotation instructions.  Patches for similar functionality on other
platforms are welcome.