diff options
-rw-r--r-- | cham.h | 6 | ||||
-rw-r--r-- | cryptlib.h | 6 | ||||
-rw-r--r-- | lea.h | 6 | ||||
-rw-r--r-- | simeck.h | 6 |
4 files changed, 21 insertions, 3 deletions
@@ -19,6 +19,12 @@ # define CRYPTOPP_CHAM_ADVANCED_PROCESS_BLOCKS 1
#endif
+// Yet another SunStudio/SunCC workaround. Failed self tests
+// in SSE code paths on i386 for SunStudio 12.3 and below.
+#if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x5120)
+# undef CRYPTOPP_CHAM_ADVANCED_PROCESS_BLOCKS
+#endif
+
NAMESPACE_BEGIN(CryptoPP)
/// \brief CHAM block cipher information
@@ -2357,9 +2357,9 @@ public: void DoQuickSanityCheck() const {ThrowIfInvalid(NullRNG(), 0);}
#if defined(__SUNPRO_CC)
- // Sun Studio 11/CC 5.8 workaround: it generates incorrect code - // when casting to an empty virtual base class. JW, 2018: It is - // still a problem in Sun Studio 12.6/CC 5.15 on i386. Just enable + // Sun Studio 11/CC 5.8 workaround: it generates incorrect code
+ // when casting to an empty virtual base class. JW, 2018: It is
+ // still a problem in Sun Studio 12.6/CC 5.15 on i386. Just enable
// it everywhere in case it affects SPARC (which we don't test).
char m_sunCCworkaround;
#endif
@@ -19,6 +19,12 @@ # define CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS 1
#endif
+// Yet another SunStudio/SunCC workaround. Failed self tests
+// in SSE code paths on i386 for SunStudio 12.3 and below.
+#if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x5120)
+# undef CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS
+#endif
+
NAMESPACE_BEGIN(CryptoPP)
/// \brief LEA block cipher information
@@ -21,6 +21,12 @@ # define CRYPTOPP_SIMECK_ADVANCED_PROCESS_BLOCKS 1
#endif
+// Yet another SunStudio/SunCC workaround. Failed self tests
+// in SSE code paths on i386 for SunStudio 12.3 and below.
+#if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x5120)
+# undef CRYPTOPP_SIMECK_ADVANCED_PROCESS_BLOCKS
+#endif
+
NAMESPACE_BEGIN(CryptoPP)
/// \brief SIMECK block cipher information
|