summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsteve <steve>2012-01-18 14:54:20 +0000
committersteve <steve>2012-01-18 14:54:20 +0000
commit705456c18853590bf9815c42010b5971f6116fac (patch)
treeda1570f68b8ff4b90ffdb65d4cdf4d4dc685dd6d
parentd87162e649b657cf9eabeae065769a9c412c7ac4 (diff)
downloadopenssl-705456c18853590bf9815c42010b5971f6116fac.tar.gz
give a hand old assemblers assembling loop instruction. (original by Andy)
-rw-r--r--crypto/perlasm/x86gas.pl6
1 files changed, 2 insertions, 4 deletions
diff --git a/crypto/perlasm/x86gas.pl b/crypto/perlasm/x86gas.pl
index d0b7ae27a..263182b98 100644
--- a/crypto/perlasm/x86gas.pl
+++ b/crypto/perlasm/x86gas.pl
@@ -45,10 +45,8 @@ sub ::generic
undef $suffix if ($dst =~ m/^%[xm]/o || $src =~ m/^%[xm]/o);
if ($#_==0) { &::emit($opcode); }
- elsif ($opcode =~ m/^j/o && $#_==1) { &::emit($opcode,@arg); }
- elsif ($opcode eq "call" && $#_==1) { &::emit($opcode,@arg); }
- elsif ($opcode eq "clflush" && $#_==1){ &::emit($opcode,@arg); }
- elsif ($opcode =~ m/^set/&& $#_==1) { &::emit($opcode,@arg); }
+ elsif ($#_==1 && $opcode =~ m/^(call|clflush|j|loop|set)/o)
+ { &::emit($opcode,@arg); }
else { &::emit($opcode.$suffix,@arg);}
1;