diff options
author | Andy Polyakov <appro@openssl.org> | 2011-06-27 09:45:10 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2011-06-27 09:45:10 +0000 |
commit | 0a9a692e4e3be7e2ef5061e42e9907cae09c4cd2 (patch) | |
tree | f0dda2f4e51a74f5e2fd78a9169a4d023c3d4eae | |
parent | fc305304023660fdc72da818686410f6d3f3fc89 (diff) |
Minor x86_64 perlasm update.
-rw-r--r-- | crypto/aes/asm/aesni-x86_64.pl | 16 | ||||
-rwxr-xr-x | crypto/perlasm/x86_64-xlate.pl | 2 |
2 files changed, 9 insertions, 9 deletions
diff --git a/crypto/aes/asm/aesni-x86_64.pl b/crypto/aes/asm/aesni-x86_64.pl index 4ab89beb47..ae0ad7f809 100644 --- a/crypto/aes/asm/aesni-x86_64.pl +++ b/crypto/aes/asm/aesni-x86_64.pl @@ -3018,15 +3018,13 @@ ___ } sub rex { - local *opcode=shift; - my ($dst,$src)=@_; - - if ($dst>=8 || $src>=8) { - $rex=0x40; - $rex|=0x04 if($dst>=8); - $rex|=0x01 if($src>=8); - push @opcode,$rex; - } + local *opcode=shift; + my ($dst,$src)=@_; + my $rex=0; + + $rex|=0x04 if($dst>=8); + $rex|=0x01 if($src>=8); + push @opcode,$rex|0x40 if($rex); } sub aesni { diff --git a/crypto/perlasm/x86_64-xlate.pl b/crypto/perlasm/x86_64-xlate.pl index a6b718b5e8..dd600be7b8 100755 --- a/crypto/perlasm/x86_64-xlate.pl +++ b/crypto/perlasm/x86_64-xlate.pl @@ -123,6 +123,8 @@ my %globals; $self->{sz} = ""; } elsif ($self->{op} =~ /^p/ && $' !~ /^(ush|op|insrw)/) { # SSEn $self->{sz} = ""; + } elsif ($self->{op} =~ /^v/) { # VEX + $self->{sz} = ""; } elsif ($self->{op} =~ /movq/ && $line =~ /%xmm/) { $self->{sz} = ""; } elsif ($self->{op} =~ /([a-z]{3,})([qlwb])$/) { |