tests-gdb/src/lsr2.s

32 lines
508 B
ArmAsm

.global _start
.global _stop
_start:
setwd wsz=4, nfx=1
.macro loop r, p=0, l=0, e=0, s=0
{
nop 3
addd 0, 0, \r
disp %ctpr1, 0f
rwd (\s << 53) | (\p << 48) | (1UL << 37) | (\e << 32) | \l, %lsr
}
0:
addd \r, 1, \r
alc alcf=1, alct=1
ct %ctpr1 ? #NOT_LOOP_END
.endm
loop %r0, 0UL, 0, 0UL
loop %r1, 0UL, 1, 0UL
loop %r2, 0UL, 2, 0UL
loop %r3, 0UL, 3, 0UL
loop %r4, 4UL, 8, 0UL
loop %r5, 8UL, 2, 0UL
loop %r6, 4UL, 8, 2UL
loop %r7, 4UL, 0, 8UL
_stop:
udivs 0, 0, %empty