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


/*		LITERAL ADDRESSING MODE TEST				*/
/*									*/
/*									*/
/*Test name = l_mode							*/
/*This test checks the literal addressing mode. Note that literal,	*/
/*relative, immidiate, and register modes have been extensively used in */
/*the previous tests, and so part of what we do here is somewhat	*/
/*redundent.								*/
/*									*/
/*									*/
/*									*/
/*	Syst.s - Constants						*/
/*									*/
	.set	IPL,8
	.set	HIGH,31
	.set	ZERO,0
	.set	ONES,0xffffffff
	.set	N,8
	.set	Z,4
	.set	V,2
	.set	C,1
	.set	T,16
	.set	IV,32
	.set	FU,64
	.set	DV,128
	.set	PSWMASK,0x003f


	.globl	_l_mode
_l_mode:
	callf	$4,_setjmp		/* save context for error return */
	movab	_l_mode,_stpc		/* save subtest pc */
	movl	$1,_subtst		/* subtest number */
	movl	$1,_no_opr		/* number of operands used */
0:	bicpsw	$PSWMASK		/*psw = 0			*/
	movl	$1,r3			/*r3 = literal value		*/
	movl	r3,_opr			/* first operand */
	cmpl	r3,$1			/*r3 = literal value?		*/
	beql	1f			/*if yes, goto next test	*/
	movl	$1,r2			/* error code */
er1:	bbs	$0,_scoplp,0b		/* if set scope loop on error */
	movl	$1,_ercode		/* error code data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$1,_expected		/* expected data */
	jmp	*badrtn			/*error - dislay error	*/
				/*					*/
1:
	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
1:	callf	$4,_setjmp		/* save context for error return */
	movab	1b,_stpc		/* save subtest pc */
	movl	$2,_subtst		/* subtest number */
	movl	$1,_no_opr		/* number of operands used */
0:	bicpsw	$PSWMASK		/*psw = 0			*/
	movl	$18,r3			/*r3 = literal value		*/
	movl	r3,_opr			/* first operand */
	cmpl	r3,$18			/*r3 = literal value?		*/
	beql	2f			/*if yes, goto next test	*/
er2:	bbs	$0,_scoplp,0b		/* if set scope loop on error */
	movl	$1,_ercode		/* error code data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$18,_expected		/* expected data */
	jmp	*badrtn			/*error - dislay error	*/
				/*					*/
2:
	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
2:	callf	$4,_setjmp		/* save context for error return */
	movab	2b,_stpc		/* save subtest pc */
	movl	$3,_subtst		/* subtest number */
	movl	$1,_no_opr		/* number of operands used */
0:	bicpsw	$PSWMASK		/*psw = 0			*/
	movl	$36,r3			/*r3 = literal value		*/
	movl	r3,_opr			/* first operand */
	cmpl	r3,$36			/*r3 = literal value?		*/
	beql	3f			/*if yes, goto next test	*/
er3:	bbs	$0,_scoplp,0b		/* if set scope loop on error */
	movl	$1,_ercode		/* error code data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$36,_expected		/* expected data */
	jmp	*badrtn			/*error - dislay error	*/
				/*					*/
3:
	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
3:	callf	$4,_setjmp		/* save context for error return */
	movab	3b,_stpc		/* save subtest pc */
	movl	$4,_subtst		/* subtest number */
	movl	$1,_no_opr		/* number of operands used */
0:	bicpsw	$PSWMASK		/*psw = 0			*/
	movl	$63,r3			/*r3 = literal value		*/
	movl	r3,_opr			/* first operand */
	cmpl	r3,$63			/*r3 = literal value?		*/
	beql	4f			/*if yes, goto next test	*/
er4:	bbs	$0,_scoplp,0b		/* if set scope loop on error */
	movl	$1,_ercode		/* error code data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$36,_expected		/* expected data */
	jmp	*badrtn			/*error - dislay error	*/
				/*					*/
4:
	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
	movl	$0,_ercode			/* no error */
	jmp	*return		/*end of test - goto monitor		*/




unix.superglobalmegacorp.com

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