diff options
author | TCWG BuildSlave <tcwg-buildslave@linaro.org> | 2023-10-02 01:01:16 +0000 |
---|---|---|
committer | TCWG BuildSlave <tcwg-buildslave@linaro.org> | 2023-10-02 01:01:53 +0000 |
commit | f490c635f805d595f5536604a32b32eb2a47c09e (patch) | |
tree | 75d06a4e190dca45b25b2b5ff2d1b6e4b86d2b76 /jenkins | |
parent | 598b622477ca7ccc4dc3be486a9fbf649f7fc0b9 (diff) |
onsuccess: #463: 1: [TCWG CI] https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/463/
Results :
| # 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
| # benchmark -- -O2_LTO:
| 1
check_regression status : 0
Diffstat (limited to 'jenkins')
-rw-r--r-- | jenkins/jira-status.draft | 4 | ||||
-rw-r--r-- | jenkins/mail-body.draft | 232 | ||||
-rw-r--r-- | jenkins/mail-recipients.draft | 1 | ||||
-rw-r--r-- | jenkins/mail-subject.draft | 1 | ||||
-rwxr-xr-x | jenkins/notify.sh | 3 |
5 files changed, 0 insertions, 241 deletions
diff --git a/jenkins/jira-status.draft b/jenkins/jira-status.draft deleted file mode 100644 index c16829b..0000000 --- a/jenkins/jira-status.draft +++ /dev/null @@ -1,4 +0,0 @@ -[GNU-689] -#INTERESTING_COMMIT_STATUS# - -Details: https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/462/artifact/artifacts/jenkins/mail-body.txt/*view*/ diff --git a/jenkins/mail-body.draft b/jenkins/mail-body.draft deleted file mode 100644 index 088c745..0000000 --- a/jenkins/mail-body.draft +++ /dev/null @@ -1,232 +0,0 @@ -After basepoints/gcc-13-2658-g645ef01a463 commit 645ef01a463f15fc230e2155719c7a12cec89acf -Author: Jakub Jelinek <jakub@redhat.com> - - Disallow pointer operands for |, ^ and partly & [PR106878] - -the following benchmarks slowed down by more than 3%: -- 403.gcc failed to build - -Below reproducer instructions can be used to re-build both "first_bad" and "last_good" cross-toolchains used in this bisection. Naturally, the scripts will fail when triggerring benchmarking jobs if you don\'t have access to Linaro TCWG CI. - -For your convenience, we have uploaded tarballs with pre-processed source and assembly files at: -- First_bad save-temps: $FIRST_BAD_ARTIFACTS/save-temps/ -- Last_good save-temps: $LAST_GOOD_ARTIFACTS/save-temps/ -- Baseline save-temps: $BASELINE_ARTIFACTS/save-temps/ - -Configuration: -- Benchmark: SPEC CPU2006 -- Toolchain: GCC + Glibc + GNU Linker -- Version: all components were built from their tip of trunk -- Target: aarch64-linux-gnu -- Compiler flags: -O2 -flto -- Hardware: NVidia TX1 4x Cortex-A57 - -This benchmarking CI is work-in-progress, and we welcome feedback and suggestions at linaro-toolchain@lists.linaro.org . In our improvement plans is to add support for SPEC CPU2017 benchmarks and provide "perf report/annotate" data behind these reports. - -THIS IS THE END OF INTERESTING STUFF. BELOW ARE LINKS TO BUILDS, REPRODUCTION INSTRUCTIONS, AND THE RAW COMMIT. - -For latest status see comments in https://linaro.atlassian.net/browse/GNU-689 . -#INTERESTING_COMMIT_STATUS# - -Bad build: https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/462/artifact/artifacts -Good build: https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/461/artifact/artifacts - -Reproduce current build: -<cut> -mkdir -p investigate-gcc-645ef01a463f15fc230e2155719c7a12cec89acf -cd investigate-gcc-645ef01a463f15fc230e2155719c7a12cec89acf - -# Fetch scripts -git clone https://git.linaro.org/toolchain/jenkins-scripts - -# Fetch manifests for bad and good builds -mkdir -p bad/artifacts good/artifacts -curl -o bad/artifacts/manifest.sh https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/462/artifact/artifacts/manifest.sh --fail -curl -o good/artifacts/manifest.sh https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/461/artifact/artifacts/manifest.sh --fail - -# Reproduce bad build -(cd bad; ../jenkins-scripts/tcwg_bmk-build.sh ^^ true %%rr[top_artifacts] artifacts) -# Reproduce good build -(cd good; ../jenkins-scripts/tcwg_bmk-build.sh ^^ true %%rr[top_artifacts] artifacts) -</cut> - -Full commit (up to 1000 lines): -<cut> -commit 645ef01a463f15fc230e2155719c7a12cec89acf -Author: Jakub Jelinek <jakub@redhat.com> -Date: Wed Sep 14 12:36:36 2022 +0200 - - Disallow pointer operands for |, ^ and partly & [PR106878] - - My change to match.pd (that added the two simplifications this patch - touches) results in more |/^/& assignments with pointer arguments, - but since r12-1608 we reject pointer operands for BIT_NOT_EXPR. - - Disallowing them for BIT_NOT_EXPR and allowing for BIT_{IOR,XOR,AND}_EXPR - leads to a match.pd maintainance nightmare (see one of the patches in the - PR), so either we want to allow pointer operand on BIT_NOT_EXPR (but then - we run into issues e.g. with the ranger which expects it can emulate - BIT_NOT_EXPR ~X as - 1 - X which doesn't work for pointers which don't - support MINUS_EXPR), or the following patch disallows pointer arguments - for all of BIT_{IOR,XOR,AND}_EXPR with the exception of BIT_AND_EXPR - with INTEGER_CST last operand (for simpler pointer realignment). - I had to tweak one reassoc optimization and the two match.pd - simplifications. - - 2022-09-14 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/106878 - * tree-cfg.cc (verify_gimple_assign_binary): Disallow pointer, - reference or OFFSET_TYPE BIT_IOR_EXPR, BIT_XOR_EXPR or, unless - the second argument is INTEGER_CST, BIT_AND_EXPR. - * match.pd ((type) X op CST -> (type) (X op ((type-x) CST)), - (type) (((type2) X) op Y) -> (X op (type) Y)): Punt for - POINTER_TYPE_P or OFFSET_TYPE. - * tree-ssa-reassoc.cc (optimize_range_tests_cmp_bitwise): For - pointers cast them to pointer sized integers first. - - * gcc.c-torture/compile/pr106878.c: New test. ---- - gcc/match.pd | 6 +++++- - gcc/testsuite/gcc.c-torture/compile/pr106878.c | 15 +++++++++++++++ - gcc/tree-cfg.cc | 20 ++++++++++++++++++-- - gcc/tree-ssa-reassoc.cc | 16 +++++++++++++++- - 4 files changed, 53 insertions(+), 4 deletions(-) - -diff --git a/gcc/match.pd b/gcc/match.pd -index 17318f523fb..345bcb701a5 100644 ---- a/gcc/match.pd -+++ b/gcc/match.pd -@@ -1763,6 +1763,8 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) - && (int_fits_type_p (@1, TREE_TYPE (@0)) - || tree_nop_conversion_p (TREE_TYPE (@0), type))) - || types_match (@0, @1)) -+ && !POINTER_TYPE_P (TREE_TYPE (@0)) -+ && TREE_CODE (TREE_TYPE (@0)) != OFFSET_TYPE - /* ??? This transform conflicts with fold-const.cc doing - Convert (T)(x & c) into (T)x & (T)c, if c is an integer - constants (if x has signed type, the sign bit cannot be set -@@ -1799,7 +1801,9 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) - (if (GIMPLE - && TREE_CODE (@1) != INTEGER_CST - && tree_nop_conversion_p (type, TREE_TYPE (@2)) -- && types_match (type, @0)) -+ && types_match (type, @0) -+ && !POINTER_TYPE_P (TREE_TYPE (@0)) -+ && TREE_CODE (TREE_TYPE (@0)) != OFFSET_TYPE) - (bitop @0 (convert @1))))) - - (for bitop (bit_and bit_ior) -diff --git a/gcc/testsuite/gcc.c-torture/compile/pr106878.c b/gcc/testsuite/gcc.c-torture/compile/pr106878.c -new file mode 100644 -index 00000000000..c8457189437 ---- /dev/null -+++ b/gcc/testsuite/gcc.c-torture/compile/pr106878.c -@@ -0,0 +1,15 @@ -+/* PR tree-optimization/106878 */ -+ -+typedef __INTPTR_TYPE__ intptr_t; -+typedef __UINTPTR_TYPE__ uintptr_t; -+int a; -+ -+int -+foo (const int *c) -+{ -+ uintptr_t d = ((intptr_t) c | (intptr_t) &a) & 65535 << 16; -+ intptr_t e = (intptr_t) c; -+ if (d != (e & 65535 << 16)) -+ return 1; -+ return 0; -+} -diff --git a/gcc/tree-cfg.cc b/gcc/tree-cfg.cc -index e39d9471220..41ce1b29d17 100644 ---- a/gcc/tree-cfg.cc -+++ b/gcc/tree-cfg.cc -@@ -4167,6 +4167,8 @@ verify_gimple_assign_binary (gassign *stmt) - case ROUND_MOD_EXPR: - case RDIV_EXPR: - case EXACT_DIV_EXPR: -+ case BIT_IOR_EXPR: -+ case BIT_XOR_EXPR: - /* Disallow pointer and offset types for many of the binary gimple. */ - if (POINTER_TYPE_P (lhs_type) - || TREE_CODE (lhs_type) == OFFSET_TYPE) -@@ -4182,9 +4184,23 @@ verify_gimple_assign_binary (gassign *stmt) - - case MIN_EXPR: - case MAX_EXPR: -- case BIT_IOR_EXPR: -- case BIT_XOR_EXPR: -+ /* Continue with generic binary expression handling. */ -+ break; -+ - case BIT_AND_EXPR: -+ if (POINTER_TYPE_P (lhs_type) -+ && TREE_CODE (rhs2) == INTEGER_CST) -+ break; -+ /* Disallow pointer and offset types for many of the binary gimple. */ -+ if (POINTER_TYPE_P (lhs_type) -+ || TREE_CODE (lhs_type) == OFFSET_TYPE) -+ { -+ error ("invalid types for %qs", code_name); -+ debug_generic_expr (lhs_type); -+ debug_generic_expr (rhs1_type); -+ debug_generic_expr (rhs2_type); -+ return true; -+ } - /* Continue with generic binary expression handling. */ - break; - -diff --git a/gcc/tree-ssa-reassoc.cc b/gcc/tree-ssa-reassoc.cc -index e13e2cb308d..f45e552a8cc 100644 ---- a/gcc/tree-ssa-reassoc.cc -+++ b/gcc/tree-ssa-reassoc.cc -@@ -3608,10 +3608,14 @@ optimize_range_tests_cmp_bitwise (enum tree_code opcode, int first, int length, - tree type2 = NULL_TREE; - bool strict_overflow_p = false; - candidates.truncate (0); -+ if (POINTER_TYPE_P (type1)) -+ type1 = pointer_sized_int_node; - for (j = i; j; j = chains[j - 1]) - { - tree type = TREE_TYPE (ranges[j - 1].exp); - strict_overflow_p |= ranges[j - 1].strict_overflow_p; -+ if (POINTER_TYPE_P (type)) -+ type = pointer_sized_int_node; - if ((b % 4) == 3) - { - /* For the signed < 0 cases, the types should be -@@ -3642,6 +3646,8 @@ optimize_range_tests_cmp_bitwise (enum tree_code opcode, int first, int length, - tree type = TREE_TYPE (ranges[j - 1].exp); - if (j == k) - continue; -+ if (POINTER_TYPE_P (type)) -+ type = pointer_sized_int_node; - if ((b % 4) == 3) - { - if (!useless_type_conversion_p (type1, type)) -@@ -3671,7 +3677,7 @@ optimize_range_tests_cmp_bitwise (enum tree_code opcode, int first, int length, - op = r->exp; - continue; - } -- if (id == l) -+ if (id == l || POINTER_TYPE_P (TREE_TYPE (op))) - { - code = (b % 4) == 3 ? BIT_NOT_EXPR : NOP_EXPR; - g = gimple_build_assign (make_ssa_name (type1), code, op); -@@ -3695,6 +3701,14 @@ optimize_range_tests_cmp_bitwise (enum tree_code opcode, int first, int length, - gimple_seq_add_stmt_without_update (&seq, g); - op = gimple_assign_lhs (g); - } -+ type1 = TREE_TYPE (ranges[k - 1].exp); -+ if (POINTER_TYPE_P (type1)) -+ { -+ gimple *g -+ = gimple_build_assign (make_ssa_name (type1), NOP_EXPR, op); -+ gimple_seq_add_stmt_without_update (&seq, g); -+ op = gimple_assign_lhs (g); -+ } - candidates.pop (); - if (update_range_test (&ranges[k - 1], NULL, candidates.address (), - candidates.length (), opcode, ops, op, -</cut> diff --git a/jenkins/mail-recipients.draft b/jenkins/mail-recipients.draft deleted file mode 100644 index 8b13789..0000000 --- a/jenkins/mail-recipients.draft +++ /dev/null @@ -1 +0,0 @@ - diff --git a/jenkins/mail-subject.draft b/jenkins/mail-subject.draft deleted file mode 100644 index 083403b..0000000 --- a/jenkins/mail-subject.draft +++ /dev/null @@ -1 +0,0 @@ -[TCWG CI] [TCWG CI] 403.gcc failed to build after basepoints/gcc-13-2658-g645ef01a463: Disallow pointer operands for |, ^ and partly & [PR106878] diff --git a/jenkins/notify.sh b/jenkins/notify.sh deleted file mode 100755 index fca3067..0000000 --- a/jenkins/notify.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -/home/tcwg-buildslave/workspace/tcwg_bmk_1/jenkins-scripts/round-robin-notify.sh --artifacts "artifacts/jenkins" --BUILD_URL "https://ci.linaro.org/job/tcwg_bmk_ci_gnu-build-tcwg_bmk_tx1-gnu-master-aarch64-spec2k6-O2_LTO/462/" --ci_project "tcwg_bmk_gnu_tx1" --ci_config "gnu-master-aarch64-spec2k6-O2_LTO" --current_project "gcc" --first_bad "645ef01a463f15fc230e2155719c7a12cec89acf" --last_good "05f5c42cb42c5088187d44cc45a5f671d19ad8c5" --summary "artifacts/mail/jira-body.txt" |