Re: [CI-NOTIFY]: TCWG Bisect tcwg_gnu/gnu-master-aarch64-check_bootstrap - Build # 80 - Successful!

2021-07-19 Thread Maxim Kuvyrkov
Reported to upstream at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101506 .

--
Maxim Kuvyrkov
https://www.linaro.org

> On 19 Jul 2021, at 02:30, ci_not...@linaro.org wrote:
> 
> Successfully identified regression in *gcc* in CI configuration 
> tcwg_gnu/gnu-master-aarch64-check_bootstrap.  So far, this commit has 
> regressed CI configurations:
> - tcwg_gnu/gnu-master-aarch64-check_bootstrap
> 
> Culprit:
> 
> commit 1dd3f21095858fbfd3e28a149578d5fb67e75f95
> Author: Richard Biener 
> Date:   Tue Jul 13 13:59:15 2021 +0200
> 
>Support reduction def re-use for epilogue with different vector size
> 
>The following adds support for re-using the vector reduction def
>from the main loop in vectorized epilogue loops on architectures
>which use different vector sizes for the epilogue.  That's only
>x86 as far as I am aware.
> 
>2021-07-13  Richard Biener  
> 
>* tree-vect-loop.c (vect_find_reusable_accumulator): Handle
>vector types where the old vector type has a multiple of
>the new vector type elements.
>(vect_create_partial_epilog): New function, split out from...
>(vect_create_epilog_for_reduction): ... here.
>(vect_transform_cycle_phi): Reduce the re-used accumulator
>to the new vector type.
> 
>* gcc.target/i386/vect-reduc-1.c: New testcase.
> 
> 
> Results regressed to (for first_bad == 
> 1dd3f21095858fbfd3e28a149578d5fb67e75f95)
> # reset_artifacts:
> -10
> # build_abe binutils:
> -2
> # build_abe bootstrap:
> -1
> # build_abe dejagnu:
> 0
> # build_abe check_bootstrap -- --set runtestflags=g++.dg/dg.exp --set 
> runtestflags=gcc.target/aarch64/aarch64.exp:
> 1
> # Getting actual results from build directory 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/libstdc++.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/gfortran.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/libitm.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/libgomp.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/libatomic.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/g++.sum
> # 
> /home/tcwg-buildslave/workspace/tcwg_gnu_3/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/sumfiles/gcc.sum
> # Manifest: 
> gcc-compare-results/contrib/testsuite-management/flaky/gnu-master-aarch64-check_bootstrap.xfail
> # Getting actual results from build directory base-artifacts/sumfiles
> # base-artifacts/sumfiles/libstdc++.sum
> # base-artifacts/sumfiles/gfortran.sum
> # base-artifacts/sumfiles/libitm.sum
> # base-artifacts/sumfiles/libgomp.sum
> # base-artifacts/sumfiles/libatomic.sum
> # base-artifacts/sumfiles/g++.sum
> # base-artifacts/sumfiles/gcc.sum
> # 
> # 
> # Unexpected results in this build (new failures)
> # === gcc tests ===
> # 
> # Running gcc.target/aarch64/aarch64.exp ...
> # FAIL: gcc.target/aarch64/vect-fmaxv-fminv-compile.c scan-assembler fminnmv
> # FAIL: gcc.target/aarch64/vect-fmaxv-fminv-compile.c scan-assembler fmaxnmv
> # 
> # === Results Summary ===
> 
> from (for last_good == a7098d6ef4e4e799dab8ef925c62b199d707694b)
> # reset_artifacts:
> -10
> # build_abe binutils:
> -2
> # build_abe bootstrap:
> -1
> # build_abe dejagnu:
> 0
> # build_abe check_bootstrap -- --set runtestflags=g++.dg/dg.exp --set 
> runtestflags=gcc.target/aarch64/aarch64.exp:
> 1
> 
> Artifacts of last_good build: 
> https://ci.linaro.org/job/tcwg_gcc-bisect-gnu-master-aarch64-check_bootstrap/80/artifact/artifacts/build-a7098d6ef4e4e799dab8ef925c62b199d707694b/
> Artifacts of first_bad build: 
> https://ci.linaro.org/job/tcwg_gcc-bisect-gnu-master-aarch64-check_bootstrap/80/artifact/artifacts/build-1dd3f21095858fbfd3e28a149578d5fb67e75f95/
> Build top page/logs: 
> https://ci.linaro.org/job/tcwg_gcc-bisect-gnu-master-aarch64-check_bootstrap/80/
> 
> Configuration details:
> 
> 
> Reproduce builds:
> 
> mkdir investigate-gcc-1dd3f21095858fbfd3e28a149578d5fb67e75f95
> cd investigate-gcc-1dd3f21095858fbfd3e28a149578d5fb67e75f95
> 
> git clone https://git.linaro.org/toolchain/jenkins-scripts
> 
> mkdir -p artifacts/manifests
> curl -o artifacts/manifests/build-baseline.sh 
> https://ci.linaro.org/job/tcwg_gcc-bisect-gnu-master-aarch64-check_bootstrap/80/artifact/artifacts/manifests/build-baseline.sh
>  --fail
> curl -o artifacts/manifests/build-parameters.sh 
> https://ci.linaro.org/job/tcwg_gcc-bisect-gnu-master

