Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Openssl
提交
be0d31b1
T
Third Party Openssl
项目概览
OpenHarmony
/
Third Party Openssl
1 年多 前同步成功
通知
10
Star
18
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Openssl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
be0d31b1
编写于
8月 29, 2012
作者:
A
Andy Polyakov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add linux-x32 target.
上级
ed83ba53
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
47 addition
and
9 deletion
+47
-9
Configure
Configure
+1
-0
TABLE
TABLE
+33
-0
crypto/bn/asm/x86_64-gcc.c
crypto/bn/asm/x86_64-gcc.c
+13
-9
未找到文件。
Configure
浏览文件 @
be0d31b1
...
...
@@ -358,6 +358,7 @@ my %table=(
"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
"linux-x32", "gcc:-mx32 -DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32:",
"linux64-s390x", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
#### So called "highgprs" target for z/Architecture CPUs
# "Highgprs" is kernel feature first implemented in Linux 2.6.32, see
...
...
TABLE
浏览文件 @
be0d31b1
...
...
@@ -4323,6 +4323,39 @@ $ranlib =
$arflags =
$multilib =
*** linux-x32
$cc = gcc
$cflags = -mx32 -DL_ENDIAN -DTERMIO -O3 -Wall
$unistd =
$thread_cflag = -D_REENTRANT
$sys_id =
$lflags = -ldl
$bn_ops = SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT DES_UNROLL
$cpuid_obj = x86_64cpuid.o
$bn_obj = x86_64-gcc.o x86_64-mont.o x86_64-mont5.o x86_64-gf2m.o modexp512-x86_64.o
$des_obj =
$aes_obj = aes-x86_64.o vpaes-x86_64.o bsaes-x86_64.o aesni-x86_64.o aesni-sha1-x86_64.o
$bf_obj =
$md5_obj = md5-x86_64.o
$sha1_obj = sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o
$cast_obj =
$rc4_obj = rc4-x86_64.o rc4-md5-x86_64.o
$rmd160_obj =
$rc5_obj =
$wp_obj = wp-x86_64.o
$cmll_obj = cmll-x86_64.o cmll_misc.o
$modes_obj = ghash-x86_64.o
$engines_obj = e_padlock-x86_64.o
$perlasm_scheme = elf
$dso_scheme = dlfcn
$shared_target= linux-shared
$shared_cflag = -fPIC
$shared_ldflag = -mx32
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
$ranlib =
$arflags =
$multilib = x32
*** linux-x86_64
$cc = gcc
$cflags = -m64 -DL_ENDIAN -DTERMIO -O3 -Wall
...
...
crypto/bn/asm/x86_64-gcc.c
浏览文件 @
be0d31b1
...
...
@@ -55,7 +55,7 @@
* machine.
*/
#if
def _WIN64
#if
defined(_WIN64) || !defined(__LP64__)
#define BN_ULONG unsigned long long
#else
#define BN_ULONG unsigned long
...
...
@@ -184,20 +184,22 @@ BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d)
}
BN_ULONG
bn_add_words
(
BN_ULONG
*
rp
,
const
BN_ULONG
*
ap
,
const
BN_ULONG
*
bp
,
int
n
)
{
BN_ULONG
ret
=
0
,
i
=
0
;
{
BN_ULONG
ret
;
size_t
i
=
0
;
if
(
n
<=
0
)
return
0
;
asm
(
" subq %2,%2
\n
"
" subq %0,%0
\n
"
/* clear carry */
" jmp 1f
\n
"
".p2align 4
\n
"
"1: movq (%4,%2,8),%0
\n
"
" adcq (%5,%2,8),%0
\n
"
" movq %0,(%3,%2,8)
\n
"
" lea
q
1(%2),%2
\n
"
" lea 1(%2),%2
\n
"
" loop 1b
\n
"
" sbbq %0,%0
\n
"
:
"=
&a"
(
ret
),
"+c"
(
n
),
"=&
r"
(
i
)
:
"=
r"
(
ret
),
"+c"
(
n
),
"+
r"
(
i
)
:
"r"
(
rp
),
"r"
(
ap
),
"r"
(
bp
)
:
"cc"
);
...
...
@@ -207,20 +209,22 @@ BN_ULONG bn_add_words (BN_ULONG *rp, const BN_ULONG *ap, const BN_ULONG *bp,int
#ifndef SIMICS
BN_ULONG
bn_sub_words
(
BN_ULONG
*
rp
,
const
BN_ULONG
*
ap
,
const
BN_ULONG
*
bp
,
int
n
)
{
BN_ULONG
ret
=
0
,
i
=
0
;
{
BN_ULONG
ret
;
size_t
i
=
0
;
if
(
n
<=
0
)
return
0
;
asm
(
" subq %2,%2
\n
"
" subq %0,%0
\n
"
/* clear borrow */
" jmp 1f
\n
"
".p2align 4
\n
"
"1: movq (%4,%2,8),%0
\n
"
" sbbq (%5,%2,8),%0
\n
"
" movq %0,(%3,%2,8)
\n
"
" lea
q
1(%2),%2
\n
"
" lea 1(%2),%2
\n
"
" loop 1b
\n
"
" sbbq %0,%0
\n
"
:
"=
&a"
(
ret
),
"+c"
(
n
),
"=&
r"
(
i
)
:
"=
r"
(
ret
),
"+c"
(
n
),
"+
r"
(
i
)
:
"r"
(
rp
),
"r"
(
ap
),
"r"
(
bp
)
:
"cc"
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录