summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/perlasm
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/perlasm')
-rw-r--r--src/lib/libcrypto/perlasm/cbc.pl2
-rwxr-xr-xsrc/lib/libcrypto/perlasm/x86_64-xlate.pl6
2 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/libcrypto/perlasm/cbc.pl b/src/lib/libcrypto/perlasm/cbc.pl
index e43dc9ae15..6fc2510905 100644
--- a/src/lib/libcrypto/perlasm/cbc.pl
+++ b/src/lib/libcrypto/perlasm/cbc.pl
@@ -158,7 +158,6 @@ sub cbc
158 &jmp_ptr($count); 158 &jmp_ptr($count);
159 159
160&set_label("ej7"); 160&set_label("ej7");
161 &xor("edx", "edx") if $ppro; # ppro friendly
162 &movb(&HB("edx"), &BP(6,$in,"",0)); 161 &movb(&HB("edx"), &BP(6,$in,"",0));
163 &shl("edx",8); 162 &shl("edx",8);
164&set_label("ej6"); 163&set_label("ej6");
@@ -170,7 +169,6 @@ sub cbc
170 &jmp(&label("ejend")); 169 &jmp(&label("ejend"));
171&set_label("ej3"); 170&set_label("ej3");
172 &movb(&HB("ecx"), &BP(2,$in,"",0)); 171 &movb(&HB("ecx"), &BP(2,$in,"",0));
173 &xor("ecx", "ecx") if $ppro; # ppro friendly
174 &shl("ecx",8); 172 &shl("ecx",8);
175&set_label("ej2"); 173&set_label("ej2");
176 &movb(&HB("ecx"), &BP(1,$in,"",0)); 174 &movb(&HB("ecx"), &BP(1,$in,"",0));
diff --git a/src/lib/libcrypto/perlasm/x86_64-xlate.pl b/src/lib/libcrypto/perlasm/x86_64-xlate.pl
index d66ad24095..68b4c1ca80 100755
--- a/src/lib/libcrypto/perlasm/x86_64-xlate.pl
+++ b/src/lib/libcrypto/perlasm/x86_64-xlate.pl
@@ -167,7 +167,7 @@ my %globals;
167 } elsif ($self->{op} =~ /^(pop|push)f/) { 167 } elsif ($self->{op} =~ /^(pop|push)f/) {
168 $self->{op} .= $self->{sz}; 168 $self->{op} .= $self->{sz};
169 } elsif ($self->{op} eq "call" && $current_segment eq ".CRT\$XCU") { 169 } elsif ($self->{op} eq "call" && $current_segment eq ".CRT\$XCU") {
170 $self->{op} = "ALIGN\t8\n\tDQ"; 170 $self->{op} = "\tDQ";
171 } 171 }
172 $self->{op}; 172 $self->{op};
173 } 173 }
@@ -546,6 +546,8 @@ my %globals;
546 if ($line=~/\.([px])data/) { 546 if ($line=~/\.([px])data/) {
547 $v.=" rdata align="; 547 $v.=" rdata align=";
548 $v.=$1 eq "p"? 4 : 8; 548 $v.=$1 eq "p"? 4 : 8;
549 } elsif ($line=~/\.CRT\$/i) {
550 $v.=" rdata align=8";
549 } 551 }
550 } else { 552 } else {
551 $v="$current_segment\tENDS\n" if ($current_segment); 553 $v="$current_segment\tENDS\n" if ($current_segment);
@@ -553,6 +555,8 @@ my %globals;
553 if ($line=~/\.([px])data/) { 555 if ($line=~/\.([px])data/) {
554 $v.=" READONLY"; 556 $v.=" READONLY";
555 $v.=" ALIGN(".($1 eq "p" ? 4 : 8).")" if ($masm>=$masmref); 557 $v.=" ALIGN(".($1 eq "p" ? 4 : 8).")" if ($masm>=$masmref);
558 } elsif ($line=~/\.CRT\$/i) {
559 $v.=" READONLY DWORD";
556 } 560 }
557 } 561 }
558 $current_segment = $line; 562 $current_segment = $line;