<commit_before>.define .adf4, .adf8, .sbf4, .sbf8, .mlf4, .mlf8, .dvf4, .dvf8
.define .ngf4, .ngf8, .fif4, .fif8, .fef4, .fef8
.define .cif4, .cif8, .cuf4, .cuf8, .cfi, .cfu, .cff4, .cff8
.define .cmf4, .cmf8
.sect .text
.sect .rom
.sect .data
.sect .bss

!	$Header$

!	Implement interface to floating point package for M68881

	.sect .text
.adf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fadd.s	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.adf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fadd.d	(8,sp),fp0
	fmove.d	fp0,(8,sp)
	jmp	(a0)

.sbf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmove.s	(4,sp),fp1
	fsub	fp0,fp1
	fmove.s	fp1,(4,sp)
	jmp	(a0)

.sbf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmove.d	(8,sp),fp1
	fsub	fp0,fp1
	fmove.d	fp1,(8,sp)
	jmp	(a0)

.mlf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmul.s	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.mlf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmul.d	(8,sp),fp0
	fmove.d	fp0,(8,sp)
	jmp	(a0)

.dvf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmove.s	(4,sp),fp1
	fdiv	fp0,fp1
	fmove.s	fp1,(4,sp)
	jmp	(a0)

.dvf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmove.d	(8,sp),fp1
	fdiv	fp0,fp1
	fmove.d	fp1,(8,sp)
	jmp	(a0)

.ngf4:
	fmove.s	(4,sp),fp0
	fneg	fp0
	fmove.s	fp0,(4,sp)
	rts

.ngf8:
	fmove.d	(4,sp),fp0
	fneg	fp0
	fmove.d	fp0,(4,sp)
	rts

.fif4:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.s	(4,sp),fp0
	fmove.s	(8,sp),fp1
	fmul	fp0,fp1
	fintrz	fp1,fp0
	fsub	fp0,fp1
	fmove.s	fp1,(4,a1)
	fmove.s	fp0,(a1)
	jmp	(a0)

.fif8:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.d	(4,sp),fp0
	fmove.d	(12,sp),fp1
	fmul	fp0,fp1
	fintrz	fp1,fp0
	fsub	fp0,fp1
	fmove.d	fp1,(8,a1)
	fmove.d	fp0,(a1)
	jmp	(a0)

.fef4:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.s	(4,sp),fp0
	fgetexp	fp0,fp1
	fmove.l	fpsr,d0
	and.l	#0x2000,d0	! set if Infinity
	beq	1f
	move.l	#129,(a1)
	move.l	#0x3f000000,(4,a1)
	jmp	(a0)
1:
	fmove.l	fp1,d0
	add.l	#1,d0
	fgetman	fp0
	fmove.l	#2,fp1
	fdiv	fp1,fp0
	fmove.s	fp0,(4,a1)
	move.l	d0,(a1)
	jmp	(a0)

.fef8:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.d	(4,sp),fp0
	fgetexp	fp0,fp1
	fmove.l	fpsr,d0
	and.l	#0x2000,d0	! set if Infinity
	beq	1f
	move.l	#1025,(a1)
	move.l	#0x3fe00000,(4,a1)
	clr.l	(8,a1)
	jmp	(a0)
1:
	fmove.l	fp1,d0
	add.l	#1,d0
	fgetman	fp0
	fmove.l	#2,fp1
	fdiv	fp1,fp0
	fmove.d	fp0,(4,a1)
	move.l	d0,(a1)
	jmp	(a0)

.cif4:
	move.l	(sp)+,a0
	fmove.l	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.cif8:
	move.l	(sp)+,a0
	fmove.l	(4,sp),fp0
	fmove.d	fp0,(sp)
	jmp	(a0)

.cuf4:<commit_msg>fix to fix: did not handle negative arguments right<commit_after>.define .adf4, .adf8, .sbf4, .sbf8, .mlf4, .mlf8, .dvf4, .dvf8
.define .ngf4, .ngf8, .fif4, .fif8, .fef4, .fef8
.define .cif4, .cif8, .cuf4, .cuf8, .cfi, .cfu, .cff4, .cff8
.define .cmf4, .cmf8
.sect .text
.sect .rom
.sect .data
.sect .bss

