]> git.saurik.com Git - apple/security.git/blobdiff - Security/libsecurity_cryptkit/lib/giantPort_i486.h
Security-57336.1.9.tar.gz
[apple/security.git] / Security / libsecurity_cryptkit / lib / giantPort_i486.h
diff --git a/Security/libsecurity_cryptkit/lib/giantPort_i486.h b/Security/libsecurity_cryptkit/lib/giantPort_i486.h
deleted file mode 100644 (file)
index b0e74f7..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-/* Copyright (c) 1998,2011,2014 Apple Inc.  All Rights Reserved.
- *
- * NOTICE: USE OF THE MATERIALS ACCOMPANYING THIS NOTICE IS SUBJECT
- * TO THE TERMS OF THE SIGNED "FAST ELLIPTIC ENCRYPTION (FEE) REFERENCE
- * SOURCE CODE EVALUATION AGREEMENT" BETWEEN APPLE, INC. AND THE
- * ORIGINAL LICENSEE THAT OBTAINED THESE MATERIALS FROM APPLE,
- * INC.  ANY USE OF THESE MATERIALS NOT PERMITTED BY SUCH AGREEMENT WILL
- * EXPOSE YOU TO LIABILITY.
- ***************************************************************************
- *
- * giantPorti486.h - OpenStep-dependent giant definitions.
- *
- * Revision History
- * ----------------
- * 06 Apr 1998 at Apple
- *     Created.
- */
-
-#ifndef        _CK_NSGIANT_PORT_I486_H_
-#define _CK_NSGIANT_PORT_I486_H_
-
-#include "giantIntegers.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Add two digits, return sum. Carry bit returned as an out parameter.
- */
-static inline giantDigit giantAddDigits(
-       giantDigit dig1,
-       giantDigit dig2,
-       giantDigit *carry)      /* RETURNED, 0 or 1 */
-{
-       giantDigit _sum;        /* r/w %0 */
-       asm volatile(
-               "movl %2, %0    /* _sum = dig1 */       \n"
-               "addl %3, %0    /* _sum += dig2 */      \n"
-               "jc .+9                                 \n"
-               "movl $0, %1    /* carry = 0 */         \n"
-               "jmp .+7                                \n"
-               "movl $1, %1    /* carry = 1 */         \n"
-               : "=&r" (_sum), "=&r" (*carry)
-               : "r" (dig1), "r" (dig2));
-       return _sum;
-}
-
-/*
- * Add a single digit value to a double digit accumulator in place.
- * Carry out of the MSD of the accumulator is not handled.
- */
-static inline void giantAddDouble(
-       giantDigit *accLow,             /* IN/OUT */
-       giantDigit *accHigh,            /* IN/OUT */
-       giantDigit val)
-{
-       asm volatile(
-               "addl %4, %0    /* accLow += val */     \n"
-               "jnc .+3                                \n"
-               "incl %1        /* accHigh++ */         \n"
-               : "=&r" (*accLow), "=&r" (*accHigh)
-               : "0" (*accLow), "1" (*accHigh), "r" (val));
-}
-
-/*
- * Subtract a - b, return difference. Borrow bit returned as an out parameter.
- */
-static inline giantDigit giantSubDigits(
-       giantDigit a,
-       giantDigit b,
-       giantDigit *borrow)             /* RETURNED, 0 or 1 */
-{
-       giantDigit _diff;       /* r/w %0 */
-       asm volatile(
-               "movl %2, %0    /* _diff = a */         \n"
-               "subl %3, %0    /* _diff -= b */        \n"
-               "jc .+9                                 \n"
-               "movl $0, %1    /* borrow = 0 */        \n"
-               "jmp .+7                                \n"
-               "movl $1, %1    /* borrow = 1 */        \n"
-               : "=&r" (_diff), "=&r" (*borrow)
-               : "r" (a), "r" (b));
-       return _diff;
-}
-
-/*
- * Multiply two digits, return two digits.
- */
-static inline void giantMulDigits(
-       giantDigit      dig1,
-       giantDigit      dig2,
-       giantDigit      *lowProduct,    // RETURNED, low digit
-       giantDigit      *hiProduct)     // RETURNED, high digit
-
-{
-       asm volatile(
-               "movl %2, %%eax /* eax = dig1 */        \n"
-               "movl %3, %%edx /* edx = dig2 */        \n"
-               "mull %%edx     /* eax *= dig2 */       \n"
-               : "=&a" (*lowProduct), "=&d" (*hiProduct)
-               : "r" (dig1), "r" (dig2)
-               : "%eax", "%edx" );
-}
-
-/*
- * Multiply a vector of giantDigits, candVector, by a single giantDigit,
- * plierDigit, adding results into prodVector. Returns m.s. digit from
- * final multiply; only candLength digits of *prodVector will be written.
- *
- * This one's implemented in a .s file.
- */
-extern giantDigit vectorMult_x86(
-       giantDigit plierDigit,
-       giantDigit *candVector,
-       unsigned candLength,
-       giantDigit *prodVector);
-
-#define VectorMultiply(pd, cv, cl, pv) vectorMult_x86(pd, cv, cl, pv)
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif _CK_NSGIANT_PORT_I486_H_