Commit 1485e923 authored by unknown's avatar unknown

BUG#12526 yassl: Crashes in "integer.cpp"

- Avoid problem with  "Sun C++ 5.6 2004/07/15"


extra/yassl/taocrypt/src/integer.cpp:
  - Remove "inline" from the more advanced functions of class portable
parent 8628f2c8
...@@ -568,13 +568,13 @@ class Portable ...@@ -568,13 +568,13 @@ class Portable
static word Add(word *C, const word *A, const word *B, unsigned int N); static word Add(word *C, const word *A, const word *B, unsigned int N);
static word Subtract(word *C, const word *A, const word*B, unsigned int N); static word Subtract(word *C, const word *A, const word*B, unsigned int N);
static inline void Multiply2(word *C, const word *A, const word *B); static void Multiply2(word *C, const word *A, const word *B);
static inline word Multiply2Add(word *C, const word *A, const word *B); static word Multiply2Add(word *C, const word *A, const word *B);
static void Multiply4(word *C, const word *A, const word *B); static void Multiply4(word *C, const word *A, const word *B);
static void Multiply8(word *C, const word *A, const word *B); static void Multiply8(word *C, const word *A, const word *B);
static inline unsigned int MultiplyRecursionLimit() {return 8;} static inline unsigned int MultiplyRecursionLimit() {return 8;}
static inline void Multiply2Bottom(word *C, const word *A, const word *B); static void Multiply2Bottom(word *C, const word *A, const word *B);
static void Multiply4Bottom(word *C, const word *A, const word *B); static void Multiply4Bottom(word *C, const word *A, const word *B);
static void Multiply8Bottom(word *C, const word *A, const word *B); static void Multiply8Bottom(word *C, const word *A, const word *B);
static inline unsigned int MultiplyBottomRecursionLimit() {return 8;} static inline unsigned int MultiplyBottomRecursionLimit() {return 8;}
...@@ -668,7 +668,7 @@ void Portable::Multiply2(word *C, const word *A, const word *B) ...@@ -668,7 +668,7 @@ void Portable::Multiply2(word *C, const word *A, const word *B)
C[3] = t.GetHighHalf(); C[3] = t.GetHighHalf();
} }
inline void Portable::Multiply2Bottom(word *C, const word *A, const word *B) void Portable::Multiply2Bottom(word *C, const word *A, const word *B)
{ {
DWord t = DWord::Multiply(A[0], B[0]); DWord t = DWord::Multiply(A[0], B[0]);
C[0] = t.GetLowHalf(); C[0] = t.GetLowHalf();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment