summaryrefslogtreecommitdiff
path: root/jenkins
diff options
context:
space:
mode:
authorTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-11-23 20:23:04 +0000
committerTCWG BuildSlave <tcwg-buildslave@linaro.org>2023-11-23 20:23:51 +0000
commit9995bacc3a751f7c233b895fd5f186ab660b9d94 (patch)
tree9a54cd864caab7e19862f9b24e43a98e4a389551 /jenkins
parentba4aa8ee26492c44798be802d57576c6c5d6ba4d (diff)
onsuccess: #81: 1: [TCWG CI] https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/
Results : | # reset_artifacts: | -10 | # build_bmk_llvm: | -3 | # benchmark -- -O2_marm: | 1 check_regression status : 0
Diffstat (limited to 'jenkins')
-rw-r--r--jenkins/build-name2
-rw-r--r--jenkins/notify-full.log3684
-rw-r--r--jenkins/notify-init.log130
-rw-r--r--jenkins/rewrite.log22
-rw-r--r--jenkins/run-build.env9
5 files changed, 3722 insertions, 125 deletions
diff --git a/jenkins/build-name b/jenkins/build-name
index da0d1a8..ea8eec3 100644
--- a/jenkins/build-name
+++ b/jenkins/build-name
@@ -1 +1 @@
-#79-R# cpuxalan_r_base.default,523.xalancbmk_r failed to run-force
+#81-llvm-R1
diff --git a/jenkins/notify-full.log b/jenkins/notify-full.log
index 30eaf46..a16b7a0 100644
--- a/jenkins/notify-full.log
+++ b/jenkins/notify-full.log
@@ -1,27 +1,27 @@
++ pwd
++ cat
-+ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193' ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh
++ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814' ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh
+ set -euf -o pipefail
+ local host
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -d: -f 1
+ host=tcwg-snow_bmk-02
+ local port
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_4
+ local opts
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 4
-+ opts=-p38193
++ opts=-p38814
+ local env_vars
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 5
-+ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
++ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
+ shift
+ local -a cmd
+ cmd=()
@@ -58,10 +58,10 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q tcwg_bmk-build.sh
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_0
-+ ssh -p38193 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38193 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_0 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_4
++ ssh -p38814 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38814 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_4 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh'
-/home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh
+/home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts __TCWG_JIRA_TOKEN ijQW9spm0p7HwZnUtLFx7CCA __stage full __verbose true __build_script tcwg_bmk-build.sh
+ false
+ dryrun=
@@ -70,8 +70,8 @@
+ declare -a changed_components
+ declare print_commits_f print_result_f print_config_f print_last_icommit_f
+ dump_model_only=false
-# setup_notify_environment
+ setup_notify_environment
+# setup_notify_environment
+ echo '# setup_notify_environment'
+ top_artifacts=artifacts
++ get_current_manifest '{rr[ci_project]}'
@@ -81,21 +81,21 @@
++ get_current_manifest '{rr[ci_config]}'
++ get_manifest artifacts/manifest.sh '{rr[ci_config]}'
++ set +x
-# Debug traces :
+ ci_config=llvm-arm-master-O2
+# Debug traces :
+ echo '# Debug traces :'
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/77/
-+ echo '# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/77/'
+# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/
++ echo '# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/'
# Using dir : base-artifacts
+ echo '# Using dir : base-artifacts'
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/
-+ echo '# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/'
+# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/
++ echo '# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/'
# Using dir : artifacts
+ echo '# Using dir : artifacts'
@@ -106,12 +106,12 @@
+ declare -Ag pw
+ '[' ignore = precommit ']'
+ check_source_changes
-# check_source_changes
+ echo '# check_source_changes'
+# check_source_changes
++ get_current_manifest '{rr[update_baseline]}'
++ get_manifest artifacts/manifest.sh '{rr[update_baseline]}'
++ set +x
-+ '[' force '!=' init ']'
++ '[' onsuccess '!=' init ']'
+ IFS=' '
+ read -r -a changed_components
++ print_changed_components
@@ -121,18 +121,94 @@
+++ set -euf -o pipefail
+++ local c delim=
+++ for c in ${rr[components]}
-+++ '[' xbaseline '!=' xbaseline ']'
++++ '[' xhttps://github.com/llvm/llvm-project.git#main '!=' xbaseline ']'
++++ echo -ne llvm
++++ delim=' '
+++ echo
+++ for c in $(print_updated_components)
++++ get_current_git llvm_rev
++++ set -euf -o pipefail
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat artifacts/git/llvm_rev
++++ get_baseline_git llvm_rev
++++ set -euf -o pipefail
++++ local base_artifacts=base-artifacts
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat base-artifacts/git/llvm_rev
+++ '[' xa502dddfd0da8ccefd2cee15599b49f6eaf74efa '!=' xe13bed4c5f3544c076ce57e36d9a11eefa5a7815 ']'
+++ echo -ne llvm
+++ delim=' '
++ echo
+ local c base_rev cur_rev c_commits
-+ '[' 0 = 0 ']'
-+ change_kind=no_change
-+ changed_single_component=
-# Debug traces :
++ '[' 1 = 0 ']'
++ '[' 1 = 1 ']'
++ changed_single_component=llvm
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ first_bad=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ last_good=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
++ local res
++ res=0
++ wait 44628
++ git -C llvm rev-parse --verify HEAD
++ assert_with_msg 'Cannot parse HEAD in repo llvm' '[' 0 = 0 ']'
++ set -euf -o pipefail +x
++ single_commit_p llvm
++ set -euf -o pipefail
++ local c=llvm
++ local base_rev cur_rev sha1
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ git -C llvm rev-parse 'a502dddfd0da8ccefd2cee15599b49f6eaf74efa^@'
++ for sha1 in $(git -C "$c" rev-parse "$cur_rev^@")
++ '[' 769bc11f684d376bff03649da41296a4fc710161 = e13bed4c5f3544c076ce57e36d9a11eefa5a7815 ']'
++ return 1
++ change_kind=single_component
+ echo '# Debug traces :'
-# change_kind=no_change :
+# Debug traces :
+# change_kind=single_component : llvm
++ echo '# change_kind=single_component : llvm'
++ for c in "${changed_components[@]}"
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ git -C llvm rev-list --count e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ c_commits=586
+# rev for llvm : e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa (586 commits)
-+ echo '# change_kind=no_change : '
++ echo '# rev for llvm : e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa (586 commits)'
+ echo ''
+ setup_stages_to_run
+ '[' ignore = onregression ']'
@@ -159,7 +235,7 @@
+ echo '# post_interesting_commits'
# post_interesting_commits
+ local stage=init
-+ '[' no_change '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ '[' full '!=' full ']'
+ bmk_generate_extra_details
@@ -167,21 +243,21 @@
+ local artifacts_mail_dir
+ artifacts_mail_dir=artifacts/notify
+ local res=0
-+ wait 45151
-+ /home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/../bmk-scripts/output-bmk-results.py artifacts/results-vs-prev/compare-results-internal.csv artifacts/results-vs-prev/bmk-specific-variability.csv artifacts/notify/ sample build verbose
++ wait 44652
++ /home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/../bmk-scripts/output-bmk-results.py artifacts/results-vs-prev/compare-results-internal.csv artifacts/results-vs-prev/bmk-specific-variability.csv artifacts/notify/ sample build verbose
+ assert_with_msg 'ERROR while trying to regenerate bmk-data results. Aborting..' '[' 0 = 0 ']'
+ set -euf -o pipefail +x
+ check_if_first_report
+ declare -g first_icommit_to_report
+ first_icommit_to_report=false
-+ '[' xno_change '!=' xsingle_commit ']'
++ '[' xsingle_component '!=' xsingle_commit ']'
+ return
+ post_interesting_commits full
+ set -euf -o pipefail
# post_interesting_commits
+ echo '# post_interesting_commits'
+ local stage=full
-+ '[' no_change '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ true
+ generate_jira_dir
@@ -192,7 +268,7 @@
++ set -euf -o pipefail
++ local print_arg=--entry
++ shift 1
-++ '[' xno_change '!=' xsingle_commit ']'
+++ '[' xsingle_component '!=' xsingle_commit ']'
++ return 0
+ icommit_entry=
+ '[' '' '!=' '' ']'
@@ -212,7 +288,8 @@
++ '[' full '!=' full ']'
++ local improved_or_regressed
++ '[' -f artifacts/notify/exe.regression ']'
-++ improved_or_regressed=regression
+++ '[' -f artifacts/notify/symbol.regression ']'
+++ improved_or_regressed=improvement
++ declare -A changed_by_msg
++ changed_by_msg[size-regression]='grew in size by'
++ changed_by_msg[size-improvement]='reduced in size by'
@@ -222,28 +299,27 @@
++ changed_by_msg[num_vect_loops-improvement]='increased the number of vect loops by'
++ changed_by_msg[num_sve_loops-regression]='reduced the number of sve instructions by'
++ changed_by_msg[num_sve_loops-improvement]='increased the number of sve instructions by'
-++ changed_by='slowed down by'
+++ changed_by='speeds up by'
++ case ${rr[metric_id]} in
++ exe_threshold=3
++ symbol_threshold=15
++ case "$print_arg" in
-++ assert_with_msg 'Builds with infra problems should never get here' '[' 1 '!=' 125 ']'
+++ assert_with_msg 'Builds with infra problems should never get here' '[' 0 '!=' 125 ']'
++ set -euf -o pipefail +x
++ local metric bmk symbol short_diag long_diag
-++ '[' -f artifacts/notify/exe.regression ']'
-++ IFS=,
-++ read metric bmk symbol short_diag long_diag
-+++ head -n1 artifacts/notify/exe.regression
-++ echo '523.xalancbmk_r failed to run'
+++ '[' -f artifacts/notify/exe.improvement ']'
+++ '[' -f artifacts/notify/symbol.improvement ']'
+++ short_diag='No change'
+++ echo 'No change'
++ print_artifacts_url 'notify/mail-body.txt/*view*/'
++ set -euf -o pipefail
++ local url
+++ get_current_manifest BUILD_URL
+++ get_manifest artifacts/manifest.sh BUILD_URL
+++ set +x
-++ url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/artifact/artifacts
+++ url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/artifact/artifacts
++ '[' '' '!=' '' ']'
-++ echo 'https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/artifact/artifacts/notify/mail-body.txt/*view*/'
+++ echo 'https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/artifact/artifacts/notify/mail-body.txt/*view*/'
# print all notification files
+ echo '# print all notification files'
+ true
@@ -251,16 +327,3416 @@
+ set -euf -o pipefail
+ print_mail_recipients
+ set -euf -o pipefail
-+ local c=
++ local c=llvm
++ '[' llvm = '' ']'
++ local -A emails
++ emails["tcwg-validation@linaro.org"]=bcc
++ emails["author"]=cc
++ emails["committer"]=to
++ case "$ci_project/$ci_config:$c" in
++ emails["author"]=no
++ emails["committer"]=no
++ emails["maxim.kuvyrkov@linaro.org"]=to
++ local c email base_rev cur_rev
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ read -r email
+++ git -C llvm log --pretty=%ae e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ local precommit_postcommit=postcommit
+ '[' '' = '' ']'
-+ echo bcc:tcwg-validation@linaro.org
-+ return 0
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ read -r email
+++ git -C llvm log --pretty=%ce e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ emails["$email"]=no
++ read -r email
++ unset 'emails[author]' 'emails[committer]'
++ local type
++ recipients=()
++ local -a recipients
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=bcc
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ recipients+=("$type:$email")
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=to
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ recipients+=("$email")
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ for email in "${!emails[@]}"
++ type=no
++ case "$precommit_postcommit:$type" in
++ case "$type" in
++ IFS=,
++ echo bcc:tcwg-validation@linaro.org,maxim.kuvyrkov@linaro.org
++ print_commits --oneline
++ set -euf -o pipefail
++ false
++ local print_arg=--oneline
-++ '[' no_change = no_change ']'
-++ echo 'baseline build'
+++ '[' single_component = no_change ']'
+++ local more_lines
+++ '[' single_component = single_commit ']'
+++ '[' single_component = single_component ']'
+++ local new_commits c base_rev cur_rev c_commits components
+++ local commits_or_patches
+++ '[' '' '!=' '' ']'
+++ commits_or_patches=commits
+++ new_commits=0
+++ for c in "${changed_components[@]}"
++++ get_baseline_git llvm_rev
++++ set -euf -o pipefail
++++ local base_artifacts=base-artifacts
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
++++ get_current_git llvm_rev
++++ set -euf -o pipefail
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat artifacts/git/llvm_rev
+++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++++ git -C llvm rev-list --count e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ c_commits=586
+++ new_commits=586
++++ echo llvm
++++ tr ' ' ,
+++ components=llvm
+++ echo '586 commits in llvm'
+++ '[' --oneline = --oneline ']'
++ return 0
++ bmk_print_result --oneline
++ set -euf -o pipefail
@@ -270,7 +3746,8 @@
++ '[' full '!=' full ']'
++ local improved_or_regressed
++ '[' -f artifacts/notify/exe.regression ']'
-++ improved_or_regressed=regression
+++ '[' -f artifacts/notify/symbol.regression ']'
+++ improved_or_regressed=improvement
++ declare -A changed_by_msg
++ changed_by_msg[size-regression]='grew in size by'
++ changed_by_msg[size-improvement]='reduced in size by'
@@ -280,21 +3757,20 @@
++ changed_by_msg[num_vect_loops-improvement]='increased the number of vect loops by'
++ changed_by_msg[num_sve_loops-regression]='reduced the number of sve instructions by'
++ changed_by_msg[num_sve_loops-improvement]='increased the number of sve instructions by'
-++ changed_by='slowed down by'
+++ changed_by='speeds up by'
++ case ${rr[metric_id]} in
++ exe_threshold=3
++ symbol_threshold=15
++ case "$print_arg" in
-++ assert_with_msg 'Builds with infra problems should never get here' '[' 1 '!=' 125 ']'
+++ assert_with_msg 'Builds with infra problems should never get here' '[' 0 '!=' 125 ']'
++ set -euf -o pipefail +x
++ local metric bmk symbol short_diag long_diag
-++ '[' -f artifacts/notify/exe.regression ']'
-++ IFS=,
-++ read metric bmk symbol short_diag long_diag
-+++ head -n1 artifacts/notify/exe.regression
-++ echo '523.xalancbmk_r failed to run'
+++ '[' -f artifacts/notify/exe.improvement ']'
+++ '[' -f artifacts/notify/symbol.improvement ']'
+++ short_diag='No change'
+++ echo 'No change'
++ bmk_print_config --oneline
-++ . /home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/tcwg_bmk-config.sh
+++ . /home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/tcwg_bmk-config.sh
+++ [[ -v rr[ci_project] ]]
+++ [[ -v rr[ci_config] ]]
+++ declare -A bmk_data
@@ -346,20 +3822,20 @@
++ case "$ci_config" in
++ echo 'arm O2'
++ return 0
-+ echo '[Linaro-TCWG-CI]' 'baseline build: 523.xalancbmk_r failed to run on arm O2'
++ echo '[Linaro-TCWG-CI]' '586 commits in llvm: No change on arm O2'
+ print_mail_body
+ local bad_artifacts_url good_artifacts_url
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-+ bad_artifacts_url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/artifact/artifacts
++ bad_artifacts_url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/artifact/artifacts
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-+ good_artifacts_url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/77/artifact/artifacts
++ good_artifacts_url=https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/artifact/artifacts
+ cat
++ bmk_print_config --short
-++ . /home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/tcwg_bmk-config.sh
+++ . /home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/tcwg_bmk-config.sh
+++ [[ -v rr[ci_project] ]]
+++ [[ -v rr[ci_config] ]]
+++ declare -A bmk_data
@@ -419,8 +3895,58 @@
++ set -euf -o pipefail
++ false
++ local print_arg=--short
-++ '[' no_change = no_change ']'
-++ echo 'baseline build'
+++ '[' single_component = no_change ']'
+++ local more_lines
+++ '[' single_component = single_commit ']'
+++ '[' single_component = single_component ']'
+++ local new_commits c base_rev cur_rev c_commits components
+++ local commits_or_patches
+++ '[' '' '!=' '' ']'
+++ commits_or_patches=commits
+++ new_commits=0
+++ for c in "${changed_components[@]}"
++++ get_baseline_git llvm_rev
++++ set -euf -o pipefail
++++ local base_artifacts=base-artifacts
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
++++ get_current_git llvm_rev
++++ set -euf -o pipefail
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat artifacts/git/llvm_rev
+++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++++ git -C llvm rev-list --count e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ c_commits=586
+++ new_commits=586
++++ echo llvm
++++ tr ' ' ,
+++ components=llvm
+++ echo '586 commits in llvm'
+++ '[' --short = --oneline ']'
+++ for c in "${changed_components[@]}"
++++ get_baseline_git llvm_rev
++++ set -euf -o pipefail
++++ local base_artifacts=base-artifacts
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat base-artifacts/git/llvm_rev
+++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
++++ get_current_git llvm_rev
++++ set -euf -o pipefail
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat artifacts/git/llvm_rev
+++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++++ git -C llvm rev-list --count e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ c_commits=586
+++ '[' '' '!=' '' ']'
+++ git -C llvm log -n 5 --oneline e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ '[' 586 -gt 5 ']'
+++ echo '... and 581 more commits in llvm'
+++ '[' '' '!=' '' ']'
++ return 0
++ bmk_print_result --short
++ set -euf -o pipefail
@@ -430,7 +3956,8 @@
++ '[' full '!=' full ']'
++ local improved_or_regressed
++ '[' -f artifacts/notify/exe.regression ']'
-++ improved_or_regressed=regression
+++ '[' -f artifacts/notify/symbol.regression ']'
+++ improved_or_regressed=improvement
++ declare -A changed_by_msg
++ changed_by_msg[size-regression]='grew in size by'
++ changed_by_msg[size-improvement]='reduced in size by'
@@ -440,25 +3967,18 @@
++ changed_by_msg[num_vect_loops-improvement]='increased the number of vect loops by'
++ changed_by_msg[num_sve_loops-regression]='reduced the number of sve instructions by'
++ changed_by_msg[num_sve_loops-improvement]='increased the number of sve instructions by'
-++ changed_by='slowed down by'
+++ changed_by='speeds up by'
++ case ${rr[metric_id]} in
++ exe_threshold=3
++ symbol_threshold=15
++ case "$print_arg" in
-++ '[' -f artifacts/notify/exe.regression ']'
-++ sort -gr -o artifacts/notify/exe.regression artifacts/notify/exe.regression
-++ echo 'the following benchmarks slowed down by more than 3%:'
-++ local metric exe symbol short_diag long_diag
-++ IFS=,
-++ read metric exe symbol short_diag long_diag
-++ echo '- 523.xalancbmk_r failed to run '
-++ '[' -f artifacts/notify/523.xalancbmk_r.symbols-regression ']'
-++ IFS=,
-++ read metric exe symbol short_diag long_diag
-++ '[' -f artifacts/notify/symbol.regression ']'
-++ '[' -f artifacts/notify/exe.regression ']'
+++ '[' -f artifacts/notify/exe.improvement ']'
+++ '[' -f artifacts/notify/symbol.improvement ']'
+++ '[' -f artifacts/notify/exe.improvement ']'
+++ '[' -f artifacts/notify/symbol.improvement ']'
+++ echo 'No change'
++ bmk_print_config --long
-++ . /home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/tcwg_bmk-config.sh
+++ . /home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/tcwg_bmk-config.sh
+++ [[ -v rr[ci_project] ]]
+++ [[ -v rr[ci_config] ]]
+++ declare -A bmk_data
@@ -554,7 +4074,7 @@
+++ case "$target" in
+++ target=arm-linux-gnueabihf
+++ echo arm-linux-gnueabihf
-+ '[' no_change '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ echo '# generate dashboard'
# generate dashboard
@@ -568,13 +4088,13 @@
+ return
+ post_dashboard_squad
# post_dashboard_squad
-+ echo '# post_dashboard_squad'
... Skipping
++ echo '# post_dashboard_squad'
+ false
+ echo '... Skipping'
+ return
+ generate_lnt_report
-+ wait 45243
++ wait 44797
+ set -euf -o pipefail
+ echo '# generate_lnt_report'
# generate_lnt_report
@@ -593,5 +4113,5 @@
+ false
+ false
+ false
-Full stage ran successfully.
+ echo 'Full stage ran successfully.'
+Full stage ran successfully.
diff --git a/jenkins/notify-init.log b/jenkins/notify-init.log
index 3bd0c40..aa2a98b 100644
--- a/jenkins/notify-init.log
+++ b/jenkins/notify-init.log
@@ -1,27 +1,27 @@
++ pwd
++ cat
-+ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193' ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh
++ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814' ./jenkins-scripts/round-robin-notify.sh '@@rr[top_artifacts]' artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh
+ set -euf -o pipefail
+ local host
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -d: -f 1
+ host=tcwg-snow_bmk-02
+ local port
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_4
+ local opts
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 4
-+ opts=-p38193
++ opts=-p38814
+ local env_vars
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 5
-+ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
++ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
+ shift
+ local -a cmd
+ cmd=()
@@ -58,10 +58,10 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q tcwg_bmk-build.sh
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_0
-+ ssh -p38193 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38193 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_0 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_4
++ ssh -p38814 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38814 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_4 && exec ./jenkins-scripts/round-robin-notify.sh @@rr\[top_artifacts\] artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh'
-/home/tcwg-buildslave/workspace/tcwg_bmk_0/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh
+/home/tcwg-buildslave/workspace/tcwg_bmk_4/jenkins-scripts/round-robin-notify.sh @@rr[top_artifacts] artifacts --notify ignore __stage init __verbose true __build_script tcwg_bmk-build.sh
+ false
+ dryrun=
@@ -87,15 +87,15 @@
++ get_baseline_manifest BUILD_URL
++ get_manifest base-artifacts/manifest.sh BUILD_URL false
++ set +x
-# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/77/
-+ echo '# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/77/'
-+ echo '# Using dir : base-artifacts'
+# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/
# Using dir : base-artifacts
++ echo '# Baseline : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/'
++ echo '# Using dir : base-artifacts'
++ get_current_manifest BUILD_URL
++ get_manifest artifacts/manifest.sh BUILD_URL
++ set +x
-# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/
-+ echo '# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/79/'
+# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/
++ echo '# Artifacts : https://ci.linaro.org/job/tcwg_bmk-code_speed-cpu2017rate--llvm-arm-master-O2-build/81/'
# Using dir : artifacts
+ echo '# Using dir : artifacts'
@@ -111,7 +111,7 @@
++ get_current_manifest '{rr[update_baseline]}'
++ get_manifest artifacts/manifest.sh '{rr[update_baseline]}'
++ set +x
-+ '[' force '!=' init ']'
++ '[' onsuccess '!=' init ']'
+ IFS=' '
+ read -r -a changed_components
++ print_changed_components
@@ -121,18 +121,94 @@
+++ set -euf -o pipefail
+++ local c delim=
+++ for c in ${rr[components]}
-+++ '[' xbaseline '!=' xbaseline ']'
++++ '[' xhttps://github.com/llvm/llvm-project.git#main '!=' xbaseline ']'
++++ echo -ne llvm
++++ delim=' '
+++ echo
+++ for c in $(print_updated_components)
++++ get_current_git llvm_rev
++++ set -euf -o pipefail
++++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat artifacts/git/llvm_rev
++++ get_baseline_git llvm_rev
++++ set -euf -o pipefail
++++ local base_artifacts=base-artifacts
++++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
++++ set -euf -o pipefail +x
++++ cat base-artifacts/git/llvm_rev
+++ '[' xa502dddfd0da8ccefd2cee15599b49f6eaf74efa '!=' xe13bed4c5f3544c076ce57e36d9a11eefa5a7815 ']'
+++ echo -ne llvm
+++ delim=' '
++ echo
+ local c base_rev cur_rev c_commits
++ '[' 1 = 0 ']'
++ '[' 1 = 1 ']'
++ changed_single_component=llvm
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ first_bad=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ last_good=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
++ local res
++ res=0
++ wait 44515
++ git -C llvm rev-parse --verify HEAD
++ assert_with_msg 'Cannot parse HEAD in repo llvm' '[' 0 = 0 ']'
++ set -euf -o pipefail +x
++ single_commit_p llvm
++ set -euf -o pipefail
++ local c=llvm
++ local base_rev cur_rev sha1
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ git -C llvm rev-parse 'a502dddfd0da8ccefd2cee15599b49f6eaf74efa^@'
++ for sha1 in $(git -C "$c" rev-parse "$cur_rev^@")
++ '[' 769bc11f684d376bff03649da41296a4fc710161 = e13bed4c5f3544c076ce57e36d9a11eefa5a7815 ']'
++ return 1
++ change_kind=single_component
# Debug traces :
-# change_kind=no_change :
-+ '[' 0 = 0 ']'
-+ change_kind=no_change
-+ changed_single_component=
+ echo '# Debug traces :'
-+ echo '# change_kind=no_change : '
+# change_kind=single_component : llvm
++ echo '# change_kind=single_component : llvm'
++ for c in "${changed_components[@]}"
+++ get_baseline_git llvm_rev
+++ set -euf -o pipefail
+++ local base_artifacts=base-artifacts
+++ assert_with_msg 'ERROR: No llvm_rev in baseline git' '[' -f base-artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat base-artifacts/git/llvm_rev
++ base_rev=e13bed4c5f3544c076ce57e36d9a11eefa5a7815
+++ get_current_git llvm_rev
+++ set -euf -o pipefail
+++ assert_with_msg 'ERROR: No llvm_rev in current git' '[' -f artifacts/git/llvm_rev ']'
+++ set -euf -o pipefail +x
+++ cat artifacts/git/llvm_rev
++ cur_rev=a502dddfd0da8ccefd2cee15599b49f6eaf74efa
+++ git -C llvm rev-list --count e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa
++ c_commits=586
+# rev for llvm : e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa (586 commits)
++ echo '# rev for llvm : e13bed4c5f3544c076ce57e36d9a11eefa5a7815..a502dddfd0da8ccefd2cee15599b49f6eaf74efa (586 commits)'
+ echo ''
+ setup_stages_to_run
+ '[' ignore = onregression ']'
@@ -156,12 +232,12 @@
+ generate_extra_details_f=bmk_generate_extra_details
+ post_interesting_commits init
+ set -euf -o pipefail
-# post_interesting_commits
+ echo '# post_interesting_commits'
+# post_interesting_commits
+ local stage=init
-+ '[' no_change '!=' single_commit ']'
++ '[' single_component '!=' single_commit ']'
+ return
+ '[' init '!=' full ']'
-+ echo 'Init stage ran successfully.'
Init stage ran successfully.
++ echo 'Init stage ran successfully.'
+ exit 0
diff --git a/jenkins/rewrite.log b/jenkins/rewrite.log
index 18276e8..0d55c22 100644
--- a/jenkins/rewrite.log
+++ b/jenkins/rewrite.log
@@ -1,27 +1,27 @@
++ pwd
++ cat
-+ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193' ./jenkins-scripts/round-robin-baseline.sh '@@rr[top_artifacts]' artifacts __build_script tcwg_bmk-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100
++ remote_exec 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814' ./jenkins-scripts/round-robin-baseline.sh '@@rr[top_artifacts]' artifacts __build_script tcwg_bmk-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100
+ set -euf -o pipefail
+ local host
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -d: -f 1
+ host=tcwg-snow_bmk-02
+ local port
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 2
+ port=
+ local dir
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 3
-+ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_0
++ dir=/home/tcwg-buildslave/workspace/tcwg_bmk_4
+ local opts
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 4
-+ opts=-p38193
++ opts=-p38814
+ local env_vars
-++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_0:-p38193:ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
+++ echo 'tcwg-snow_bmk-02::/home/tcwg-buildslave/workspace/tcwg_bmk_4:-p38814:ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
++ cut -s -d: -f 5
-+ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38193'
++ env_vars='ssh_host=tcwg-snow_bmk-02 ssh_port=38814'
+ shift
+ local -a cmd
+ cmd=()
@@ -58,8 +58,8 @@
+ for i in "$@"
+ cmd+=("$(printf '%q' "$i")")
++ printf %q 100
-++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_0
-+ ssh -p38193 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38193 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_0 && exec ./jenkins-scripts/round-robin-baseline.sh @@rr\[top_artifacts\] artifacts __build_script tcwg_bmk-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100'
+++ printf %q /home/tcwg-buildslave/workspace/tcwg_bmk_4
++ ssh -p38814 tcwg-snow_bmk-02 'export ssh_host=tcwg-snow_bmk-02 ssh_port=38814 && cd /home/tcwg-buildslave/workspace/tcwg_bmk_4 && exec ./jenkins-scripts/round-robin-baseline.sh @@rr\[top_artifacts\] artifacts __build_script tcwg_bmk-build.sh __push_base_artifacts true __rewrite_base_artifacts true __rewrite_num 100'
+ declare -g rewrite_base_artifacts_first=true
+ true
+ update_baseline
diff --git a/jenkins/run-build.env b/jenkins/run-build.env
index 160b6e2..b460024 100644
--- a/jenkins/run-build.env
+++ b/jenkins/run-build.env
@@ -1,4 +1,4 @@
-build_name="#79"
+build_name="#81"
docker_opts=(--distro
default
--arch
@@ -9,6 +9,7 @@ tcwg-snow_bmk-02
true )
source build_container.sh
trap "cleanup_all_containers" EXIT
-build_name="#79"
-branch_opt=()
-build_name="#79-R# cpuxalan_r_base.default,523.xalancbmk_r failed to run-force"
+build_name="#81-llvm"
+branch_opt=(==rr\[llvm_git\]
+https://github.com/llvm/llvm-project.git#main )
+build_name="#81-llvm-R1"