Age | Commit message (Collapse) | Author |
|
Change-Id: Iec942da0b614d91afe68b59a57c8b5afbd1c14e0
|
|
... and don't require component's baseline branch to exist when
it's not going to be used.
Change-Id: I693fcc3306b1ce95cd684ffe23724b5cf477be01
|
|
Change-Id: I49a5212bcdd43d698eec150dd9d0bb7ac57722fa
|
|
... to avoid bisect tests cloberring shared state.
Change-Id: Ibd8059d513df9ec5cf5fe49777c020c655a46fd4
|
|
Change-Id: I2686f4561ff29fb66d94eab9b85c23ccf86428d6
|
|
Change-Id: I201f9510fdb1661862fbe2d492d0c46ce0952fb6
|
|
Change-Id: If6bde929216475c988787993e59489f366af0c7c
|
|
Change-Id: I0a826b802de1f4b93de0352a854dc96e48560da3
|
|
Go testsuite is unstable and we don't use Go for any of round-robin
jobs.
Change-Id: I91be6db4726a249d368cc38e7630e4cb9e2b65e9
|
|
... which are preferred to gcc and g++ by cmake, e.g., in QEMU builds.
Change-Id: I91cf262388d599b88f06d9901df48cc0d4d5925c
|
|
The change lets build_abe take an optional argument following --patch,
that specifies a patch to be applied for $component. And in
tcwg_bmk-build.sh, apply linaro-local/vect-metric-branch to
stage-2 gcc for applying vect metric patch.
Change-Id: Ica927685e40ea0ae3988557e5cb561c83abf2f3b
|
|
... from x86_64-unknown-linux-gnu to x86_64-pc-linux-gnu after updating
config.guess in ABE.
Change-Id: I81333036fb8d183ad81e3fa5b5836645e8b6220f
|
|
Change-Id: Iadde2d578d0724137a477359c0d105c91966d40b
|
|
Change-Id: I8ba472813afd2de119c8661fc5ad0c4f4b2f2c55
|
|
Initialize baseline repo for components further down the build pipeline
from the failed component.
Change-Id: I4d6823011d0dd0cb1daefefc3f201d08bc94ce1e
|
|
... otherwise "find" fails.
Change-Id: Iba71e97da8a547d2cc8f1d9e352e2e9edb5ca00a
|
|
... when failure occurs in non-interesting components.
Change-Id: Ic58fe08b048704a21830959105e20fab62935b82
|
|
... due to using broken just-built GCC instead of system GCC.
Change-Id: I13f29eb7cf13e72eea541e5cd5bba8148dbbece3
|
|
... and $EXTERNAL_FAIL. This allows us to distinguish between
regressions that we should bisect and infra problems that we
should skip bisects for.
Change-Id: I8f3b82c86d95e27351b01a2b3d2467b8e15b309e
|
|
Change-Id: I6f9e96686518596216020da0efe9f7903577c1ee
|
|
Change-Id: I73e2ef1da8cb474b18a366ecccae09ab83185480
|
|
... which is represented by tcwg-benchmark-* build returning UNSTABLE
result.
Change-Id: Ifa8be8e601ef93412a3a62d9bed4a078fe38fa49
|
|
Don't expect ${c}_url defined when ${c}_branch is "baseline".
Change-Id: I436efd471dd55655ea9a125194823ed084552ecc
|
|
Change-Id: Iad5af1671239484b5a55830c75c23a8158d56252
|
|
Change-Id: Ic648660f11602ebf82a34bd95469ba1018592287
|
|
... when not using special "baseline" branch specifier.
Change-Id: If3aabeb1a2729b8d270d842fdd0ad5809ebc990d
|
|
Change-Id: Ide6dbb22152a5096ba21667f497f2571384579de
|
|
Make "build_abe FOO" build FOO and make "build_abe check_FOO" run
FOO's testsuites. This also makes tcwg_gnu's bisections more
efficient, since we will ignore FOO's build problems in "check"
configurations.
Change-Id: I71c644e801828b94d880bed7fe440e4db3ffb40b
|
|
Pass same fake git URL to abe in both build and check steps.
Before this patch we missed ".git" in the check step, which
caused ABE to try rebuild the component.
Change-Id: I0912854876b0054f413d168bd9152a2f530047a0
|
|
... to avoid ABE updating sources.
Change-Id: I82ef178a1dc1054b6642bd98335fcf013a425914
|
|
When I fixed a shellcheck warning here I changed
an expression that previously would always
delete the build folders. To one that would only
do so when we were running a check step.
Without deleting the build folders you got this
in the "bootstrap check" step:
00:01:25 configure: loading cache ./config.cache
00:01:25 configure: error: `CC' has changed since the previous run:
00:01:25 configure: former value: `gcc'
00:01:25 configure: current value:
`armv8l-unknown-linux-gnueabihf-gcc'
(since the compiler built in "bootstrap" has
been added to the PATH)
The old behaviour works but only acidentally.
Instead we should only update the source checkouts
during non check steps. This means that ABE doesn't
see a change and try to reconfigure. With that,
there's no need for us to clean out the .stamp
files for a check step anymore.
Change-Id: Ifc5574fe422ae8a01618a1de02affceb7733ae0b
|
|
This acts like assert but prints a message
if the assert fails. This will be visible in
the Jenkins logs and give us a unique string
to look for in the abscence of traceback for
shell scripts.
Two instances of returning false in check_regression
have had echos added to them, instead of asserts.
This is because they are not hard failures,
and may be handled by the caller. (run_step)
I have only converted the tcwg-bmk relevant
scripts to assert_with_msg so far, as a proof
of concept.
Change-Id: I3b1badf09e4856c80b973ca8b23088626ed66b0a
|
|
Used in other scripts to check that pwd
isnt / before deleting things.
Change-Id: Id3e284a486f300c97e92f730e84183340c999dd9
|
|
When looking for errors, exclude other
uses of grep looking for errors.
Without this we get job names with the
entire grep line in the title.
We could still get spurious names
if there were no error lines found,
but at least they'll be shorter.
Change-Id: Iceb0279dff2bb51ff59977efaf3f0d523c91ce7c
|
|
Fixes for:
https://github.com/koalaman/shellcheck/wiki/SC2207
Are using the bash 4.x 'mapfile' syntax where the
input to the array is seperated by newlines.
If it's separated by spaces we use 'read' instead.
Support for selecting libc in MakeRelease.job was
removed in 3fa23da28ad73d0fe4b512c4aab269b5280a6650.
So remove references to "libc" which were expanding
to nothing anyway.
In tcwg-llvm-common.sh PROJECTS->BRANCHED_PROJECTS
is not strictly needed. However shellcheck can't
tell that the local PROJECTS in this file is
different from the PROJECTS in tcwg-llvm-build.sh.
Change-Id: Ie55968e3bf185d0bd5795fe48014636cda1009bc
|
|
Now using the version that's
present in the bionic images.
Meaning we have more warnings
but can also set the minimum
level to ignore a lot of them.
Fix the check for whether
shellcheck supports --severity.
(we have pipefail on, but we
expect shellcheck to fail in
this case)
Change-Id: I296b8554591b7d327c75393e3924184abc6512b7
|
|
===
local PATH
foo="$PATH"
===
causes "PATH: unbound variable" error
Change-Id: I3038449c7ee798b2cd3065e3b307bfa04cb80b72
|
|
* Disable "referenced but not assigned"
for a bunch of parameters. These are
set by the wrappers around this script.
* Quote a bunch of expansions
* Use * to get a string from arrays
* When finding files split by null terminator
so it doesn't break for filenames with spaces.
* Declare and assign separately so we don't
hide return values.
* Ignore unsafe rm in prepare_abe since we know
we'll be in the abe folder.
* Add sanity check that pwd isn't / for build_llvm,
then ignore the warning from the rm.
Change-Id: I0b54e55946d56eef0d48b10c3ccfa30059809d46
|
|
(all error/style level warnings)
SC1035: missing whitespace
SC2068: double quote array expansions
SC2145: argument mixes string and array
SC1066: Don't use $ on the left side of assignments
SC2126: Use grep -c instead of grep|wc
Change-Id: Ia53070d3e2c9aea9f626fdb7b2b5bfc9e1f8e682
|
|
... due to stray results.regressions file. This file can be generated
by successful no_build_regression_p() invocation and contain harmless
errors from toolchain build process.
Change-Id: I237e09cd612c0b96d27d765de9bcd28f5ec51573
|
|
Change-Id: Iba2ba392d0ed6656548ead3245d4d7906bbdfbc0
|
|
The no_regression_p() predicate function is called from two steps:
check_regression and update_baseline. While we want no_regression_p
to output regression info during check_regression step, we don't want
that during update_baseline (during update_baseline no_regression_p
is called to compare current results against pre-baseline ones).
To fix the above we generate regression information in artifacts
directory of the current step, and copy it to the top-level only
during check_regression step.
Change-Id: Ib03d82f7afe60c406c7942f2fa086855df371171
|
|
Annotations provide human-readable comments and data on regressions.
For this we ignore all lines in "results" file starting with "#".
Change-Id: I31328fe2c13895a7379137b00891a9d2fc0a39d7
|
|
When a regression occurs after the build phase, don't include harmless
errors from the the build stage, and provide info from the test phase.
Change-Id: I75ce76e81ecbda4492bb49e7d765c25cac599f12
|
|
These are valuable for one-shot benchmarking experiments.
Change-Id: I6d63580156be9c7a9e3dcc906fb9128395fbbe33
|
|
reference
Fix no_build_regression_p such that it also returns 0 if new and
reference results are equal (without this patch the code does not
reach a return statement).
Change-Id: If9b043e7872c1b2379051f797758b465ee4e6cd6
|
|
... for several reasons:
1. The first reason is to avoid picking up noise from the rest
of benchmarks and mistakenly mark "noisy" revisions bad. In particular,
bi-modal benchmarks tend to interfere with bisections.
2. The second reason is to avoid picking up regressions that since have
been fixed.
3. The last reason is to speed up bisections. For -O2/-O3 benchmarking
we run 3-4 benchmarks sequentially, and reducing that to 1 gives us 3x-4x
improvement.
Change-Id: Iad6275e3b3efe50ed804f79426a1f94e09cd49bb
|
|
Change-Id: Iff43f09f6c0ca44e93508a7dd2927607d857562c
|
|
... to make conditional logic easier to read.
Change-Id: Ie5dc7dae0b3e7762365b2585e2f627d88f1de27a
|
|
... and baseline branches.
Push results from current build (whatever they are, regressions are
ignored) as new commit to base-artifacts, and update baseline
branches. This is useful for user projects, e.g., to generate
historical results for several toolchain versions.
Change-Id: I3d700dcb31532003fd34eaec00d46b62982bb834
|