Re: [CI-NOTIFY]: TCWG Bisect tcwg_bmk_tk1/llvm-release-arm-spec2k6-Os - Build # 19 - Successful!

2021-07-19 Thread Maxim Kuvyrkov
Hi David,

Linaro’s benchmarking CI is churning through a backlog of old commits, and it 
appears that your patch increases code-size of a single function by 13% — from 
5890 bytes to 6642 bytes — that’s on Thumb2 at -Os.  Not a big deal, but may be 
it is exposing a case worth investigating.

The function is BZ2_compressBlock() from SPEC CPU2006’s 401.bzip2.  Let us know 
if you are interested in investigating it, and we’ll provide details to 
reproduce.

Regards,

--
Maxim Kuvyrkov
https://www.linaro.org

> On 19 Jul 2021, at 00:39, ci_not...@linaro.org wrote:
> 
> Successfully identified regression in *llvm* in CI configuration 
> tcwg_bmk_llvm_tk1/llvm-release-arm-spec2k6-Os.  So far, this commit has 
> regressed CI configurations:
> - tcwg_bmk_llvm_tk1/llvm-release-arm-spec2k6-Os
> 
> Culprit:
> 
> commit ab97c9bdb747c873cd35a18229e2694156a7607d
> Author: David Green 
> Date:   Sat Dec 12 14:21:40 2020 +
> 
>[LV] Fix scalar cost for tail predicated loops
> 
>When it comes to the scalar cost of any predicated block, the loop
>vectorizer by default regards this predication as a sign that it is
>looking at an if-conversion and divides the scalar cost of the block by
>2, assuming it would only be executed half the time. This however makes
>no sense if the predication has been introduced to tail predicate the
>loop.
> 
>Original patch by Anna Welker
> 
>Differential Revision: https://reviews.llvm.org/D86452
> 
> 
> Results regressed to (for first_bad == 
> ab97c9bdb747c873cd35a18229e2694156a7607d)
> # reset_artifacts:
> -10
> # build_abe binutils:
> -9
> # build_abe stage1 -- --set gcc_override_configure=--with-mode=thumb --set 
> gcc_override_configure=--disable-libsanitizer:
> -8
> # build_abe linux:
> -7
> # build_abe glibc:
> -6
> # build_abe stage2 -- --set gcc_override_configure=--with-mode=thumb --set 
> gcc_override_configure=--disable-libsanitizer:
> -5
> # build_llvm true:
> -3
> # true:
> 0
> # benchmark -Os_mthumb -- 
> artifacts/build-ab97c9bdb747c873cd35a18229e2694156a7607d/results_id:
> 1
> # 401.bzip2,bzip2_base.default  regressed by 
> 103
> # 401.bzip2,[.] BZ2_compressBlock   regressed by 
> 113
> # 473.astar,astar_base.default  regressed by 
> 103
> 
> from (for last_good == d716eab197abec0b9aab4a76cd1a52b248b8c3b1)
> # reset_artifacts:
> -10
> # build_abe binutils:
> -9
> # build_abe stage1 -- --set gcc_override_configure=--with-mode=thumb --set 
> gcc_override_configure=--disable-libsanitizer:
> -8
> # build_abe linux:
> -7
> # build_abe glibc:
> -6
> # build_abe stage2 -- --set gcc_override_configure=--with-mode=thumb --set 
> gcc_override_configure=--disable-libsanitizer:
> -5
> # build_llvm true:
> -3
> # true:
> 0
> # benchmark -Os_mthumb -- 
> artifacts/build-d716eab197abec0b9aab4a76cd1a52b248b8c3b1/results_id:
> 1
> 
> Artifacts of last_good build: 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/artifact/artifacts/build-d716eab197abec0b9aab4a76cd1a52b248b8c3b1/
> Results ID of last_good: 
> tk1_32/tcwg_bmk_llvm_tk1/bisect-llvm-release-arm-spec2k6-Os/1878
> Artifacts of first_bad build: 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/artifact/artifacts/build-ab97c9bdb747c873cd35a18229e2694156a7607d/
> Results ID of first_bad: 
> tk1_32/tcwg_bmk_llvm_tk1/bisect-llvm-release-arm-spec2k6-Os/1876
> Build top page/logs: 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/
> 
> Configuration details:
> 
> 
> Reproduce builds:
> 
> mkdir investigate-llvm-ab97c9bdb747c873cd35a18229e2694156a7607d
> cd investigate-llvm-ab97c9bdb747c873cd35a18229e2694156a7607d
> 
> git clone https://git.linaro.org/toolchain/jenkins-scripts
> 
> mkdir -p artifacts/manifests
> curl -o artifacts/manifests/build-baseline.sh 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/artifact/artifacts/manifests/build-baseline.sh
>  --fail
> curl -o artifacts/manifests/build-parameters.sh 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/artifact/artifacts/manifests/build-parameters.sh
>  --fail
> curl -o artifacts/test.sh 
> https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tk1-llvm-release-arm-spec2k6-Os/19/artifact/artifacts/test.sh
>  --fail
> chmod +x artifacts/test.sh
> 
> # Reproduce the baseline build (build all pre-requisites)
> ./jenkins-scripts/tcwg_bmk-build.sh @@ artifacts/manifests/build-baseline.sh
> 
> # Save baseline build state (which is then restored in artifacts/test.sh)
> rsync -a --del --delete-excluded --exclude bisect/ --exclude artifacts/ 
> --exclude llvm/ ./ ./bisect/baseline/
> 
> cd llvm
> 
> # Reproduce first_bad build
> git checkout --detach ab97c9bdb747c873cd35a18229e2694156a7607d
> ../artifacts/test.sh
> 
> # Reproduce 

