Add test for unified asm syntax
This is a premeptive strike to ensure no surprises when divided syntax is deprecatedpull/239/head
parent
8b09565b6e
commit
bca0fa6a9e
70
cryptest.sh
70
cryptest.sh
|
|
@ -503,6 +503,16 @@ if [[ (-z "$HAVE_LDGOLD") ]]; then
|
|||
fi
|
||||
fi
|
||||
|
||||
# GCC unified syntax for ASM. Divided syntax is being deprecated
|
||||
if [[ (-z "$HAVE_UNIFIED_ASM") ]]; then
|
||||
HAVE_UNIFIED_ASM=0
|
||||
rm -f "$TMP/adhoc.exe" > /dev/null 2>&1
|
||||
"$CXX" -DCRYPTOPP_ADHOC_MAIN -masm-syntax-unified adhoc.cpp -o "$TMP/adhoc.exe" > /dev/null 2>&1
|
||||
if [[ "$?" -eq "0" ]]; then
|
||||
HAVE_UNIFIED_ASM=1
|
||||
fi
|
||||
fi
|
||||
|
||||
# ARMv7 and ARMv8, including NEON, CRC32 and Crypto extensions
|
||||
if [[ ("$IS_ARM32" -ne "0" || "$IS_ARM64" -ne "0") ]]; then
|
||||
ARM_FEATURES=$(cat /proc/cpuinfo 2>&1 | "$AWK" '{IGNORECASE=1}{if ($1 == "Features") print}' | cut -f 2 -d ':')
|
||||
|
|
@ -684,6 +694,9 @@ fi
|
|||
if [[ "$HAVE_LDGOLD" -ne "0" ]]; then
|
||||
echo "HAVE_LDGOLD: $HAVE_LDGOLD" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
if [[ "$HAVE_UNIFIED_ASM" -ne "0" ]]; then
|
||||
echo "HAVE_UNIFIED_ASM: $HAVE_UNIFIED_ASM" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
|
||||
# -O3, -O5 and -Os
|
||||
echo | tee -a "$TEST_RESULTS"
|
||||
|
|
@ -2055,6 +2068,63 @@ if [[ "$HAVE_LDGOLD" -ne "0" ]]; then
|
|||
fi
|
||||
fi
|
||||
|
||||
############################################
|
||||
# Build with Unified ASM
|
||||
if [[ "$HAVE_UNIFIED_ASM" -ne "0" ]]; then
|
||||
|
||||
############################################
|
||||
# Debug build
|
||||
echo
|
||||
echo "************************************" | tee -a "$TEST_RESULTS"
|
||||
echo "Testing: debug, unified asm syntax" | tee -a "$TEST_RESULTS"
|
||||
echo
|
||||
|
||||
"$MAKE" clean > /dev/null 2>&1
|
||||
rm -f adhoc.cpp > /dev/null 2>&1
|
||||
|
||||
CXXFLAGS="$DEBUG_CXXFLAGS ${PLATFORM_CXXFLAGS[@]} -masm-syntax-unified ${RETAINED_CXXFLAGS[@]} ${DEPRECATED_CXXFLAGS[@]}"
|
||||
CXX="$CXX" CXXFLAGS="$CXXFLAGS" "$MAKE" "${MAKEARGS[@]}" static dynamic cryptest.exe 2>&1 | tee -a "$TEST_RESULTS"
|
||||
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to make cryptest.exe" | tee -a "$TEST_RESULTS"
|
||||
else
|
||||
./cryptest.exe v 2>&1 | tee -a "$TEST_RESULTS"
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to execute validation suite" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
./cryptest.exe tv all 2>&1 | tee -a "$TEST_RESULTS"
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to execute test vectors" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
fi
|
||||
|
||||
############################################
|
||||
# Release build
|
||||
echo
|
||||
echo "************************************" | tee -a "$TEST_RESULTS"
|
||||
echo "Testing: release, unified asm syntax" | tee -a "$TEST_RESULTS"
|
||||
echo
|
||||
|
||||
"$MAKE" clean > /dev/null 2>&1
|
||||
rm -f adhoc.cpp > /dev/null 2>&1
|
||||
|
||||
CXXFLAGS="$RELEASE_CXXFLAGS ${PLATFORM_CXXFLAGS[@]} -masm-syntax-unified ${RETAINED_CXXFLAGS[@]} ${DEPRECATED_CXXFLAGS[@]}"
|
||||
CXX="$CXX" CXXFLAGS="$CXXFLAGS" "$MAKE" "${MAKEARGS[@]}" static dynamic cryptest.exe 2>&1 | tee -a "$TEST_RESULTS"
|
||||
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to make cryptest.exe" | tee -a "$TEST_RESULTS"
|
||||
else
|
||||
./cryptest.exe v 2>&1 | tee -a "$TEST_RESULTS"
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to execute validation suite" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
./cryptest.exe tv all 2>&1 | tee -a "$TEST_RESULTS"
|
||||
if [[ ("${PIPESTATUS[0]}" -ne "0") ]]; then
|
||||
echo "ERROR: failed to execute test vectors" | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
############################################
|
||||
# Build at -O3
|
||||
if [[ "$HAVE_O3" -ne "0" ]]; then
|
||||
|
|
|
|||
Loading…
Reference in New Issue