Files
linux-kernel-module-cheat/userland/arch/aarch64/ubfm.S
Ciro Santilli 六四事件 法轮功 f176d04500 userland: start refactor to show failing values on failure!
aarch64 basically done, but missing:

- other archs
- maybe convert main.c into C++ to use templates?
- full review of ASSERT_EQ calling convention issues not seen by tests
  by chance
- documentation
2019-05-05 00:00:00 +00:00

18 lines
356 B
ArmAsm

/* https://github.com/cirosantilli/arm-assembly-cheat#ubfm */
#include "common.h"
ENTRY
ldr x19, =0x1122334455667788
// lsr alias: imms == 63
ldr x20, =0xFFFFFFFFFFFFFFFF
ubfm x20, x19, 16, 63
ASSERT_EQ(x20, 0x0000112233445566)
ldr x20, =0xFFFFFFFFFFFFFFFF
ubfm x20, x19, 32, 63
ASSERT_EQ(x20, 0x0000000011223344)
EXIT