Further synchronizations with md32_common.h update.
This commit is contained in:
parent
cecfdbf72d
commit
11d0ebc841
@ -120,7 +120,7 @@ my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o mo86-out.o:dx86-out.o yx86
|
||||
|
||||
my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o:::wp-x86_64.o";
|
||||
my $ia64_asm="ia64cpuid.o:bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o:::";
|
||||
my $sparcv9_asm="sparcv9cap.o sparccpuid.o:bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o:des_enc-sparc.o fcrypt_b.o:aes_core.o aes_cbc.o aes-sparcv9.o::md5-sparcv9.o::::::";
|
||||
my $sparcv9_asm="sparcv9cap.o sparccpuid.o:bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o:des_enc-sparc.o fcrypt_b.o:aes_core.o aes_cbc.o aes-sparcv9.o::::::::";
|
||||
my $no_asm=":::::::::::";
|
||||
|
||||
# As for $BSDthreads. Idea is to maintain "collective" set of flags,
|
||||
|
18
TABLE
18
TABLE
@ -153,7 +153,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -1777,7 +1777,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -1805,7 +1805,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3121,7 +3121,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3177,7 +3177,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3793,7 +3793,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3821,7 +3821,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3905,7 +3905,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
@ -3933,7 +3933,7 @@ $bn_obj = bn-sparcv9.o sparcv9-mont.o sparcv9a-mont.o
|
||||
$des_obj = des_enc-sparc.o fcrypt_b.o
|
||||
$aes_obj = aes_core.o aes_cbc.o aes-sparcv9.o
|
||||
$bf_obj =
|
||||
$md5_obj = md5-sparcv9.o
|
||||
$md5_obj =
|
||||
$sha1_obj =
|
||||
$cast_obj =
|
||||
$rc4_obj =
|
||||
|
@ -86,9 +86,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
#define pPad2 p12
|
||||
#define pPad3 p13
|
||||
#define pSkip p8
|
||||
// This two below shall remain constant througout whole routine
|
||||
#define pDataOrder p14
|
||||
#define pHostOrder p15
|
||||
|
||||
#define A_ out24
|
||||
#define B_ out25
|
||||
@ -150,7 +147,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
#define Y in21
|
||||
#define Z in20
|
||||
|
||||
/* register stack configuration for md5_block_asm_host_order(): */
|
||||
/* register stack configuration for md5_block_asm_data_order(): */
|
||||
#define MD5_NINP 3
|
||||
#define MD5_NLOC 0
|
||||
#define MD5_NOUT 29
|
||||
@ -242,7 +239,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
|
||||
.text
|
||||
|
||||
/* md5_block_asm_host_order(MD5_CTX *c, const void *data, size_t num)
|
||||
/* md5_block_asm_data_order(MD5_CTX *c, const void *data, size_t num)
|
||||
|
||||
where:
|
||||
c: a pointer to a structure of this type:
|
||||
@ -267,22 +264,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
.align 32
|
||||
.proc md5_block_asm_data_order
|
||||
md5_block_asm_data_order:
|
||||
{ .mib
|
||||
cmp.eq pDataOrder,pHostOrder = r0,r0
|
||||
br.sptk.many .md5_block
|
||||
};;
|
||||
.endp md5_block_asm_data_order
|
||||
|
||||
.type md5_block_asm_host_order, @function
|
||||
.global md5_block_asm_host_order
|
||||
|
||||
.proc md5_block_asm_host_order
|
||||
md5_block_asm_host_order:
|
||||
.prologue
|
||||
{ .mib
|
||||
cmp.eq pHostOrder,pDataOrder = r0,r0
|
||||
};;
|
||||
.md5_block:
|
||||
.prologue
|
||||
{ .mmi
|
||||
.save ar.pfs, PFSSave
|
||||
alloc PFSSave = ar.pfs, MD5_NINP, MD5_NLOC, MD5_NOUT, MD5_NROT
|
||||
@ -296,10 +279,8 @@ md5_block_asm_host_order:
|
||||
mov LCSave = ar.lc
|
||||
}
|
||||
;;
|
||||
.pred.rel "mutex",pDataOrder,pHostOrder
|
||||
{ .mmi
|
||||
(pDataOrder) add CTable = .md5_tbl_data_order#-.md5_block#, CTable
|
||||
(pHostOrder) add CTable = .md5_tbl_host_order#-.md5_block#, CTable
|
||||
add CTable = .md5_tbl_data_order#-.md5_block#, CTable
|
||||
and InAlign = 0x3, DPtrIn
|
||||
}
|
||||
|
||||
@ -317,7 +298,7 @@ md5_block_asm_host_order:
|
||||
dep DPtr_ = 0, DPtrIn, 0, 2
|
||||
} ;;
|
||||
#ifdef HOST_IS_BIG_ENDIAN
|
||||
(pDataOrder) rum psr.be;; // switch to little-endian
|
||||
rum psr.be;; // switch to little-endian
|
||||
#endif
|
||||
{ .mmb
|
||||
ld4 CTable0 = [CTable], 4
|
||||
@ -366,7 +347,7 @@ md5_block_asm_host_order:
|
||||
|
||||
.md5_exit:
|
||||
#ifdef HOST_IS_BIG_ENDIAN
|
||||
(pDataOrder) sum psr.be;; // switch back to big-endian mode
|
||||
sum psr.be;; // switch back to big-endian mode
|
||||
#endif
|
||||
{ .mmi
|
||||
st4 [CtxPtr0] = AccumB, -4
|
||||
@ -452,7 +433,7 @@ md5_block_asm_host_order:
|
||||
MD5UNALIGNED(1)
|
||||
MD5UNALIGNED(2)
|
||||
|
||||
.endp md5_block_asm_host_order
|
||||
.endp md5_block_asm_data_order
|
||||
|
||||
|
||||
// MD5 Perform the F function and load
|
||||
@ -1008,23 +989,4 @@ md5_constants:
|
||||
data1 0x35, 0xf2, 0x3a, 0xbd // 61
|
||||
data1 0xbb, 0xd2, 0xd7, 0x2a // 62
|
||||
data1 0x91, 0xd3, 0x86, 0xeb // 63
|
||||
|
||||
.md5_tbl_host_order: // OS data order, might as well
|
||||
// be little-endian.
|
||||
data4 0xd76aa478, 0xe8c7b756, 0x242070db, 0xc1bdceee // 0
|
||||
data4 0xf57c0faf, 0x4787c62a, 0xa8304613, 0xfd469501 // 4
|
||||
data4 0x698098d8, 0x8b44f7af, 0xffff5bb1, 0x895cd7be // 8
|
||||
data4 0x6b901122, 0xfd987193, 0xa679438e, 0x49b40821 // 12
|
||||
data4 0xf61e2562, 0xc040b340, 0x265e5a51, 0xe9b6c7aa // 16
|
||||
data4 0xd62f105d, 0x02441453, 0xd8a1e681, 0xe7d3fbc8 // 20
|
||||
data4 0x21e1cde6, 0xc33707d6, 0xf4d50d87, 0x455a14ed // 24
|
||||
data4 0xa9e3e905, 0xfcefa3f8, 0x676f02d9, 0x8d2a4c8a // 28
|
||||
data4 0xfffa3942, 0x8771f681, 0x6d9d6122, 0xfde5380c // 32
|
||||
data4 0xa4beea44, 0x4bdecfa9, 0xf6bb4b60, 0xbebfbc70 // 36
|
||||
data4 0x289b7ec6, 0xeaa127fa, 0xd4ef3085, 0x04881d05 // 40
|
||||
data4 0xd9d4d039, 0xe6db99e5, 0x1fa27cf8, 0xc4ac5665 // 44
|
||||
data4 0xf4292244, 0x432aff97, 0xab9423a7, 0xfc93a039 // 48
|
||||
data4 0x655b59c3, 0x8f0ccc92, 0xffeff47d, 0x85845dd1 // 52
|
||||
data4 0x6fa87e4f, 0xfe2ce6e0, 0xa3014314, 0x4e0811a1 // 56
|
||||
data4 0xf7537e82, 0xbd3af235, 0x2ad7d2bb, 0xeb86d391 // 60
|
||||
.size md5_constants#,64*4*2
|
||||
.size md5_constants#,64*4
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -186,9 +186,7 @@ $code.=<<___;
|
||||
extr.u tmp1=$a,27,5 } // a>>27
|
||||
{ .mib; add $f=$f,tmp4 // f+=e+K_20_39
|
||||
add $h1=$h1,$a };; // wrap up
|
||||
{ .mmi;
|
||||
(p16) ld4.s $X[0]=[inp],4 // non-faulting prefetch
|
||||
add $f=$f,tmp0 // f+=F_20_39(b,c,d)
|
||||
{ .mmi; add $f=$f,tmp0 // f+=F_20_39(b,c,d)
|
||||
shrp $b=tmp6,tmp6,2 } // b=ROTATE(b,30) ;;?
|
||||
{ .mmi; or tmp1=tmp1,tmp5 // ROTATE(a,5)
|
||||
add $h3=$h3,$c };; // wrap up
|
||||
|
Loading…
x
Reference in New Issue
Block a user