summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2020-06-30 09:00:29 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2020-07-03 15:01:33 +0000
commit582ec292af89f1e7207387cf8655f4acf529a8e0 (patch)
treee54076bb9e031f9aa5d0ead6ef5d8cf337feb38c
parentb57d48a0a30be3a015191159f6a85a838417fedf (diff)
tcwg_gnu-build.sh: Use results comparison scripts from gcc-compare-results
They are based on GCC's compare_tests but support a list of unstable tests. Change-Id: Icc582846d2cdd5df895cad373e3021fc7e154fbd
-rwxr-xr-xtcwg_gnu-build.sh29
1 files changed, 23 insertions, 6 deletions
diff --git a/tcwg_gnu-build.sh b/tcwg_gnu-build.sh
index 2e6f45e4..0bef14a4 100755
--- a/tcwg_gnu-build.sh
+++ b/tcwg_gnu-build.sh
@@ -119,17 +119,34 @@ no_regression_p ()
fi
local res
- if ! echo "${rr[components]}" | tr ' ' '\n' | grep -q "^gcc\$"; then
- # We use GCC's comparison script, so make sure we have a copy (may
- # not be the case when we are just checking binutils)
- clone_or_update_repo gcc master git://gcc.gnu.org/git/gcc.git
- fi
+
+ # We use our modified version of GCC's comparison script
+ clone_or_update_repo gcc-compare-results master https://git.linaro.org/toolchain/gcc-compare-results.git
+
# (defined by init_step in jenkins-helpers)
# shellcheck disable=SC2154
- gcc/contrib/compare_tests $sumfiles_base $sumfiles_new \
+ gcc-compare-results/compare_tests -compr none -pass-thresh 0.95 \
+ $sumfiles_base $sumfiles_new \
| sed -e "s/^/# /" | tee $run_step_artifacts/results.regressions &
res=0 && wait $! || res=$?
+ # Handle return codes in the same way as in compare_jobs.sh from
+ # gcc-compare-results
+ case $res in
+ # Regression, No common logs, extra logs or build failed
+ 2|3|4|5)
+ res=1
+ ;;
+ # No change or improvement
+ 0|1)
+ res=0
+ ;;
+ *)
+ assert_with_msg "Unknown results comparison status: $res" false
+ res=1
+ ;;
+ esac
+
if [ $res -ne 0 ]; then
return 1
fi