File:  [Research Unix] / researchv10no / cmd / PDP11 / fpp / rhflibu.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:35 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv10, HEAD
researchv10 Norman

/
/ unix-format floating point (most sign. part in lowest address)
/
.text
.globl __ffrl,__ftol,__fadd,__fsub,__fmul,__fdiv
.globl __lton,__ntol,__fton,__ffrn,__ntoi,__iton,__uton,__ntou
.globl __ftoi,__ffri,__ffru,__ftou
.globl __fsign,__fsign2
.globl __one
.globl ret / fltg-pt interrupt level code should save/restore ret

.globl fad,fsb,fmp,fdv,int,float
__ffrl:
	mov (sp)+,ret
	jsr pc,float
	mov (sp)+,r0
	mov (sp),r1
	jsr pc,*ret

__ffri:	mov (sp)+,ret
	tst (sp)
	sxt -(sp)
	jsr pc,float
	mov (sp)+,r0
	mov (sp),r1
	jmp *ret

__ffru:	mov (sp)+,ret
	clr -(sp)
	jsr pc,float
	mov (sp)+,r0
	mov (sp),r1
	jmp *ret

__ftol:	mov (sp)+,ret
	jsr pc,int
	mov (sp)+,r0
	mov (sp),r1
	jsr pc,*ret

__ftou:
__ftoi:	mov (sp)+,ret
	jsr pc,int
	mov 2(sp),r0
	jmp *ret

__fadd:	mov $fad,r0

binop:	mov (sp)+,ret
	jsr pc,(r0)
	mov (sp)+,r0
	mov (sp)+,r1
	sub $8.,sp
	jmp *ret

__fsub:	mov $fsb,r0
	jbr binop

__fmul:	mov $fmp,r0
	jbr binop

__fdiv:	mov $fdv,r0
	jbr binop

__lton:
__ntol:	mov 2(sp),r1
	mov 4(sp),r0
	rts pc

__ntou:
__ntoi:	mov 2(sp),r0
	rts pc

__iton:	mov 2(sp),r0
	sxt r1
	rts pc

__uton:	mov 2(sp),r0
	clr r1
	rts pc

__fton:	mov (sp)+,ret
	jsr pc,int
	mov (sp)+,r1
	mov (sp),r0
	jsr pc,*ret

__ffrn:	mov 2(sp),-(sp)
	mov 6(sp),-(sp)
	jsr pc,float
	mov (sp)+,r0
	mov (sp)+,r1
	rts pc

.data
ret:0
__fsign:__fsign2: 100000
0
__one: 40200
0

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.