Allow for 64-bit cache-line alignments in code segment.
authorAndy Polyakov <appro@openssl.org>
Mon, 9 May 2005 21:27:40 +0000 (21:27 +0000)
committerAndy Polyakov <appro@openssl.org>
Mon, 9 May 2005 21:27:40 +0000 (21:27 +0000)
crypto/perlasm/x86_64-xlate.pl
crypto/perlasm/x86ms.pl

index 7487249..88a45b1 100755 (executable)
@@ -325,12 +325,12 @@ my $current_function;
            undef $self->{value};
            $line = substr($line,@+[0]); $line =~ s/^\s+//;
            SWITCH: for ($dir) {
-               /\.(text|data)/
+               /\.(text)/
                            && do { my $v=undef;
                                    $v="$current_segment\tENDS\n" if ($current_segment);
-                                   $current_segment = "_$1";
+                                   $current_segment = "_$1\$";
                                    $current_segment =~ tr/[a-z]/[A-Z]/;
-                                   $v.="$current_segment\tSEGMENT PARA";
+                                   $v.="$current_segment\tSEGMENT ALIGN(64) 'CODE'";
                                    $self->{value} = $v;
                                    last;
                                  };
index 3a2b496..d1cb7ee 100644 (file)
@@ -258,7 +258,7 @@ sub main'function_begin
        push(@labels,$func);
 
        local($tmp)=<<"EOF";
-_TEXT\$        SEGMENT PARA
+_TEXT\$        SEGMENT PAGE 'CODE'
 PUBLIC _$func
 $extra
 _$func PROC NEAR
@@ -276,7 +276,7 @@ sub main'function_begin_B
        local($func,$extra)=@_;
 
        local($tmp)=<<"EOF";
-_TEXT\$        SEGMENT PARA
+_TEXT\$        SEGMENT PAGE 'CODE'
 PUBLIC _$func
 $extra
 _$func PROC NEAR