[CI-NOTIFY]: TCWG Bisect tcwg_bmk_tx1/llvm-release-aarch64-spec2k6-O3 - Build # 6 - Successful!

2021-07-19 Thread ci_notify
Successfully identified regression in *llvm* in CI configuration 
tcwg_bmk_llvm_tx1/llvm-release-aarch64-spec2k6-O3.  So far, this commit has 
regressed CI configurations:
 - tcwg_bmk_llvm_tx1/llvm-release-aarch64-spec2k6-O3

Culprit:

commit 1fb610429308a7c29c5065f5cc35dcc3fd69c8b1
Author: Roman Lebedev 
Date:   Mon Oct 12 22:19:17 2020 +0300

Reland "[SCEV] Model ptrtoint(SCEVUnknown) cast not as unknown, but as 
zext/trunc/self of SCEVUnknown"

This relands commit 1c021c64caef83cccb719c9bf0a2554faa6563af which was
reverted in commit 17cec6a11a12f815052d56a17ef738cf246a2d9a because
an assertion was being triggered, since `BuildConstantFromSCEV()`
wasn't updated to handle the case where the constant we want to truncate
is actually a pointer. I was unsuccessful in coming up with a test case
where we'd end there with constant zext/sext of a pointer,
so i didn't handle those cases there until there is a test case.

Original commit message:

