summaryrefslogtreecommitdiff
path: root/crypto/perlasm
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2005-01-18 01:04:41 +0000
committerAndy Polyakov <appro@openssl.org>2005-01-18 01:04:41 +0000
commitaddb6e16a873ee9af5bd61404459b75ed1aa7226 (patch)
tree46a75016b63dc112c64343cf1d7031e098677e78 /crypto/perlasm
parent4d27c4c9603536f076ba2cbb88ba1087697fad9e (diff)
downloadopenssl-new-addb6e16a873ee9af5bd61404459b75ed1aa7226.tar.gz
Throw in AES CBC assembler, up to +40% on aes-128-cbc benchmark.
Diffstat (limited to 'crypto/perlasm')
-rw-r--r--crypto/perlasm/x86ms.pl1
-rw-r--r--crypto/perlasm/x86nasm.pl1
-rw-r--r--crypto/perlasm/x86unix.pl1
3 files changed, 3 insertions, 0 deletions
diff --git a/crypto/perlasm/x86ms.pl b/crypto/perlasm/x86ms.pl
index 41fe9715de..35ba300d04 100644
--- a/crypto/perlasm/x86ms.pl
+++ b/crypto/perlasm/x86ms.pl
@@ -175,6 +175,7 @@ sub main'cpuid { &out0("DW\t0A20Fh"); }
sub main'rdtsc { &out0("DW\t0310Fh"); }
sub main'halt { &out0("hlt"); }
sub main'movz { &out2("movzx",@_); }
+sub main'neg { &out1("neg",@_); }
# SSE2
sub main'emms { &out0("emms"); }
diff --git a/crypto/perlasm/x86nasm.pl b/crypto/perlasm/x86nasm.pl
index 9792f13e1f..b897ed0fda 100644
--- a/crypto/perlasm/x86nasm.pl
+++ b/crypto/perlasm/x86nasm.pl
@@ -193,6 +193,7 @@ sub main'cpuid { &out0("cpuid"); }
sub main'rdtsc { &out0("rdtsc"); }
sub main'halt { &out0("hlt"); }
sub main'movz { &out2("movzx",@_); }
+sub main'neg { &out1("neg",@_); }
# SSE2
sub main'emms { &out0("emms"); }
diff --git a/crypto/perlasm/x86unix.pl b/crypto/perlasm/x86unix.pl
index 59c4fbc083..4381580be7 100644
--- a/crypto/perlasm/x86unix.pl
+++ b/crypto/perlasm/x86unix.pl
@@ -209,6 +209,7 @@ sub main'cpuid { &out0(".byte\t0x0f,0xa2"); }
sub main'rdtsc { &out0(".byte\t0x0f,0x31"); }
sub main'halt { &out0("hlt"); }
sub main'movz { &out2("movzbl",@_); }
+sub main'neg { &out1("negl",@_); }
# SSE2
sub main'emms { &out0("emms"); }