|
|
@@ -201,6 +201,21 @@ $architecture = zarch if ($data =~ /ARCH_ZARCH/); |
|
|
|
$binformat = bin32; |
|
|
|
$binformat = bin64 if ($data =~ /BINARY_64/); |
|
|
|
|
|
|
|
$no_avx512= 0; |
|
|
|
if (($architecture eq "x86") || ($architecture eq "x86_64")) { |
|
|
|
$code = '"vaddps %zmm1, %zmm0, %zmm0"'; |
|
|
|
print $tmpf "void main(void){ __asm__ volatile($code); }\n"; |
|
|
|
$args = " -o $tmpf.o -x c $tmpf"; |
|
|
|
my @cmd = ("$compiler_name $args"); |
|
|
|
system(@cmd) == 0; |
|
|
|
if ($? != 0) { |
|
|
|
$no_avx512 = 1; |
|
|
|
} else { |
|
|
|
$no_avx512 = 0; |
|
|
|
} |
|
|
|
unlink("tmpf.o"); |
|
|
|
} |
|
|
|
|
|
|
|
$data = `$compiler_name -S ctest1.c && grep globl ctest1.s | head -n 1 && rm -f ctest1.s`; |
|
|
|
|
|
|
|
$data =~ /globl\s([_\.]*)(.*)/; |
|
|
@@ -288,6 +303,7 @@ print MAKEFILE "CROSS=1\n" if $cross != 0; |
|
|
|
print MAKEFILE "CEXTRALIB=$linker_L $linker_l $linker_a\n"; |
|
|
|
print MAKEFILE "HAVE_MSA=1\n" if $have_msa eq 1; |
|
|
|
print MAKEFILE "MSA_FLAGS=$msa_flags\n" if $have_msa eq 1; |
|
|
|
print MAKEFILE "NO_AVX512=1\n" if $no_avx512 eq 1; |
|
|
|
|
|
|
|
$os =~ tr/[a-z]/[A-Z]/; |
|
|
|
$architecture =~ tr/[a-z]/[A-Z]/; |
|
|
|