Better check of DH parameters in TLS data
[oweals/openssl.git] / crypto / des / asm / dest4-sparcv9.pl
index 1dc60243d4fbda91314f2d2dc33ca1eb0aa1b6c3..4a6e29fc5307eacc8f8267deca1a389c6c44c417 100644 (file)
@@ -1,4 +1,11 @@
-#!/usr/bin/env perl
+#! /usr/bin/env perl
+# Copyright 2013-2016 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License").  You may not use
+# this file except in compliance with the License.  You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
 
 # ====================================================================
 # Written by David S. Miller <davem@devemloft.net> and Andy Polyakov
@@ -27,14 +34,17 @@ $0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
 push(@INC,"${dir}","${dir}../../perlasm");
 require "sparcv9_modes.pl";
 
-&asm_init(@ARGV);
+$output=pop;
+open STDOUT,">$output";
 
-$code.=<<___ if ($::abibits==64);
+$code.=<<___;
+#include "sparc_arch.h"
+
+#ifdef __arch64__
 .register       %g2,#scratch
 .register       %g3,#scratch
-___
+#endif
 
-$code.=<<___;
 .text
 ___
 
@@ -96,7 +106,7 @@ $code.=<<___;
 des_t4_cbc_encrypt:
        cmp             $len, 0
        be,pn           $::size_t_cc, .Lcbc_abort
-       nop
+       srln            $len, 0, $len           ! needed on v8+, "nop" on v9
        ld              [$ivec + 0], %f0        ! load ivec
        ld              [$ivec + 4], %f1
 
@@ -197,7 +207,7 @@ des_t4_cbc_encrypt:
 des_t4_cbc_decrypt:
        cmp             $len, 0
        be,pn           $::size_t_cc, .Lcbc_abort
-       nop
+       srln            $len, 0, $len           ! needed on v8+, "nop" on v9
        ld              [$ivec + 0], %f2        ! load ivec
        ld              [$ivec + 4], %f3
 
@@ -305,7 +315,7 @@ $code.=<<___;
 des_t4_ede3_cbc_encrypt:
        cmp             $len, 0
        be,pn           $::size_t_cc, .Lcbc_abort
-       nop
+       srln            $len, 0, $len           ! needed on v8+, "nop" on v9
        ld              [$ivec + 0], %f0        ! load ivec
        ld              [$ivec + 4], %f1
 
@@ -457,7 +467,7 @@ des_t4_ede3_cbc_encrypt:
 des_t4_ede3_cbc_decrypt:
        cmp             $len, 0
        be,pn           $::size_t_cc, .Lcbc_abort
-       nop
+       srln            $len, 0, $len           ! needed on v8+, "nop" on v9
        ld              [$ivec + 0], %f2        ! load ivec
        ld              [$ivec + 4], %f3