File:  [Power 6/32 Unix Tahoe 4.2BSD] / cci / d / entry / ca124.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


/*	andl3	mask,src,dest						*/
/*	Combination = 1,2,4						*/
/*	mask	src	dest						*/
/*	----	---	----						*/
/*	1	2	4						*/
/*	1	4	2						*/
/*	2	1	4						*/
/*	2	4	1						*/
/*	4	1	2						*/
/*	4	2	1						*/
/*	where 1 = register mode						*/
/*	      2 = (register) mode					*/
/*	      3 = immidiate mode					*/
/*	      4 = longword displacement deferred mode			*/

/*									*/
/*	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	_ca124
_ca124:	callf	$4,_setjmp		/* save context */
	movab	_ca124,_stpc			/* save subtest pc */
	movl	$1,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
0:	bicpsw	$PSWMASK
	movl	base_add,r5			/*address of add_table	*/
	movl	$0x55555555,r3			/*mask			*/
	movl	$0xaaaaaaaa,src
	movl	sa,r4				/*source		*/
	movl	$-1,dest
	movl	$3,r6				/*index for destination	*/
	movl	r3,_opr				/* first operand */
	movl	r4,_opr	+ 4			/* second operand */
	movl	r5,_opr	+ 8			/* third operand */
	movl	r6,_opr	+ 12			/* fourth operand */
	andl3	r3,(r4),*l^64020(r5)[r6]
	cmpl	$0,dest
	beql	1f
er1:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	dest,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error, mode = 124	*/
1:	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
1:	callf	$4,_setjmp		/* save context */
	movab	1b,_stpc			/* save subtest pc */
	movl	$2,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
0:	movl	$0x55555555,r3			/*mask			*/
	movl	$2,r6				/*index for source	*/
	movl	$0xaaaaaaaa,src			/*source		*/
	movl	$-1,dest
	movl	da,r4				/*dest address		*/
	movl	r3,_opr				/* first operand */
	movl	r5,_opr	+ 4			/* second operand */
	movl	r6,_opr	+ 8			/* third operand */
	movl	r4,_opr	+ 12			/* fourth operand */
	andl3	r3,*l^64020(r5)[r6],(r4)
	cmpl	$0,dest
	beql	2f
er2:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	dest,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error - mode = 142	*/
2:	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
2:	callf	$4,_setjmp		/* save context */
	movab	2b,_stpc			/* save subtest pc */
	movl	$3,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
0:	movl	$0x55555555,mask
	movl	ma,r4				/*mask address		*/
	movl	$0xaaaaaaaa,r3			/*source		*/
	movl	$3,r6				/*index for destination	*/
	movl	$-1,dest
	movl	r4,_opr				/* first operand */
	movl	r3,_opr	+ 4			/* second operand */
	movl	r5,_opr	+ 8			/* third operand */
	movl	r6,_opr	+ 12			/* fourth operand */
	andl3	(r4),r3,*l^64020(r5)[r6]
	cmpl	$0,dest
	beql	3f
er3:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	dest,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error - mode =  214	*/

3:	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
3:	callf	$4,_setjmp		/* save context */
	movab	3b,_stpc			/* save subtest pc */
	movl	$4,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
0:	movl	$0x55555555,mask
	movl	ma,r4				/*mask address		*/
	movl	$-1,r3				/*destination		*/
	movl	$2,r6				/*index for source	*/
	movl	$0xaaaaaaaa,src
	movl	r4,_opr				/* first operand */
	movl	r5,_opr	+ 4			/* second operand */
	movl	r6,_opr	+ 8			/* third operand */
	movl	r3,_opr	+ 12			/* fourth operand */
	andl3	(r4),*l^64020(r5)[r6],r3
	cmpl	$0,r3
	beql	4f
er4:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error - mode = 241	*/
4:	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
4:	callf	$4,_setjmp		/* save context */
	movab	4b,_stpc			/* save subtest pc */
	movl	$5,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
	movl	$1,r6				/*index for mask	*/
0:	movl	$0x55555555,mask
	movl	$0xaaaaaaaa,r3			/*source		*/
	movl	$-1,dest
	movl	da,r4				/*destination address	*/
	movl	r5,_opr				/* first operand */
	movl	r6,_opr	+ 4			/* second operand */
	movl	r3,_opr	+ 8			/* third operand */
	movl	r4,_opr	+ 12			/* fourth operand */
	andl3	*l^64020(r5)[r6],r3,(r4)
	cmpl	$0,dest
	beql	5f
er5:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	dest,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error - mode = 412	*/
5:	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
5:	callf	$4,_setjmp		/* save context */
	movab	5b,_stpc			/* save subtest pc */
	movl	$6,_subtst			/* subtest number */
	movl	$4,_no_opr			/* number of operands used */
0:	movl	$1,r6				/*index for mask
	movl	$0x55555555,mask
	movl	$0xaaaaaaaa,src
	movl	sa,r4				/*source		*/
	movl	$-1,r3				/*dest			*/
	movl	r5,_opr				/* first operand */
	movl	r6,_opr	+ 4			/* second operand */
	movl	r4,_opr	+ 8			/* third operand */
	movl	r3,_opr	+ 12			/* fourth operand */
	andl3	*l^64020(r5)[r6],(r4),r3
	cmpl	$0,r3
	beql	6f
er6:	bbs	$0,_scoplp,0b		/* if set tight loop for scope */
	movl	$1,_ercode		/* error code  data miscompare */
	movl	r3,_actual		/* actual data */
	movl	$0,_expected		/* expected data */
	jmp	*badrtn				/*error - mode = 421	*/
6:
	bbs	$0,_force_lp,0b		/* if set loop on last subtest */
	movl	$0,_ercode
	jmp	*return				/*end of test - goto	*/
						/*monitor		*/


/* end of file	*/


unix.superglobalmegacorp.com

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