mirror of
https://github.com/guanzhi/GmSSL.git
synced 2026-08-09 07:23:56 +08:00
@@ -1,4 +1,11 @@
|
||||
#!/usr/bin/env perl
|
||||
#! /usr/bin/env perl
|
||||
# Copyright 2008-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
|
||||
|
||||
|
||||
# ====================================================================
|
||||
# Copyright (c) 2008 Andy Polyakov <appro@openssl.org>
|
||||
@@ -42,6 +49,9 @@ require "x86asm.pl";
|
||||
|
||||
$OPENSSL=1;
|
||||
|
||||
$output = pop;
|
||||
open STDOUT,">$output";
|
||||
|
||||
&asm_init($ARGV[0],"cmll-586.pl",$ARGV[$#ARGV] eq "386");
|
||||
|
||||
@T=("eax","ebx","ecx","edx");
|
||||
@@ -723,11 +733,11 @@ my $bias=int(@T[0])?shift(@T):0;
|
||||
&function_end("Camellia_Ekeygen");
|
||||
|
||||
if ($OPENSSL) {
|
||||
# int private_Camellia_set_key (
|
||||
# int Camellia_set_key (
|
||||
# const unsigned char *userKey,
|
||||
# int bits,
|
||||
# CAMELLIA_KEY *key)
|
||||
&function_begin_B("private_Camellia_set_key");
|
||||
&function_begin_B("Camellia_set_key");
|
||||
&push ("ebx");
|
||||
&mov ("ecx",&wparam(0)); # pull arguments
|
||||
&mov ("ebx",&wparam(1));
|
||||
@@ -760,7 +770,7 @@ if ($OPENSSL) {
|
||||
&set_label("done",4);
|
||||
&pop ("ebx");
|
||||
&ret ();
|
||||
&function_end_B("private_Camellia_set_key");
|
||||
&function_end_B("Camellia_set_key");
|
||||
}
|
||||
|
||||
@SBOX=(
|
||||
@@ -1136,3 +1146,5 @@ my ($s0,$s1,$s2,$s3) = @T;
|
||||
&asciz("Camellia for x86 by <appro\@openssl.org>");
|
||||
|
||||
&asm_finish();
|
||||
|
||||
close STDOUT;
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
#!/usr/bin/env perl
|
||||
#! /usr/bin/env perl
|
||||
# Copyright 2008-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
|
||||
|
||||
|
||||
# ====================================================================
|
||||
# Copyright (c) 2008 Andy Polyakov <appro@openssl.org>
|
||||
@@ -40,7 +47,7 @@ $0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
|
||||
( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or
|
||||
die "can't locate x86_64-xlate.pl";
|
||||
|
||||
open OUT,"| \"$^X\" $xlate $flavour $output";
|
||||
open OUT,"| \"$^X\" \"$xlate\" $flavour \"$output\"";
|
||||
*STDOUT=*OUT;
|
||||
|
||||
sub hi() { my $r=shift; $r =~ s/%[er]([a-d])x/%\1h/; $r; }
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
#!/usr/bin/env perl
|
||||
#! /usr/bin/env perl
|
||||
# Copyright 2012-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
|
||||
@@ -46,7 +53,8 @@ $0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
|
||||
push(@INC,"${dir}","${dir}../../perlasm");
|
||||
require "sparcv9_modes.pl";
|
||||
|
||||
&asm_init(@ARGV);
|
||||
$output = pop;
|
||||
open STDOUT,">$output";
|
||||
|
||||
$::evp=1; # if $evp is set to 0, script generates module with
|
||||
# Camellia_[en|de]crypt, Camellia_set_key and Camellia_cbc_encrypt
|
||||
@@ -59,6 +67,8 @@ $::evp=1; # if $evp is set to 0, script generates module with
|
||||
my ($inp,$out,$key,$rounds,$tmp,$mask)=map("%o$_",(0..5));
|
||||
|
||||
$code=<<___;
|
||||
#include "sparc_arch.h"
|
||||
|
||||
.text
|
||||
|
||||
.globl cmll_t4_encrypt
|
||||
|
||||
Reference in New Issue
Block a user