| 123456789101112131415161718192021222324252627282930313233343536373839 | 
/* * setjmp.S	atp. Sept. 2001 *		Jan-Benedict Glaw <jbglaw@lug-owl.de> 2006 * * Save regs and info needed for a longjmp */.globl __sigsetjmp.align 4__sigsetjmp:	.word	0x0000		/* We look after reg saving here - this	*/				/* must match longjmp.			*/	movl	0x4(%ap), %r0	/* Our scratch reg			*/	/* kenn would probably use movq here. :-)			*/	movl	%r1, 0x14(%r0)	/* save regs				*/	movl	%r2, 0x18(%r0)	movl	%r3, 0x1c(%r0)	movl	%r4, 0x20(%r0)	movl	%r5, 0x24(%r0)	movl	%r6, 0x28(%r0)	movl	%r7, 0x2c(%r0)	movl	%r8, 0x30(%r0)	movl	%r9, 0x34(%r0)	movl	%r10, 0x38(%r0)	movl	%r11, 0x3c(%r0)	/* Now save our call frame					*/	movl	(%fp), (%r0)		/* Condition handler (for VMS emulation) */	movl	0x4(%fp), 0x4(%r0)	/* psw				*/	movl	0x8(%fp), 0x8(%r0)	/* ap				*/	movl	0xc(%fp), 0xc(%r0)	/* fp				*/	movl	0x10(%fp), 0x10(%r0)	/* pc				*/	/* Call the sigjmp save routine					*/	pushl	8(%ap)	pushl	%r0	calls	$2, __sigjmp_save	/* Done								*/	ret
 |