rm86unix.cpp

来自「openssl是ssl的开源项目」· C++ 代码 · 共 2,017 行 · 第 1/3 页

CPP
2,017
字号
/* Run the C pre-processor over this file with one of the following defined * ELF - elf object files, * OUT - a.out object files, * BSDI - BSDI style a.out object files * SOL - Solaris style elf */#define TYPE(a,b)       .type   a,b#define SIZE(a,b)       .size   a,b#if defined(OUT) || defined(BSDI)#define ripemd160_block_x86 _ripemd160_block_x86#endif#ifdef OUT#define OK	1#define ALIGN	4#endif#ifdef BSDI#define OK              1#define ALIGN           4#undef SIZE#undef TYPE#define SIZE(a,b)#define TYPE(a,b)#endif#if defined(ELF) || defined(SOL)#define OK              1#define ALIGN           16#endif#ifndef OKYou need to define one ofELF - elf systems - linux-elf, NetBSD and DG-UXOUT - a.out systems - linux-a.out and FreeBSDSOL - solaris systems, which are elf with strange comment linesBSDI - a.out with a very primative version of as.#endif/* Let the Assembler begin :-) */	/* Don't even think of reading this code */	/* It was automatically generated by rmd-586.pl */	/* Which is a perl program used to generate the x86 assember for */	/* any of elf, a.out, BSDI,Win32, or Solaris */	/* eric <eay@cryptsoft.com> */	.file	"rmd-586.s"	.version	"01.01"gcc2_compiled.:.text	.align ALIGN.globl ripemd160_block_x86	TYPE(ripemd160_block_x86,@function)ripemd160_block_x86:	pushl	%esi	movl	16(%esp),	%ecx	pushl	%edi	movl	16(%esp),	%esi	pushl	%ebp	addl	%esi,		%ecx	pushl	%ebx	subl	$64,		%ecx	subl	$88,		%esp	movl	%ecx,		(%esp)	movl	108(%esp),	%edi.L000start:	movl	(%esi),		%eax	movl	4(%esi),	%ebx	movl	%eax,		4(%esp)	movl	%ebx,		8(%esp)	movl	8(%esi),	%eax	movl	12(%esi),	%ebx	movl	%eax,		12(%esp)	movl	%ebx,		16(%esp)	movl	16(%esi),	%eax	movl	20(%esi),	%ebx	movl	%eax,		20(%esp)	movl	%ebx,		24(%esp)	movl	24(%esi),	%eax	movl	28(%esi),	%ebx	movl	%eax,		28(%esp)	movl	%ebx,		32(%esp)	movl	32(%esi),	%eax	movl	36(%esi),	%ebx	movl	%eax,		36(%esp)	movl	%ebx,		40(%esp)	movl	40(%esi),	%eax	movl	44(%esi),	%ebx	movl	%eax,		44(%esp)	movl	%ebx,		48(%esp)	movl	48(%esi),	%eax	movl	52(%esi),	%ebx	movl	%eax,		52(%esp)	movl	%ebx,		56(%esp)	movl	56(%esi),	%eax	movl	60(%esi),	%ebx	movl	%eax,		60(%esp)	movl	%ebx,		64(%esp)	addl	$64,		%esi	movl	(%edi),		%eax	movl	%esi,		112(%esp)	movl	4(%edi),	%ebx	movl	8(%edi),	%ecx	movl	12(%edi),	%edx	movl	16(%edi),	%ebp	/* 0 */	movl	%ecx,		%esi	xorl	%edx,		%esi	movl	4(%esp),	%edi	xorl	%ebx,		%esi	addl	%edi,		%eax	roll	$10,		%ecx	addl	%esi,		%eax	movl	%ebx,		%esi	roll	$11,		%eax	addl	%ebp,		%eax	/* 1 */	xorl	%ecx,		%esi	movl	8(%esp),	%edi	xorl	%eax,		%esi	addl	%esi,		%ebp	movl	%eax,		%esi	roll	$10,		%ebx	addl	%edi,		%ebp	xorl	%ebx,		%esi	roll	$14,		%ebp	addl	%edx,		%ebp	/* 2 */	movl	12(%esp),	%edi	xorl	%ebp,		%esi	addl	%edi,		%edx	roll	$10,		%eax	addl	%esi,		%edx	movl	%ebp,		%esi	roll	$15,		%edx	addl	%ecx,		%edx	/* 3 */	xorl	%eax,		%esi	movl	16(%esp),	%edi	xorl	%edx,		%esi	addl	%esi,		%ecx	movl	%edx,		%esi	roll	$10,		%ebp	addl	%edi,		%ecx	xorl	%ebp,		%esi	roll	$12,		%ecx	addl	%ebx,		%ecx	/* 4 */	movl	20(%esp),	%edi	xorl	%ecx,		%esi	addl	%edi,		%ebx	roll	$10,		%edx	addl	%esi,		%ebx	movl	%ecx,		%esi	roll	$5,		%ebx	addl	%eax,		%ebx	/* 5 */	xorl	%edx,		%esi	movl	24(%esp),	%edi	xorl	%ebx,		%esi	addl	%esi,		%eax	movl	%ebx,		%esi	roll	$10,		%ecx	addl	%edi,		%eax	xorl	%ecx,		%esi	roll	$8,		%eax	addl	%ebp,		%eax	/* 6 */	movl	28(%esp),	%edi	xorl	%eax,		%esi	addl	%edi,		%ebp	roll	$10,		%ebx	addl	%esi,		%ebp	movl	%eax,		%esi	roll	$7,		%ebp	addl	%edx,		%ebp	/* 7 */	xorl	%ebx,		%esi	movl	32(%esp),	%edi	xorl	%ebp,		%esi	addl	%esi,		%edx	movl	%ebp,		%esi	roll	$10,		%eax	addl	%edi,		%edx	xorl	%eax,		%esi	roll	$9,		%edx	addl	%ecx,		%edx	/* 8 */	movl	36(%esp),	%edi	xorl	%edx,		%esi	addl	%edi,		%ecx	roll	$10,		%ebp	addl	%esi,		%ecx	movl	%edx,		%esi	roll	$11,		%ecx	addl	%ebx,		%ecx	/* 9 */	xorl	%ebp,		%esi	movl	40(%esp),	%edi	xorl	%ecx,		%esi	addl	%esi,		%ebx	movl	%ecx,		%esi	roll	$10,		%edx	addl	%edi,		%ebx	xorl	%edx,		%esi	roll	$13,		%ebx	addl	%eax,		%ebx	/* 10 */	movl	44(%esp),	%edi	xorl	%ebx,		%esi	addl	%edi,		%eax	roll	$10,		%ecx	addl	%esi,		%eax	movl	%ebx,		%esi	roll	$14,		%eax	addl	%ebp,		%eax	/* 11 */	xorl	%ecx,		%esi	movl	48(%esp),	%edi	xorl	%eax,		%esi	addl	%esi,		%ebp	movl	%eax,		%esi	roll	$10,		%ebx	addl	%edi,		%ebp	xorl	%ebx,		%esi	roll	$15,		%ebp	addl	%edx,		%ebp	/* 12 */	movl	52(%esp),	%edi	xorl	%ebp,		%esi	addl	%edi,		%edx	roll	$10,		%eax	addl	%esi,		%edx	movl	%ebp,		%esi	roll	$6,		%edx	addl	%ecx,		%edx	/* 13 */	xorl	%eax,		%esi	movl	56(%esp),	%edi	xorl	%edx,		%esi	addl	%esi,		%ecx	movl	%edx,		%esi	roll	$10,		%ebp	addl	%edi,		%ecx	xorl	%ebp,		%esi	roll	$7,		%ecx	addl	%ebx,		%ecx	/* 14 */	movl	60(%esp),	%edi	xorl	%ecx,		%esi	addl	%edi,		%ebx	roll	$10,		%edx	addl	%esi,		%ebx	movl	%ecx,		%esi	roll	$9,		%ebx	addl	%eax,		%ebx	/* 15 */	xorl	%edx,		%esi	movl	64(%esp),	%edi	xorl	%ebx,		%esi	addl	%esi,		%eax	movl	$-1,		%esi	roll	$10,		%ecx	addl	%edi,		%eax	movl	32(%esp),	%edi	roll	$8,		%eax	addl	%ebp,		%eax	/* 16 */	addl	%edi,		%ebp	movl	%ebx,		%edi	subl	%eax,		%esi	andl	%eax,		%edi	andl	%ecx,		%esi	orl	%esi,		%edi	movl	20(%esp),	%esi	roll	$10,		%ebx	leal	1518500249(%ebp,%edi,1),%ebp	movl	$-1,		%edi	roll	$7,		%ebp	addl	%edx,		%ebp	/* 17 */	addl	%esi,		%edx	movl	%eax,		%esi	subl	%ebp,		%edi	andl	%ebp,		%esi	andl	%ebx,		%edi	orl	%edi,		%esi	movl	56(%esp),	%edi	roll	$10,		%eax	leal	1518500249(%edx,%esi,1),%edx	movl	$-1,		%esi	roll	$6,		%edx	addl	%ecx,		%edx	/* 18 */	addl	%edi,		%ecx	movl	%ebp,		%edi	subl	%edx,		%esi	andl	%edx,		%edi	andl	%eax,		%esi	orl	%esi,		%edi	movl	8(%esp),	%esi	roll	$10,		%ebp	leal	1518500249(%ecx,%edi,1),%ecx	movl	$-1,		%edi	roll	$8,		%ecx	addl	%ebx,		%ecx	/* 19 */	addl	%esi,		%ebx	movl	%edx,		%esi	subl	%ecx,		%edi	andl	%ecx,		%esi	andl	%ebp,		%edi	orl	%edi,		%esi	movl	44(%esp),	%edi	roll	$10,		%edx	leal	1518500249(%ebx,%esi,1),%ebx	movl	$-1,		%esi	roll	$13,		%ebx	addl	%eax,		%ebx	/* 20 */	addl	%edi,		%eax	movl	%ecx,		%edi	subl	%ebx,		%esi	andl	%ebx,		%edi	andl	%edx,		%esi	orl	%esi,		%edi	movl	28(%esp),	%esi	roll	$10,		%ecx	leal	1518500249(%eax,%edi,1),%eax	movl	$-1,		%edi	roll	$11,		%eax	addl	%ebp,		%eax	/* 21 */	addl	%esi,		%ebp	movl	%ebx,		%esi	subl	%eax,		%edi	andl	%eax,		%esi	andl	%ecx,		%edi	orl	%edi,		%esi	movl	64(%esp),	%edi	roll	$10,		%ebx	leal	1518500249(%ebp,%esi,1),%ebp	movl	$-1,		%esi	roll	$9,		%ebp	addl	%edx,		%ebp	/* 22 */	addl	%edi,		%edx	movl	%eax,		%edi	subl	%ebp,		%esi	andl	%ebp,		%edi	andl	%ebx,		%esi	orl	%esi,		%edi	movl	16(%esp),	%esi	roll	$10,		%eax	leal	1518500249(%edx,%edi,1),%edx	movl	$-1,		%edi	roll	$7,		%edx	addl	%ecx,		%edx	/* 23 */	addl	%esi,		%ecx	movl	%ebp,		%esi	subl	%edx,		%edi	andl	%edx,		%esi	andl	%eax,		%edi	orl	%edi,		%esi	movl	52(%esp),	%edi	roll	$10,		%ebp	leal	1518500249(%ecx,%esi,1),%ecx	movl	$-1,		%esi	roll	$15,		%ecx	addl	%ebx,		%ecx	/* 24 */	addl	%edi,		%ebx	movl	%edx,		%edi	subl	%ecx,		%esi	andl	%ecx,		%edi	andl	%ebp,		%esi	orl	%esi,		%edi	movl	4(%esp),	%esi	roll	$10,		%edx	leal	1518500249(%ebx,%edi,1),%ebx	movl	$-1,		%edi	roll	$7,		%ebx	addl	%eax,		%ebx	/* 25 */	addl	%esi,		%eax	movl	%ecx,		%esi	subl	%ebx,		%edi	andl	%ebx,		%esi	andl	%edx,		%edi	orl	%edi,		%esi	movl	40(%esp),	%edi	roll	$10,		%ecx	leal	1518500249(%eax,%esi,1),%eax	movl	$-1,		%esi	roll	$12,		%eax	addl	%ebp,		%eax	/* 26 */	addl	%edi,		%ebp	movl	%ebx,		%edi	subl	%eax,		%esi	andl	%eax,		%edi	andl	%ecx,		%esi	orl	%esi,		%edi	movl	24(%esp),	%esi	roll	$10,		%ebx	leal	1518500249(%ebp,%edi,1),%ebp	movl	$-1,		%edi	roll	$15,		%ebp	addl	%edx,		%ebp	/* 27 */	addl	%esi,		%edx	movl	%eax,		%esi	subl	%ebp,		%edi	andl	%ebp,		%esi	andl	%ebx,		%edi	orl	%edi,		%esi	movl	12(%esp),	%edi	roll	$10,		%eax	leal	1518500249(%edx,%esi,1),%edx	movl	$-1,		%esi	roll	$9,		%edx	addl	%ecx,		%edx	/* 28 */	addl	%edi,		%ecx	movl	%ebp,		%edi	subl	%edx,		%esi	andl	%edx,		%edi	andl	%eax,		%esi	orl	%esi,		%edi	movl	60(%esp),	%esi	roll	$10,		%ebp	leal	1518500249(%ecx,%edi,1),%ecx	movl	$-1,		%edi	roll	$11,		%ecx	addl	%ebx,		%ecx	/* 29 */	addl	%esi,		%ebx	movl	%edx,		%esi	subl	%ecx,		%edi	andl	%ecx,		%esi	andl	%ebp,		%edi	orl	%edi,		%esi	movl	48(%esp),	%edi	roll	$10,		%edx	leal	1518500249(%ebx,%esi,1),%ebx	movl	$-1,		%esi	roll	$7,		%ebx	addl	%eax,		%ebx	/* 30 */	addl	%edi,		%eax	movl	%ecx,		%edi	subl	%ebx,		%esi	andl	%ebx,		%edi	andl	%edx,		%esi	orl	%esi,		%edi	movl	36(%esp),	%esi	roll	$10,		%ecx	leal	1518500249(%eax,%edi,1),%eax	movl	$-1,		%edi	roll	$13,		%eax	addl	%ebp,		%eax	/* 31 */	addl	%esi,		%ebp	movl	%ebx,		%esi	subl	%eax,		%edi	andl	%eax,		%esi	andl	%ecx,		%edi	orl	%edi,		%esi	movl	$-1,		%edi	roll	$10,		%ebx	leal	1518500249(%ebp,%esi,1),%ebp	subl	%eax,		%edi	roll	$12,		%ebp	addl	%edx,		%ebp	/* 32 */	movl	16(%esp),	%esi	orl	%ebp,		%edi	addl	%esi,		%edx	xorl	%ebx,		%edi	movl	$-1,		%esi	roll	$10,		%eax	leal	1859775393(%edx,%edi,1),%edx	subl	%ebp,		%esi	roll	$11,		%edx	addl	%ecx,		%edx	/* 33 */	movl	44(%esp),	%edi	orl	%edx,		%esi	addl	%edi,		%ecx	xorl	%eax,		%esi	movl	$-1,		%edi	roll	$10,		%ebp	leal	1859775393(%ecx,%esi,1),%ecx	subl	%edx,		%edi	roll	$13,		%ecx	addl	%ebx,		%ecx	/* 34 */	movl	60(%esp),	%esi	orl	%ecx,		%edi	addl	%esi,		%ebx	xorl	%ebp,		%edi	movl	$-1,		%esi	roll	$10,		%edx	leal	1859775393(%ebx,%edi,1),%ebx	subl	%ecx,		%esi	roll	$6,		%ebx	addl	%eax,		%ebx	/* 35 */	movl	20(%esp),	%edi	orl	%ebx,		%esi	addl	%edi,		%eax	xorl	%edx,		%esi	movl	$-1,		%edi	roll	$10,		%ecx	leal	1859775393(%eax,%esi,1),%eax	subl	%ebx,		%edi	roll	$7,		%eax	addl	%ebp,		%eax	/* 36 */	movl	40(%esp),	%esi	orl	%eax,		%edi	addl	%esi,		%ebp	xorl	%ecx,		%edi	movl	$-1,		%esi	roll	$10,		%ebx	leal	1859775393(%ebp,%edi,1),%ebp	subl	%eax,		%esi	roll	$14,		%ebp	addl	%edx,		%ebp	/* 37 */	movl	64(%esp),	%edi	orl	%ebp,		%esi	addl	%edi,		%edx	xorl	%ebx,		%esi	movl	$-1,		%edi	roll	$10,		%eax	leal	1859775393(%edx,%esi,1),%edx	subl	%ebp,		%edi	roll	$9,		%edx	addl	%ecx,		%edx	/* 38 */	movl	36(%esp),	%esi	orl	%edx,		%edi	addl	%esi,		%ecx	xorl	%eax,		%edi	movl	$-1,		%esi	roll	$10,		%ebp	leal	1859775393(%ecx,%edi,1),%ecx	subl	%edx,		%esi	roll	$13,		%ecx	addl	%ebx,		%ecx	/* 39 */	movl	8(%esp),	%edi	orl	%ecx,		%esi	addl	%edi,		%ebx	xorl	%ebp,		%esi	movl	$-1,		%edi	roll	$10,		%edx	leal	1859775393(%ebx,%esi,1),%ebx	subl	%ecx,		%edi	roll	$15,		%ebx	addl	%eax,		%ebx	/* 40 */	movl	12(%esp),	%esi	orl	%ebx,		%edi	addl	%esi,		%eax	xorl	%edx,		%edi	movl	$-1,		%esi	roll	$10,		%ecx	leal	1859775393(%eax,%edi,1),%eax	subl	%ebx,		%esi	roll	$14,		%eax	addl	%ebp,		%eax	/* 41 */	movl	32(%esp),	%edi	orl	%eax,		%esi	addl	%edi,		%ebp	xorl	%ecx,		%esi	movl	$-1,		%edi	roll	$10,		%ebx	leal	1859775393(%ebp,%esi,1),%ebp	subl	%eax,		%edi	roll	$8,		%ebp	addl	%edx,		%ebp	/* 42 */	movl	4(%esp),	%esi	orl	%ebp,		%edi	addl	%esi,		%edx	xorl	%ebx,		%edi	movl	$-1,		%esi	roll	$10,		%eax	leal	1859775393(%edx,%edi,1),%edx	subl	%ebp,		%esi	roll	$13,		%edx	addl	%ecx,		%edx	/* 43 */	movl	28(%esp),	%edi	orl	%edx,		%esi	addl	%edi,		%ecx	xorl	%eax,		%esi	movl	$-1,		%edi	roll	$10,		%ebp	leal	1859775393(%ecx,%esi,1),%ecx	subl	%edx,		%edi	roll	$6,		%ecx	addl	%ebx,		%ecx	/* 44 */	movl	56(%esp),	%esi	orl	%ecx,		%edi	addl	%esi,		%ebx	xorl	%ebp,		%edi	movl	$-1,		%esi	roll	$10,		%edx	leal	1859775393(%ebx,%edi,1),%ebx	subl	%ecx,		%esi	roll	$5,		%ebx	addl	%eax,		%ebx	/* 45 */	movl	48(%esp),	%edi	orl	%ebx,		%esi	addl	%edi,		%eax	xorl	%edx,		%esi	movl	$-1,		%edi	roll	$10,		%ecx	leal	1859775393(%eax,%esi,1),%eax	subl	%ebx,		%edi	roll	$12,		%eax	addl	%ebp,		%eax	/* 46 */	movl	24(%esp),	%esi	orl	%eax,		%edi	addl	%esi,		%ebp	xorl	%ecx,		%edi	movl	$-1,		%esi	roll	$10,		%ebx	leal	1859775393(%ebp,%edi,1),%ebp	subl	%eax,		%esi	roll	$7,		%ebp	addl	%edx,		%ebp	/* 47 */	movl	52(%esp),	%edi	orl	%ebp,		%esi	addl	%edi,		%edx	xorl	%ebx,		%esi	movl	$-1,		%edi	roll	$10,		%eax	leal	1859775393(%edx,%esi,1),%edx	movl	%eax,		%esi	roll	$5,		%edx	addl	%ecx,		%edx	/* 48 */	subl	%eax,		%edi	andl	%edx,		%esi	andl	%ebp,		%edi	orl	%esi,		%edi	movl	8(%esp),	%esi	roll	$10,		%ebp	leal	2400959708(%ecx,%edi,),%ecx	movl	$-1,		%edi	addl	%esi,		%ecx	movl	%ebp,		%esi	roll	$11,		%ecx	addl	%ebx,		%ecx	/* 49 */	subl	%ebp,		%edi	andl	%ecx,		%esi	andl	%edx,		%edi	orl	%esi,		%edi

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?