summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2019-03-01 14:47:37 +0000
committerMaxim Kuvyrkov <maxim.kuvyrkov@linaro.org>2019-03-06 12:43:49 +0000
commit80ad925f2361f9758e30a5931ff2fd837ae04904 (patch)
tree38e6b931f4d7e950008557445ddaf1a4f1425148
parent22f96d2f384c65231f7e6be093dee2cd8eee7c8b (diff)
tcwg_bmk-build.sh: Use ABE's sysroot and binutils for LLVM's build
Change-Id: I1b025757b2f4b1f845b75b88eac5004f3a186a92
-rw-r--r--round-robin.sh11
-rwxr-xr-xtcwg_bmk-build.sh37
2 files changed, 26 insertions, 22 deletions
diff --git a/round-robin.sh b/round-robin.sh
index 501baa28..fe0c1a69 100644
--- a/round-robin.sh
+++ b/round-robin.sh
@@ -273,6 +273,8 @@ build_llvm ()
(
set -euf -o pipefail
+ local use_abe=${1-false}
+
clone_repo llvm
# Copy only components from the monorepo that are required for kernel build
@@ -306,8 +308,13 @@ EOF
export PATH=$(pwd)/bin:$PATH
- # Remove stale build directories. We rely on ccache for fast rebuilds.
- rm -rf llvm-build llvm-install
+ # Freshen up build and install directories. We rely on ccache for fast rebuilds.
+ if $use_abe; then
+ rsync -a --del abe/builds/destdir/x86_64-unknown-linux-gnu/ llvm-install/
+ else
+ rm -rf llvm-install
+ fi
+ rm -rf llvm-build
mkdir -p llvm-build
cd llvm-build
diff --git a/tcwg_bmk-build.sh b/tcwg_bmk-build.sh
index 73aa4ddb..082ef32f 100755
--- a/tcwg_bmk-build.sh
+++ b/tcwg_bmk-build.sh
@@ -29,7 +29,7 @@ rr[target]=${rr[target]-${ci_config[2]}}
cflags=${cflags-${ci_config[4]}}
case "${rr[toolchain]}" in
- llvm) rr[components]="llvm" ;;
+ llvm) rr[components]="binutils gcc glibc llvm" ;;
gnu) rr[components]="binutils gcc glibc" ;;
*) assert false ;;
esac
@@ -64,11 +64,11 @@ case "${rr[mode]}" in
default_finish_at="update_baseline"
;;
"bisect")
- case "${rr[toolchain]}:$(print_single_updated_component)" in
- gnu:binutils) default_start_at="build_abe-binutils" ;;
- gnu:gcc) default_start_at="build_abe-stage1" ;;
- gnu:glibc) default_start_at="build_abe-glibc" ;;
- llvm:llvm) default_start_at="build_llvm" ;;
+ case "$(print_single_updated_component)" in
+ binutils) default_start_at="build_abe-binutils" ;;
+ gcc) default_start_at="build_abe-stage1" ;;
+ glibc) default_start_at="build_abe-glibc" ;;
+ llvm) default_start_at="build_llvm-true" ;;
*) assert false ;;
esac
default_finish_at="check_regression"
@@ -104,21 +104,21 @@ benchmark ()
local bench_list bin cc gnu_target sysroot
gnu_target=$(print_gnu_target ${rr[target]})
+ sysroot="$(pwd)/abe/sysroots/$gnu_target"
case "${rr[toolchain]}" in
llvm)
bench_list="c_and_cxx"
- bmk_flags="$bmk_flags --target=$gnu_target"
+ bmk_flags="$bmk_flags --target=$gnu_target --sysroot=$sysroot"
bin="$(pwd)/llvm-install/bin"
cc="$bin/"
- sysroot=""
;;
gnu)
bench_list="all"
bin="$(pwd)/abe/builds/destdir/x86_64-unknown-linux-gnu/bin"
cc="$bin/$gnu_target-"
- sysroot="ssh://$ssh_host:$ssh_port:$(pwd)/abe/sysroots/$gnu_target"
;;
esac
+ sysroot="ssh://$ssh_host:$ssh_port:$sysroot"
remote_exec "ci.linaro.org:2222::-l $USER@linaro.org" \
build tcwg-benchmark -s -v \
@@ -127,6 +127,7 @@ benchmark ()
-p testmode=benchmark \
-p displaytag="${rr[ci_config]}" \
-p toolchain_url=ssh://$ssh_host:$ssh_port:$cc \
+ -p toolchain_type=${rr[toolchain]} \
-p sysroot="$sysroot" \
-p results_id="$results_id" \
-p target_list="$hw" \
@@ -187,18 +188,14 @@ no_regression_p ()
}
run_step stop_on_fail -10 reset_artifacts
+run_step stop_on_fail x prepare_abe
+run_step skip_on_fail -9 build_abe binutils
+run_step skip_on_fail -8 build_abe stage1
+run_step skip_on_fail -7 build_abe linux
+run_step skip_on_fail -6 build_abe glibc
+run_step skip_on_fail -5 build_abe stage2
case "${rr[toolchain]}" in
- gnu)
- run_step stop_on_fail x prepare_abe
- run_step skip_on_fail -9 build_abe binutils
- run_step skip_on_fail -8 build_abe stage1
- run_step skip_on_fail -7 build_abe linux
- run_step skip_on_fail -6 build_abe glibc
- run_step skip_on_fail -5 build_abe stage2
- ;;
- llvm)
- run_step skip_on_fail -1 build_llvm
- ;;
+ llvm) run_step skip_on_fail -1 build_llvm true ;;
esac
run_step skip_on_fail 0 benchmark
run_step reset_on_fail x check_regression