While we indeed can't treat them as no-ops, i believe we can/should
do better than just modelling them as `unknown`. `inttoptr` story
is complicated, but for `ptrtoint`, it seems straight-forward
to model it just as a zext-or-trunc of unknown.

This may be important now that we track towards
making inttoptr/ptrtoint casts not no-op,
and towards preventing folding them into loads/etc
(see D88979/D88789/D88788)

Reviewed By: mkazantsev

Differential Revision: https://reviews.llvm.org/D88806


Results regressed to (for first_bad == 1fb610429308a7c29c5065f5cc35dcc3fd69c8b1)
# reset_artifacts:
-10
# build_abe binutils:
-9
# build_abe stage1 -- --set gcc_override_configure=--disable-libsanitizer:
-8
# build_abe linux:
-7
# build_abe glibc:
-6
# build_abe stage2 -- --set gcc_override_configure=--disable-libsanitizer:
-5
# build_llvm true:
-3
# true:
0
# benchmark -O3 -- 
artifacts/build-1fb610429308a7c29c5065f5cc35dcc3fd69c8b1/results_id:
1
# 400.perlbench,perlbench_base.default  regressed by 104

from (for last_good == 73818f450e3a90fc89eca143ee30777ed7e660e9)
# reset_artifacts:
-10
# build_abe binutils:
-9
# build_abe stage1 -- --set gcc_override_configure=--disable-libsanitizer:
-8
# build_abe linux:
-7
# build_abe glibc:
-6
# build_abe stage2 -- --set gcc_override_configure=--disable-libsanitizer:
-5
# build_llvm true:
-3
# true:
0
# benchmark -O3 -- 
artifacts/build-73818f450e3a90fc89eca143ee30777ed7e660e9/results_id:
1

Artifacts of last_good build: 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/build-73818f450e3a90fc89eca143ee30777ed7e660e9/
Results ID of last_good: 
tx1_64/tcwg_bmk_llvm_tx1/bisect-llvm-release-aarch64-spec2k6-O3/1930
Artifacts of first_bad build: 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/build-1fb610429308a7c29c5065f5cc35dcc3fd69c8b1/
Results ID of first_bad: 
tx1_64/tcwg_bmk_llvm_tx1/bisect-llvm-release-aarch64-spec2k6-O3/1947
Build top page/logs: 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/

Configuration details:


Reproduce builds:

mkdir investigate-llvm-1fb610429308a7c29c5065f5cc35dcc3fd69c8b1
cd investigate-llvm-1fb610429308a7c29c5065f5cc35dcc3fd69c8b1

git clone https://git.linaro.org/toolchain/jenkins-scripts

mkdir -p artifacts/manifests
curl -o artifacts/manifests/build-baseline.sh 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/manifests/build-baseline.sh
 --fail
curl -o artifacts/manifests/build-parameters.sh 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/manifests/build-parameters.sh
 --fail
curl -o artifacts/test.sh 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/test.sh
 --fail
chmod +x artifacts/test.sh

# Reproduce the baseline build (build all pre-requisites)
./jenkins-scripts/tcwg_bmk-build.sh @@ artifacts/manifests/build-baseline.sh

# Save baseline build state (which is then restored in artifacts/test.sh)
rsync -a --del --delete-excluded --exclude bisect/ --exclude artifacts/ 
--exclude llvm/ ./ ./bisect/baseline/

cd llvm

# Reproduce first_bad build
git checkout --detach 1fb610429308a7c29c5065f5cc35dcc3fd69c8b1
../artifacts/test.sh

# Reproduce last_good build
git checkout --detach 73818f450e3a90fc89eca143ee30777ed7e660e9
../artifacts/test.sh

cd ..


History of pending regressions and results: 
https://git.linaro.org/toolchain/ci/base-artifacts.git/log/?h=linaro-local/ci/tcwg_bmk_llvm_tx1/llvm-release-aarch64-spec2k6-O3

Artifacts: 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-tcwg_bmk_tx1-llvm-release-aarch64-spec2k6-O3/6/artifact/artifacts/
Build log: 
https://ci.linaro.org/job/tcwg_bmk_ci_llvm-bisect-