summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2011-10-23 16:56:45 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2011-10-23 16:56:45 +0200
commit692120e24e0ee4e1d6e05fe3bb80ec87c01cf503 (patch)
treeb90e18995f66e7a72b57573f005a81f12a671081
parent17997e0ce0a9f66a8b4e75646327886cb2b3a627 (diff)
downloadgnutls-692120e24e0ee4e1d6e05fe3bb80ec87c01cf503.tar.gz
is_padlock_nano is behaving properly and saving registers.
-rw-r--r--lib/accelerated/x86/asm/padlock-common.s3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/accelerated/x86/asm/padlock-common.s b/lib/accelerated/x86/asm/padlock-common.s
index bd9123e953..f61eb27c5c 100644
--- a/lib/accelerated/x86/asm/padlock-common.s
+++ b/lib/accelerated/x86/asm/padlock-common.s
@@ -25,6 +25,7 @@
.type is_padlock_nano,@function
.align 16
is_padlock_nano:
+ pusha
xorl %eax,%eax
cpuid
movl $1,%eax
@@ -32,9 +33,11 @@ is_padlock_nano:
or $0x000f,%eax
cmp $0x06ff,%eax
jne .Lno_nano
+ popa
mov $1,%eax
ret
.Lno_nano:
+ popa
xorl %eax,%eax
ret
.size is_padlock_nano,.-is_padlock_nano