ack/mach/vax4/libem/los.s

33 lines
444 B
ArmAsm
Raw Normal View History

1985-01-18 14:30:03 +00:00
#include "em_abs.h"
1990-01-12 10:29:26 +00:00
.sect .text; .sect .rom; .sect .data; .sect .bss; .sect .text
.define .los
1985-01-18 14:30:03 +00:00
1990-01-12 10:29:26 +00:00
! $Header$
1985-01-18 14:30:03 +00:00
.los:
movl (sp)+,r2
cmpl r0,$4
1990-01-12 10:29:26 +00:00
beql I1
1985-01-18 14:30:03 +00:00
pushl $EILLINS
jmp .fat
1990-01-12 10:29:26 +00:00
I1:
movl (sp)+,r0 ! nbytes in r0
movl (sp)+,r1 ! address in r1
1985-01-18 14:30:03 +00:00
cmpl r0,$1
1990-01-12 10:29:26 +00:00
beql I2
1985-01-18 14:30:03 +00:00
cmpl r0,$2
1990-01-12 10:29:26 +00:00
beql I3
1985-01-18 14:30:03 +00:00
addl2 r0,r1
ashl $-2,r0,r0
1990-01-12 10:29:26 +00:00
I4:
1985-01-18 14:30:03 +00:00
movl -(r1),-(sp)
1990-01-12 10:29:26 +00:00
sobgtr r0,I4
1985-01-18 14:30:03 +00:00
jmp (r2)
1990-01-12 10:29:26 +00:00
I2:
1985-01-18 14:30:03 +00:00
cvtbl (r1),-(sp)
jmp (r2)
1990-01-12 10:29:26 +00:00
I3:
1985-01-18 14:30:03 +00:00
cvtwl (r1),-(sp)
jmp (r2)