summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/openssl/ChangeLog7
-rw-r--r--dev-libs/openssl/files/alphacpuid.s125
-rw-r--r--dev-libs/openssl/openssl-1.0.0a.ebuild3
3 files changed, 133 insertions, 2 deletions
diff --git a/dev-libs/openssl/ChangeLog b/dev-libs/openssl/ChangeLog
index 27fa9dc834bc..c3a58e1964d5 100644
--- a/dev-libs/openssl/ChangeLog
+++ b/dev-libs/openssl/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-libs/openssl
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/ChangeLog,v 1.340 2010/07/18 19:39:21 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/ChangeLog,v 1.341 2010/08/04 02:41:18 vapier Exp $
+
+ 04 Aug 2010; Mike Frysinger <vapier@gentoo.org> openssl-1.0.0a.ebuild,
+ +files/alphacpuid.s:
+ Add missing file from upstream for alpha builds #330915 by Kazuyoshi
+ Furutaka.
18 Jul 2010; Mike Frysinger <vapier@gentoo.org> openssl-1.0.0a.ebuild:
Avoid preserve_old_lib when we have the old SLOT #328355.
diff --git a/dev-libs/openssl/files/alphacpuid.s b/dev-libs/openssl/files/alphacpuid.s
new file mode 100644
index 000000000000..3fa77a0ade5b
--- /dev/null
+++ b/dev-libs/openssl/files/alphacpuid.s
@@ -0,0 +1,125 @@
+.text
+
+.set noat
+
+.globl OPENSSL_cpuid_setup
+.ent OPENSSL_cpuid_setup
+OPENSSL_cpuid_setup:
+ .frame $30,0,$26
+ .prologue 0
+ ret ($26)
+.end OPENSSL_cpuid_setup
+
+.globl OPENSSL_wipe_cpu
+.ent OPENSSL_wipe_cpu
+OPENSSL_wipe_cpu:
+ .frame $30,0,$26
+ .prologue 0
+ clr $1
+ clr $2
+ clr $3
+ clr $4
+ clr $5
+ clr $6
+ clr $7
+ clr $8
+ clr $16
+ clr $17
+ clr $18
+ clr $19
+ clr $20
+ clr $21
+ clr $22
+ clr $23
+ clr $24
+ clr $25
+ clr $27
+ clr $at
+ clr $29
+ fclr $f0
+ fclr $f1
+ fclr $f10
+ fclr $f11
+ fclr $f12
+ fclr $f13
+ fclr $f14
+ fclr $f15
+ fclr $f16
+ fclr $f17
+ fclr $f18
+ fclr $f19
+ fclr $f20
+ fclr $f21
+ fclr $f22
+ fclr $f23
+ fclr $f24
+ fclr $f25
+ fclr $f26
+ fclr $f27
+ fclr $f28
+ fclr $f29
+ fclr $f30
+ mov $sp,$0
+ ret ($26)
+.end OPENSSL_wipe_cpu
+
+.globl OPENSSL_atomic_add
+.ent OPENSSL_atomic_add
+OPENSSL_atomic_add:
+ .frame $30,0,$26
+ .prologue 0
+1: ldl_l $0,($16)
+ addl $0,$17,$1
+ stl_c $1,($16)
+ beq $1,1b
+ addl $0,$17,$0
+ ret ($26)
+.end OPENSSL_atomic_add
+
+.globl OPENSSL_rdtsc
+.ent OPENSSL_rdtsc
+OPENSSL_rdtsc:
+ .frame $30,0,$26
+ .prologue 0
+ rpcc $0
+ ret ($26)
+.end OPENSSL_rdtsc
+
+.globl OPENSSL_cleanse
+.ent OPENSSL_cleanse
+OPENSSL_cleanse:
+ .frame $30,0,$26
+ .prologue 0
+ beq $17,.Ldone
+ and $16,7,$0
+ bic $17,7,$at
+ beq $at,.Little
+ beq $0,.Laligned
+
+.Little:
+ ldq_u $1,0($16)
+ mov $16,$2
+.Lalign:
+ mskbl $1,$16,$1
+ lda $16,1($16)
+ subq $17,1,$17
+ subq $0,1,$0
+ beq $17,.Lout
+ bne $0,.Lalign
+.Lout: stq_u $1,0($2)
+ beq $17,.Ldone
+ bic $17,7,$at
+ mov $17,$0
+ beq $at,.Little
+
+.Laligned:
+ stq $31,0($16)
+ subq $17,8,$17
+ lda $16,8($16)
+ bic $17,7,$at
+ bne $at,.Laligned
+ beq $17,.Ldone
+ mov $17,$0
+ br .Little
+.Ldone: ret ($26)
+.end OPENSSL_cleanse
diff --git a/dev-libs/openssl/openssl-1.0.0a.ebuild b/dev-libs/openssl/openssl-1.0.0a.ebuild
index fff0063bfd61..024147f000e6 100644
--- a/dev-libs/openssl/openssl-1.0.0a.ebuild
+++ b/dev-libs/openssl/openssl-1.0.0a.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/openssl-1.0.0a.ebuild,v 1.3 2010/07/18 19:39:21 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/openssl/openssl-1.0.0a.ebuild,v 1.4 2010/08/04 02:41:18 vapier Exp $
inherit eutils flag-o-matic toolchain-funcs
@@ -28,6 +28,7 @@ src_unpack() {
epatch "${FILESDIR}"/${PN}-0.9.7e-gentoo.patch
epatch "${FILESDIR}"/${PN}-0.9.8l-binutils.patch #289130
+ cp "${FILESDIR}"/alphacpuid.s "${S}"/crypto/ || die #330915
# disable fips in the build
# make sure the man pages are suffixed #302165