Gcc over-optimizes PadLock AES CFB codepath, tell it not to.
[openssl.git] / crypto / engine / eng_padlock.c
index 8d92af6f8bd247d58b8c2169dbdbe737fb44a14a..e1d66eac58adcba26a55637eca8d343f89acc02d 100644 (file)
@@ -436,8 +436,8 @@ static inline void *name(size_t cnt,                \
                        rep_xcrypt "\n"         \
                "       popl    %%ebx"          \
                : "=a"(iv), "=c"(cnt), "=D"(out), "=S"(inp) \
                        rep_xcrypt "\n"         \
                "       popl    %%ebx"          \
                : "=a"(iv), "=c"(cnt), "=D"(out), "=S"(inp) \
-               : "0"(cdata), "1"(cnt), "2"(out), "3"(inp) \
-               : "edx", "cc");                 \
+               : "0"(cdata), "1"(cnt), "2"(out), "3"(inp), "m"(*cdata)  \
+               : "edx", "cc", "memory");       \
        return iv;                              \
 }
 
        return iv;                              \
 }