thread_scheme => "(unknown)", # Assume we don't know
thread_defines => [],
- wp_asm_src => "wp_block.c",
cmll_asm_src => "camellia.c cmll_misc.c cmll_cbc.c",
modes_asm_src => "",
padlock_asm_src => "",
x86_asm => {
template => 1,
- wp_asm_src => "wp_block.c wp-mmx.s",
cmll_asm_src => "cmll-x86.s",
modes_asm_src => "ghash-x86.s",
padlock_asm_src => "e_padlock-x86.s",
},
x86_64_asm => {
template => 1,
- wp_asm_src => "wp-x86_64.s",
cmll_asm_src => "cmll-x86_64.s cmll_misc.c",
modes_asm_src => "ghash-x86_64.s aesni-gcm-x86_64.s",
padlock_asm_src => "e_padlock-x86_64.s",
export vars as
accessor functions.
- wp_asm_src => Assembler implementation of core WHIRLPOOL
- functions.
cmll_asm_src => Assembler implementation of core CAMELLIA
functions.
Defaults to 'camellia.c cmll_misc.c cmll_cbc.c'
if ($target{keccak1600_asm_src} ne $table{DEFAULTS}->{keccak1600_asm_src}) {
push @{$config{lib_defines}}, "KECCAK1600_ASM";
}
- if ($target{wp_asm_src} =~ /mmx/) {
- if ($config{processor} eq "386") {
- $target{wp_asm_src}=$table{DEFAULTS}->{wp_asm_src};
- } elsif (!$disabled{"whirlpool"}) {
- push @{$config{lib_defines}}, "WHIRLPOOL_ASM";
- }
- }
if ($target{modes_asm_src} =~ /ghash-/) {
push @{$config{lib_defines}}, "GHASH_ASM";
}
"loutflag",
"ex_libs",
"bn_ops",
- "wp_asm_src",
"cmll_asm_src",
"modes_asm_src",
"padlock_asm_src",
LIBS=../../libcrypto
-SOURCE[../../libcrypto]=wp_dgst.c {- $target{wp_asm_src} -}
+
+$WPASM=wp_block.c
+IF[{- !$disabled{asm} -}]
+ IF[{- $config{processor} ne "386" -}]
+ $WPASM_x86=wp_block.c wp-mmx.s
+ $WPDEF_x86=WHIRLPOOL_ASM
+ ENDIF
+ $WPASM_x86_64=wp-x86_64.s
+ $WPDEF_x86_64=WHIRLPOOL_ASM
+
+ # Now that we have defined all the arch specific variables, use the
+ # appropriate one, and define the appropriate macros
+ IF[$WPASM_{- $target{asm_arch} -}]
+ $WPASM=$WPASM_{- $target{asm_arch} -}
+ $WPDEF=$WPDEF_{- $target{asm_arch} -}
+ ENDIF
+ENDIF
+
+SOURCE[../../libcrypto]=wp_dgst.c $WPASM
+DEFINE[../../libcrypto]=$WPDEF
GENERATE[wp-mmx.s]=asm/wp-mmx.pl \
$(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)