aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/add_n.S
diff options
context:
space:
mode:
authorGreg McGary <greg@mcgary.org>2000-06-30 21:35:52 +0000
committerGreg McGary <greg@mcgary.org>2000-06-30 21:35:52 +0000
commitfa87f4037711e92c52965e87a83c60f270292dc0 (patch)
treedd90b952e4f46f3fa4d1b36a51a05a03a960d422 /sysdeps/powerpc/add_n.S
parentdbda6079a64a9dbc6dfb24280af01e871e6f7de5 (diff)
downloadglibc-fa87f4037711e92c52965e87a83c60f270292dc0.tar
glibc-fa87f4037711e92c52965e87a83c60f270292dc0.tar.gz
glibc-fa87f4037711e92c52965e87a83c60f270292dc0.tar.bz2
glibc-fa87f4037711e92c52965e87a83c60f270292dc0.zip
* sysdeps/powerpc/bp-asm.h: New file.
* sysdeps/powerpc/__longjmp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/powerpc/bsd-_setjmp.S: Likewise. * sysdeps/powerpc/bsd-setjmp.S: Likewise. * sysdeps/powerpc/setjmp.S: Likewise. * sysdeps/powerpc/add_n.S: Likewise. * sysdeps/powerpc/addmul_1.S: Likewise. * sysdeps/powerpc/lshift.S: Likewise. * sysdeps/powerpc/rshift.S: Likewise. * sysdeps/powerpc/mul_1.S: Likewise. * sysdeps/powerpc/sub_n.S: Likewise. * sysdeps/powerpc/submul_1.S: Likewise. * sysdeps/powerpc/strlen.S: Likewise. * sysdeps/powerpc/memset.S: Likewise. * sysdeps/powerpc/stpcpy.S: Likewise. * sysdeps/powerpc/strcmp.S: Likewise. * sysdeps/powerpc/strcpy.S: Likewise. * sysdeps/powerpc/elf/bzero.S: Likewise. * sysdeps/powerpc/bp-asm.h: New file. * sysdeps/powerpc/__longjmp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/powerpc/bsd-_setjmp.S: Likewise. * sysdeps/powerpc/bsd-setjmp.S: Likewise. * sysdeps/powerpc/setjmp.S: Likewise. * sysdeps/powerpc/add_n.S: Likewise. * sysdeps/powerpc/addmul_1.S: Likewise. * sysdeps/powerpc/lshift.S: Likewise. * sysdeps/powerpc/rshift.S: Likewise. * sysdeps/powerpc/mul_1.S: Likewise. * sysdeps/powerpc/sub_n.S: Likewise. * sysdeps/powerpc/submul_1.S: Likewise. * sysdeps/powerpc/strlen.S: Likewise. * sysdeps/powerpc/memset.S: Likewise. * sysdeps/powerpc/stpcpy.S: Likewise. * sysdeps/powerpc/strcmp.S: Likewise. * sysdeps/powerpc/strcpy.S: Likewise. * sysdeps/powerpc/elf/bzero.S: Likewise.
Diffstat (limited to 'sysdeps/powerpc/add_n.S')
-rw-r--r--sysdeps/powerpc/add_n.S13
1 files changed, 11 insertions, 2 deletions
diff --git a/sysdeps/powerpc/add_n.S b/sysdeps/powerpc/add_n.S
index 7b683b7be4..468d422621 100644
--- a/sysdeps/powerpc/add_n.S
+++ b/sysdeps/powerpc/add_n.S
@@ -18,6 +18,8 @@
Boston, MA 02111-1307, USA. */
#include <sysdep.h>
+#include <bp-sym.h>
+#include <bp-asm.h>
/* mp_limb_t mpn_add_n (mp_ptr res_ptr, mp_srcptr s1_ptr, mp_srcptr s2_ptr,
mp_size_t size)
@@ -27,7 +29,14 @@
possible 2-unrolled inner loop will not be. Also, watch out for the
alignment... */
-EALIGN(__mpn_add_n,3,0)
+EALIGN (BP_SYM (__mpn_add_n), 3, 0)
+
+#if __BOUNDED_POINTERS__
+ slwi r10,r6,2 /* convert limbs to bytes */
+ CHECK_BOUNDS_BOTH_WIDE (r3, r8, r9, r10)
+ CHECK_BOUNDS_BOTH_WIDE (r4, r8, r9, r10)
+ CHECK_BOUNDS_BOTH_WIDE (r5, r8, r9, r10)
+#endif
/* Set up for loop below. */
mtcrf 0x01,r6
srwi. r7,r6,1
@@ -65,4 +74,4 @@ L(0): lwz r9,4(r4)
/* Return the carry. */
L(1): addze r3,r10
blr
-END(__mpn_add_n)
+END (BP_SYM (__mpn_add_n))