24 #include "runtime.hpp"
25 #include "integer.hpp"
31 #include "pwdbased.hpp"
32 #include "algebra.hpp"
36 #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION
39 #if defined(SSE2_INTRINSICS_AVAILABLE)
40 template AlignedAllocator<unsigned int>::pointer StdReallocate<unsigned int, AlignedAllocator<unsigned int> >(AlignedAllocator<unsigned int>&,
unsigned int*, AlignedAllocator<unsigned int>::size_type, AlignedAllocator<unsigned int>::size_type, bool);
43 template class RSA_Decryptor<RSA_BlockType2>;
44 template class RSA_Encryptor<RSA_BlockType1>;
45 template class RSA_Encryptor<RSA_BlockType2>;
46 template void tcDelete<HASH>(
HASH*);
47 template void tcDelete<Integer>(Integer*);
48 template void tcArrayDelete<byte>(byte*);
49 template AllocatorWithCleanup<byte>::pointer StdReallocate<byte, AllocatorWithCleanup<byte> >(AllocatorWithCleanup<byte>&, byte*, AllocatorWithCleanup<byte>::size_type, AllocatorWithCleanup<byte>::size_type, bool);
50 template void tcArrayDelete<word>(
word*);
51 template AllocatorWithCleanup<word>::pointer StdReallocate<word, AllocatorWithCleanup<word> >(AllocatorWithCleanup<word>&,
word*, AllocatorWithCleanup<word>::size_type, AllocatorWithCleanup<word>::size_type, bool);
53 #ifndef TAOCRYPT_SLOW_WORD64 // defined when word != word32
54 template void tcArrayDelete<word32>(word32*);
55 template AllocatorWithCleanup<word32>::pointer StdReallocate<word32, AllocatorWithCleanup<word32> >(AllocatorWithCleanup<word32>&, word32*, AllocatorWithCleanup<word32>::size_type, AllocatorWithCleanup<word32>::size_type, bool);
58 template void tcArrayDelete<char>(
char*);
60 template class PBKDF2_HMAC<SHA>;
61 template class HMAC<MD5>;
62 template class HMAC<SHA>;
63 template class HMAC<RIPEMD160>;
67 template vector<TaoCrypt::Integer>* uninit_fill_n<vector<TaoCrypt::Integer>*, size_t, vector<TaoCrypt::Integer> >(vector<TaoCrypt::Integer>*, size_t, vector<TaoCrypt::Integer>
const&);
68 template void destroy<vector<TaoCrypt::Integer>*>(vector<TaoCrypt::Integer>*, vector<TaoCrypt::Integer>*);
70 template TaoCrypt::Integer* uninit_fill_n<TaoCrypt::Integer*, size_t, TaoCrypt::Integer>(TaoCrypt::Integer*, size_t, TaoCrypt::Integer
const&);
71 template void destroy<TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*);
72 template TaoCrypt::byte* GetArrayMemory<TaoCrypt::byte>(size_t);
73 template void FreeArrayMemory<TaoCrypt::byte>(TaoCrypt::byte*);
74 template TaoCrypt::Integer* GetArrayMemory<TaoCrypt::Integer>(size_t);
75 template void FreeArrayMemory<TaoCrypt::Integer>(TaoCrypt::Integer*);
76 template vector<TaoCrypt::Integer>* GetArrayMemory<vector<TaoCrypt::Integer> >(size_t);
77 template void FreeArrayMemory<vector<TaoCrypt::Integer> >(vector<TaoCrypt::Integer>*);
78 template void FreeArrayMemory<void>(
void*);