summaryrefslogtreecommitdiffstats
path: root/crypto/md32_common.h
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2010-03-02 16:25:10 +0000
committerAndy Polyakov <appro@openssl.org>2010-03-02 16:25:10 +0000
commitb2bf3353276606cf67aa7773d0d817dafba7a79a (patch)
tree55725bcdfa426af809623d15d019c7063ae7e8b7 /crypto/md32_common.h
parent33bec62a20adef817bb3a2e1ec46d43aa2b0f8a3 (diff)
Fix s390x-specific HOST_l2c|c2l [from HEAD].
Submitted by: Andreas Krebbel
Diffstat (limited to 'crypto/md32_common.h')
-rw-r--r--crypto/md32_common.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/crypto/md32_common.h b/crypto/md32_common.h
index 279916fa59..1cb783944e 100644
--- a/crypto/md32_common.h
+++ b/crypto/md32_common.h
@@ -241,11 +241,11 @@
#ifndef PEDANTIC
# if defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM)
# if defined(__s390x__)
-# define HOST_c2l(c,l) ({ asm ("lrv %0,0(%1)" \
- :"=r"(l) : "r"(c)); \
+# define HOST_c2l(c,l) ({ asm ("lrv %0,%1" \
+ :"=d"(l) :"m"(*(const unsigned int *)(c)));\
(c)+=4; (l); })
-# define HOST_l2c(l,c) ({ asm ("strv %0,0(%1)" \
- : : "r"(l),"r"(c) : "memory"); \
+# define HOST_l2c(l,c) ({ asm ("strv %1,%0" \
+ :"=m"(*(unsigned int *)(c)) :"d"(l));\
(c)+=4; (l); })
# endif
# endif