--- pgp/src/80386.s 2018/04/24 16:38:20 1.1.1.2 +++ pgp/src/80386.s 2018/04/24 16:39:04 1.1.1.3 @@ -11,13 +11,13 @@ ** */ -#if defined(__GNUC__) || defined(__ASSEMBLER__) +#ifndef SYSV #ifdef __STDC__ #define ENTRY(name) .align 4 ; .globl _##name ; _##name: #else #define ENTRY(name) .align 4 ; .globl _/**/name ; _/**/name: #endif -#else /* !__GNUC__ */ +#else /* SYSV */ #define ENTRY(name) .align 4 ; .globl name ; name: #endif @@ -337,17 +337,31 @@ ENTRY (p_quo_digit) movl _mshift,%ecx cmpl $32,_mshift - je 2f + je L2 +#if 0 + shrl %cl,%eax + movl %edx,%ebx + shrl %cl,%edx + negl %ecx + addl $32,%ecx + shll %cl,%ebx + addl %ebx,%eax /* dx:ax = q >> mshift */ +#else +#ifdef SYSV + shrdl %edx,%eax +#else shrdl %cl,%edx,%eax +#endif shrl %cl,%edx +#endif orl %edx,%edx - je 1f + je L1 movl $-1,%eax - jmp 1f -2: + jmp L1 +L2: xchgl %edx,%eax -1: +L1: popl %edi popl %esi popl %ebx