File:  [Power 6/32 Unix Tahoe 4.2BSD] / cci / d / entry / breq.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Sun Jul 28 12:24:19 2019 UTC (7 years ago) by root
Branches: bsd, MAIN
CVS tags: v12b, v121, HEAD
Power 6/32 Unix version 1.2b


/*
	Testing BEQL, NEQL
*/

	.globl	_breq
_breq:
	callf	$4,_setjmp	/* save context for return from error */
	movab	_breq,_stpc	/* save address of subtest */
	movl	$1,_subtst	/* subtest number */
	movl	$0,_no_opr	/* branch test no operands */
0:	movl	$0,r3		/* R3 = 0; Z falg should be set */
	beql	next1
	movpsl	_actual		/* actual = psl */
	bbs	$0,_scoplp,0b	/* if set loop on error */
	movl	$2,_ercode	/* error code data miscompare */
	jmp	*badrtn			/* Error : beql does not work !! */
next1:
	bbs	$0,_force_lp,0b	/* if set loop on last subtest */
b2:	callf	$4,_setjmp	/* save context for return from error */
	movab	b2,_stpc	/* save address of subtest */
	movl	$2,_subtst	/* subtest number */
0:	movl	$1,r3		/* R3 != 0; Z flag should not be set */
	beql	next2
	bneq	cont1		/* BEQL works if program is here !! */
	movpsl	_actual		/* actual = psl */
	bbs	$0,_scoplp,0b	/* if set loop on error */
	movl	$2,_ercode	/* error code data miscompare */
	jmp	*badrtn			/* Error : beql does not work !! */
next2:
	movpsl	_actual		/* actual = psl */
	bbs	$0,_scoplp,0b	/* if set loop on error */
	movl	$2,_ercode	/* error code data miscompare */
	jmp	*badrtn			/* Error : beql does not work !! */

cont1:
	bbs	$0,_force_lp,0b	/* if set loop on last subtest */
b3:	callf	$4,_setjmp	/* save context for return from error */
	movab	b3,_stpc	/* save address of subtest */
	movl	$3,_subtst	/* subtest number */
0:	movl	$0,r3		/* R3 = 0; Z flag should be set */
	bneq	cont2		/* Should not take branch !! */
	bbs	$0,_force_lp,0b	/* if set loop on last subtest */
	jmp	*return		/*  BNEQ work !!  Keep looping */
cont2:
	movpsl	_actual		/* actual = psl */
	bbs	$0,_scoplp,0b	/* if set loop on error */
	movl	$2,_ercode	/* error code data miscompare */
	movl	r3,_actual	/* actual data */
	movl	$0,_expected	/* expected data */
	jmp	*badrtn			/* Error : beql does not work !! */


unix.superglobalmegacorp.com

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