!	$Header$

!	Implement interface to floating point package for M68881

	.sect .text
.adf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fadd.s	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.adf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fadd.d	(8,sp),fp0
	fmove.d	fp0,(8,sp)
	jmp	(a0)

.sbf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmove.s	(4,sp),fp1
	fsub	fp0,fp1
	fmove.s	fp1,(4,sp)
	jmp	(a0)

.sbf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmove.d	(8,sp),fp1
	fsub	fp0,fp1
	fmove.d	fp1,(8,sp)
	jmp	(a0)

.mlf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmul.s	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.mlf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmul.d	(8,sp),fp0
	fmove.d	fp0,(8,sp)
	jmp	(a0)

.dvf4:
	move.l	(sp)+,a0
	fmove.s (sp),fp0
	fmove.s	(4,sp),fp1
	fdiv	fp0,fp1
	fmove.s	fp1,(4,sp)
	jmp	(a0)

.dvf8:
	move.l	(sp)+,a0
	fmove.d (sp),fp0
	fmove.d	(8,sp),fp1
	fdiv	fp0,fp1
	fmove.d	fp1,(8,sp)
	jmp	(a0)

.ngf4:
	fmove.s	(4,sp),fp0
	fneg	fp0
	fmove.s	fp0,(4,sp)
	rts

.ngf8:
	fmove.d	(4,sp),fp0
	fneg	fp0
	fmove.d	fp0,(4,sp)
	rts

.fif4:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.s	(4,sp),fp0
	fmove.s	(8,sp),fp1
	fmul	fp0,fp1
	fintrz	fp1,fp0
	fsub	fp0,fp1
	fmove.s	fp1,(4,a1)
	fmove.s	fp0,(a1)
	jmp	(a0)

.fif8:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.d	(4,sp),fp0
	fmove.d	(12,sp),fp1
	fmul	fp0,fp1
	fintrz	fp1,fp0
	fsub	fp0,fp1
	fmove.d	fp1,(8,a1)
	fmove.d	fp0,(a1)
	jmp	(a0)

.fef4:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.s	(4,sp),fp0
	fgetexp	fp0,fp1
	fmove.l	fpsr,d0
	and.l	#0x2000,d0	! set if Infinity
	beq	1f
	move.l	#129,(a1)
	fmove.s	(4,sp),fp0
	fblt	2f
	move.l	#0x3f000000,(4,a1)
	jmp	(a0)
2:
	move.l	#0xbf000000,(4,a1)
	jmp	(a0)
1:
	fmove.l	fp1,d0
	add.l	#1,d0
	fgetman	fp0
	fmove.l	#2,fp1
	fdiv	fp1,fp0
	fmove.s	fp0,(4,a1)
	move.l	d0,(a1)
	jmp	(a0)

.fef8:
	move.l	(sp)+,a0
	move.l	(sp),a1
	fmove.d	(4,sp),fp0
	fgetexp	fp0,fp1
	fmove.l	fpsr,d0
	and.l	#0x2000,d0	! set if Infinity
	beq	1f
	move.l	#1025,(a1)
	fmove.d	(4,sp),fp0
	fblt	2f
	move.l	#0x3fe00000,(4,a1)
	clr.l	(8,a1)
	jmp	(a0)
2:
	move.l	#0xbfe00000,(4,a1)
	clr.l	(8,a1)
	jmp	(a0)
1:
	fmove.l	fp1,d0
	add.l	#1,d0
	fgetman	fp0
	fmove.l	#2,fp1
	fdiv	fp1,fp0
	fmove.d	fp0,(4,a1)
	move.l	d0,(a1)
	jmp	(a0)

.cif4:
	move.l	(sp)+,a0
	fmove.l	(4,sp),fp0
	fmove.s	fp0,(4,sp)
	jmp	(a0)

.cif8:
	move.l	(sp)+,a0
	fmove.l	(4,sp),fp0
	fmove.d	fp0,(sp)
	jmp	(a0)

.cuf4:
{'fraction_non_alphanumeric': 0.20687599364069953, 'fraction_numerical': 0.10830683624801273, 'mean_word_length': 3.1976647206005, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6409037', 'n_tokens_mistral': 3532, 'n_tokens_neox': 3470, 'n_words': 635}