summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2012-10-18 23:33:06 +0200
committerSergei Golubchik <sergii@pisem.net>2012-10-18 23:33:06 +0200
commit68baf07dcd985376fae9d24c12ee0ff560b61e8f (patch)
tree175f775e9847a50e7b51162573ae24f276abea96 /extra
parentcbaf6e6b61241db6e97648c73dbeb0a15614a7aa (diff)
parent362c2bca3e170031d33622f27d978c9570d0a9f5 (diff)
downloadmariadb-git-68baf07dcd985376fae9d24c12ee0ff560b61e8f.tar.gz
5.3 merge
Diffstat (limited to 'extra')
-rw-r--r--extra/yassl/taocrypt/include/misc.hpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/extra/yassl/taocrypt/include/misc.hpp b/extra/yassl/taocrypt/include/misc.hpp
index b6925f916f8..c58713855dd 100644
--- a/extra/yassl/taocrypt/include/misc.hpp
+++ b/extra/yassl/taocrypt/include/misc.hpp
@@ -136,9 +136,13 @@ void CleanUp();
// Turn on ia32 ASM for Big Integer
// CodeWarrior defines _MSC_VER
+//
+// Do not use assembler with GCC, as the implementation for it is broken;
+// it does not use proper GCC asm contraints and makes assumptions about
+// frame pointers and so on, which breaks depending on GCC version and
+// optimization level.
#if !defined(TAOCRYPT_DISABLE_X86ASM) && ((defined(_MSC_VER) && \
- !defined(__MWERKS__) && defined(_M_IX86)) || \
- (defined(__GNUC__) && defined(__i386__)))
+ !defined(__MWERKS__) && defined(_M_IX86)))
#define TAOCRYPT_X86ASM_AVAILABLE
#endif