diff options
Diffstat (limited to 'libc/sysdeps/i386/rshift.S')
-rw-r--r-- | libc/sysdeps/i386/rshift.S | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/libc/sysdeps/i386/rshift.S b/libc/sysdeps/i386/rshift.S index 81af68dd7..5f4122712 100644 --- a/libc/sysdeps/i386/rshift.S +++ b/libc/sysdeps/i386/rshift.S @@ -18,18 +18,15 @@ #include "sysdep.h" #include "asm-syntax.h" -#include "bp-sym.h" -#include "bp-asm.h" -#define PARMS LINKAGE+12 /* space for 3 saved regs */ +#define PARMS 4+12 /* space for 3 saved regs */ #define RES PARMS -#define S RES+PTR_SIZE -#define SIZE S+PTR_SIZE +#define S RES+4 +#define SIZE S+4 #define CNT SIZE+4 .text -ENTRY (BP_SYM (__mpn_rshift)) - ENTER +ENTRY (__mpn_rshift) pushl %edi cfi_adjust_cfa_offset (4) @@ -44,12 +41,6 @@ ENTRY (BP_SYM (__mpn_rshift)) cfi_rel_offset (esi, 4) movl SIZE(%esp),%edx movl CNT(%esp),%ecx -#if __BOUNDED_POINTERS__ - shll $2, %edx /* convert limbs to bytes */ - CHECK_BOUNDS_BOTH_WIDE (%edi, RES(%esp), %edx) - CHECK_BOUNDS_BOTH_WIDE (%esi, S(%esp), %edx) - shrl $2, %edx -#endif leal -4(%edi,%edx,4),%edi leal (%esi,%edx,4),%esi negl %edx @@ -94,7 +85,6 @@ L(1): movl (%esi,%edx,4),%eax cfi_adjust_cfa_offset (-4) cfi_restore (edi) - LEAVE ret cfi_restore_state @@ -111,6 +101,5 @@ L(end): shrl %cl,%ebx /* compute most significant limb */ cfi_adjust_cfa_offset (-4) cfi_restore (edi) - LEAVE ret -END (BP_SYM (__mpn_rshift)) +END (__mpn_rshift) |