aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
6 hoursafdo_metadata: Publish the new kernel profilesupstream-mainmobiletc-prebuild
This brings all profiles to their newest versions. Never rebase this CL! If there's a merge conflict, either abandon this CL, or let Chrotomation do so after a few days. Rebasing could cause a performance regression. BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: I476970cc72e96677b24f30710d6a95a658c668fa Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5577747 Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
26 hoursllvm_tools: setup_for_workon to look in toolchains-overlayJordan R Abrahams-Whitehead
At present, setup_for_workon.py's --package flag assumes that the only location where we have toolchain-packages is chromiumos-overlay. However, we actually have a number of packages, cross-compilation packages, in toolchains-overlay. For example: * cross-aarch64-cros-linux-gnu/compiler-rt When we try emerging these packages without setup_for_workon.py on that specific cross-* package, we get a missing patch stamp error. You can use the --ebuild-dir directly to get around this, but this is somewhat counter-intuitive. The simplest fix for the issue is to have setup_for_workon.py's --package flag understand that toolchains-overlay exists. BUG=b:339911494 TEST=py/bin/llvm_tools/setup_for_workon.py \ --checkout m/main \ --clean-llvm \ --package cross-aarch64-cros-linux-gnu/compiler-rt \ && cros workon --host start \ cross-aarch64-cros-linux-gnu/compiler-rt && sudo emerge cross-aarch64-cros-linux-gnu/compiler-rt Change-Id: I51e4258af8d17b6ca563f0f5c74a8d0fe75ce717 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5538229 Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
30 hoursafdo_metadata: Publish the new kernel profilesmobiletc-prebuild
This brings all profiles to their newest versions. Never rebase this CL! If there's a merge conflict, either abandon this CL, or let Chrotomation do so after a few days. Rebasing could cause a performance regression. BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Iafed983cb55b5931ef5982690711063a144c176b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5571516 Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
7 daysafdo_tools: add 6.6 to ARM kernel versionsGeorge Burgess IV
BUG=b:327058411 TEST=Ran the update script. It updated metadata accordingly. Change-Id: I07b43cbe8ef03bcb4d3f75ce1c0060d34cf1827e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5511065 Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org>
8 daysafdo_tools: Clarify message on rebasingJordan R Abrahams-Whitehead
This appends at the bottom of every AFDO commit that the changes should not be rebased, but abandoned in case there's a merge conflict. Also fix formatting lints, which were primarily comments exceeding the column limit. BUG=None TEST=Preupload; CQ Change-Id: I1ca03c39dc43929b4565bebf7e2859066f11063a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5552110 Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
8 daysafdo_tools: Fix typing error for ListJordan R Abrahams-Whitehead
Since nothing after the colon in a type annotation is _actually_ evaluated, this worked fine before. But we really ought to include the type from typing. BUG=None TEST=Presubmit Change-Id: Idf7035a5f8bf62881ea28069ae81d17df82b7ec8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5547796 Auto-Submit: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: George Burgess <gbiv@chromium.org> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
8 daysafdo_tools: Replace distutils.spawnJordan R Abrahams-Whitehead
distutils.spawn was removed in somewhat recent pythons, and distutils itself is entirely gone. Luckily, shutil.which is a drop-in replacement. BUG=None TEST=Presubmit Change-Id: I3780e67632efe444313f34011e2ec67d9c834140 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5547795 Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org> Auto-Submit: Jordan Abrahams-Whitehead <ajordanr@google.com>
8 daysafdo_tools: Run cros format, fixesJordan R Abrahams-Whitehead
Noticed cros format linting errors, so fixing them up here. BUG=None TEST=Presubmit Change-Id: I856a23b3261f6e06daf0e8333d0e9b93ddb9a904 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5547794 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Auto-Submit: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com>
8 daysrust_tools: skip 9999 ebuild versions in version collectionGeorge Burgess IV
These aren't supported by `parse_ebuild_version`, and no users of `collect_ebuilds_by_version` wants 9999 ebuilds. BUG=b:341937844 TEST=Ran the script Change-Id: I20f5ad6e384d7fd3b681e7b39b2b9d1380720f5d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5553041 Reviewed-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
8 dayspgo_tools: add support for suffixed profilesGeorge Burgess IV
This enables `auto_update_llvm_pgo_profile` to roll to suffixed profiles, and has it treat them as "more recent" than non-suffixed. BUG=b:339270471 TEST=auto_update_llvm_pgo_profile.py --dry-run TEST=create_chroot_and_generate_pgo_profile.py --rev=516548 \ TEST= --profile-suffix=v3 Change-Id: Ic68365db59a1a1d66defe0d4673300aec8734f11 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5535272 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
8 daysafdo_metadata: Publish the new kernel profilesmobiletc-prebuild
This brings all profiles to their newest versions. BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ib198c011937d9f0e26b208d145a53d919e00d0f9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5555093 Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Commit-Queue: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
9 dayspgo_tools: clean up after PGO generationGeorge Burgess IV
Failing to clean up properly here is causing issues on Chrotomation. BUG=b:341507487 TEST=Ran the script Change-Id: I6137a80251cbd83021e3fdf92598c9a6fd8fb8cd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5550817 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
13 dayscompiler_wrapper: automatic syncmobiletc-prebuild
This CL automatically brings toolchain-utils' compiler_wrapper/ directory in sync with chromiumos-overlay's. Please see go/crostc-repo/+/main:sync_compiler_wrapper_within_cros.sh for more info on this process. BUG=None TEST=None Change-Id: I5c5e453e939fd1f34e91a1aa41cf4d0452b4fe34 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5543624 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com>
13 daysllvm_next: remove merged patches and testing patchBob Haarman
This removes the following patches from llvm_next.py: - chromium:5455731, which has been merged into the main branch. - chromium:5471984, which turns off -Werror and turns on continue-on-patch-failure. Patches should now all apply, and -Werror should no longer be blocking us. BUG=b:335276659 TEST=bb_add.py --llvm-next chromeos/staging/staging-build-chromiumos-sdk Change-Id: Ie4f071796f0721e317c945a69fe6472d7607764a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5535331 Tested-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2024-05-15afdo_metadata: Publish the new kernel profilesmobiletc-prebuild
This brings all profiles to their newest versions. BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: I582db6c452efc31555b7ea33eefefcbd6d4fb30c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5538230 Reviewed-by: George Burgess <gbiv@chromium.org> Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com>
2024-05-13llvm_tools: continue_on_failure for setup_for_workon.pyJordan R Abrahams-Whitehead
patch_manager.py supports the idea of continuing on patch failure. This is handy when we need to be able to identify whether some later patches when using setup_for_workon.py apply, despite earlier patches failing. BUG=None TEST=py/bin/llvm_tools/setup_for_workon.py \ --checkout m/main \ --clean-llvm \ --continue-on-failure \ --package sys-libs/scudo Change-Id: I698f5df8f6b2bd3f05e31c2a19abaac36870a951 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5530676 Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2024-05-13llvm_tools: Fix pyright lint errorsJordan R Abrahams-Whitehead
llvm_tools/setup_for_workon.py.py fails pyright check for this list addition. Change this preceding other features. Our team generally doesn't use pyright, but it cleans up a lint for free with no drawbacks. BUG=None TEST=No pyright lint complaints Change-Id: I2e423b98b02a5c3091a209c36b7223f779af250f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5530675 Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Auto-Submit: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-13pgo_tools: pass cros tree to PGO generate scriptGeorge Burgess IV
BUG=b:340175443 TEST=Ran on Chrotomation; it got to the point of creating a new chroot Change-Id: Ie21bfa5d0948745f81f5d679d361a94a0187d00f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5535269 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-13compiler_wrapper: automatic syncmobiletc-prebuild
This CL automatically brings toolchain-utils' compiler_wrapper/ directory in sync with chromiumos-overlay's. Please see go/crostc-repo/+/main:sync_compiler_wrapper_within_cros.sh for more info on this process. BUG=None TEST=None Change-Id: Ie1f2374870361716a8f655b2929e88b5372ceacf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5532934 Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: Ryan Beltran <ryanbeltran@chromium.org>
2024-05-13push `FindChromeOSRootAbove` out of hash-gettingGeorge Burgess IV
Most scripts have a clear idea of what the CrOS root directory is. Pass that in here, rather than taking anything in a CrOS tree, so this is easier to think about. I hand-audited the handful of calls to this function. Most were already doing this. BUG=None TEST=Unittests Change-Id: Id0dd6c13bf3c78c828594fefd6a5f523f9553333 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5533680 Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-13llvm_tools: DCE `chroot`; add tests for root findingGeorge Burgess IV
`rg` says the removed functions are no longer used. BUG=None TEST=Unittests Change-Id: I057b4ba002ac0bcfa0d0eb121669b7403c040190 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5533679 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-09auto_update_llvm_pgo_profile: use `clean` instead of `clobber`George Burgess IV
This fixes up an incomplete refactor from I5fd2caaa744c2b6fe62eb43a785cf6efeecc4cd2. BUG=b:339590178 TEST=./py/bin/pgo_tools/auto_update_llvm_pgo_profile.py --dry-run \ TEST= --clean-llvm Change-Id: Ic9ac95aff4d7b6d4ca6142c838e8c817213b8f92 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5527628 Auto-Submit: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-09llvm_next: use latest patchsetsBob Haarman
The patches for LLVM r530567 have been updated. This CL modifies llvm_next.py to refer to the latest patchsets. BUG=None TEST=bb_add.py --llvm-next chromeos/staging/staging-build-chromiumos-sdk Change-Id: I9df468c36aced801015c5fae464665ce0db170ff Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5526141 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Bob Haarman <inglorion@chromium.org> Tested-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2024-05-09llvm_tools: add cache entry for r525000George Burgess IV
Since llvm-next is ~r530000, having this seems helpful. BUG=None TEST=./run_python_tests.sh llvm_tools/git_llvm_rev_test.py Change-Id: I9dbe5d6505e84f5487f356bfe6bd97fa454e1c77 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5526853 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-08rust_tools: use git_utilsGeorge Burgess IV
Now that we can import from anywhere, this duplicated code can be removed :party: BUG=b:334932020 TEST=repo upload Change-Id: Idd4ff87d4c456e7b6abb0232f2c93cdc8238c00c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5519701 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-08afdo_tools: use git_utils instead of custom functionGeorge Burgess IV
BUG=b:319460882 TEST=repo upload Change-Id: I6d941e9439c932b1d0364c04b46ecd57d8408968 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5515908 Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Auto-Submit: George Burgess <gbiv@chromium.org>
2024-05-08llvm_next: add patches for llvm r530567Bob Haarman
This adds a number of patches to the LLVM r530567 roll: - A few new version of local patches and updates to which LLVM versions local patches apply to. - A cleanup that removes some unused cmake arguments. - A new autofdo version. BUG=b:335276659 TEST=llvm builds locally; llvm-next nightly job will run more tests Change-Id: Id140ab3642372a06d7579ab84c976acf9cb0f879 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5526139 Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: Bob Haarman <inglorion@chromium.org> Auto-Submit: Bob Haarman <inglorion@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2024-05-08llvm_tools: remove git moduleGeorge Burgess IV
This is no longer used except by its own tests. BUG=b:327058411 TEST=repo upload Change-Id: I7555c7fcd743d8e44417b6e285c3a849fc8b3aab Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5525662 Auto-Submit: George Burgess <gbiv@chromium.org> Commit-Queue: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org>
2024-05-08afdo_metadata: Publish the new kernel profilesmobiletc-prebuild
This brings all profiles to their newest versions. BUG=None TEST=Verified in kernel-release-afdo-verify-orchestrator Change-Id: Ie395fb3f0d2d3f2888cc2d4ddc5aaae823bc9798 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5524063 Auto-Submit: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: mobiletc-prebuild Role Account <mobiletc-prebuild@google.com> Commit-Queue: George Burgess <gbiv@chromium.org>
2024-05-07rust_tools: remove llvm_tools.git usageGeorge Burgess IV
Looks like _nearly_ all of this can be replaced by existing bits in `git_utils`. This also has us call `repo init --head` instead of `repo init`. The former works on `chromiumos-overlay`'s HEAD, rather than resetting it to `cros/main`. BUG=b:332713739 TEST=Unittests Change-Id: I4cdcb3e9b0aea2e098445dd2ce81595235ea61b5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5522854 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-07llvm_tools: fix patch reapplication logicGeorge Burgess IV
`new_revert_infos[n].friendly_name` here is the name of the SHA we're tracking reverts across (e.g., `llvm-next`, `llvm`). Adding them to a set is pointless, since these names should never have dups. Instead, I assume this code tried to protect from the same revert being applied multiple times. BUG=b:339147957 TEST=Ran the script; no longer breaks Change-Id: I360b345c2b42bd5d2beb3f1ce000835ad70a5d03 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5522853 Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-07llvm_tools: Fully remove get_upstream_patch.pyJordan R Abrahams-Whitehead
This is now fully obsolete with the existence of get_patch.py and has no dependendents. It is fully safe to remove. BUG=b:339010069 TEST=repo upload; ./run_python_tests.py Change-Id: Iab379399cb11399098f2f9271840aabd90c89120 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5515906 Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-07llvm_tools: Rm get_llvm_hash dep in stabilize_all_llvm_packagesJordan R Abrahams-Whitehead
This replaces the get_upstream_patch.py dependency with the underlying get_llvm_hash.py library invocations, allowing us to fully remove get_upstream_patch.py. BUG=b:339010069 TEST=repo upload Change-Id: I01df19e5b468226851f687810e96f5f20129b5da Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5519694 Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-07llvm_tools: Rm get_upstream_patch dep in generate_llvm_revert_reportJordan R Abrahams-Whitehead
We only used get_upstream_patch.py for its resolve_symbolic_sha, which confusingly, just called out into get_llvm_hash.py anyways. Replace this call with the get_llvm_hash.py version. Also invoking this from toolchain-utils no longer worked, because the parent.parent invocation assumed it was running from inside llvm_tools. Since we now invoke things through py/, we need to now correct the default directory. BUG=b:339010069 TEST=repo upload; generate_llvm_revert_report.py Change-Id: I5a8b0ebb44d1de5ef75f347b3a0f56d88a7c1928 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5519693 Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org>
2024-05-07pgo_tools: allow auto_update script to force PGO generationGeorge Burgess IV
At the moment, we generate probably 4 LLVM PGO profiles per year. This leaves a lot of room for things to silently break the PGO script (b/335298562 & b/335515781). It seems worthwhile to have a cronjob forcibly run PGO generation once a week or so, even if its result will be discarded, so we can have confidence that the pipeline is continuously working well. BUG=b:334876457 TEST=Ran the script with llvm-next pointed at the current LLVM version, TEST=with the new flag. Change-Id: I96c437e314b43f8398602beab871eaffff5742bb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5502775 Reviewed-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-07pgo_tools: add auto-update script for llvmGeorge Burgess IV
This CL adds an auto-update script for LLVM PGO profiles. It's intended to run regularly on Chrotomation. BUG=b:334876457 TEST=Ran the script with --dry-run Change-Id: If778e0b352bffc888e793ccd0061390469ce2f3f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5501549 Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2024-05-06llvm_tools: Update README for get_patch.pyJordan R Abrahams-Whitehead
With the obsoleting of get_upstream_patch.py with get_patch.py, we can update the README as well to describe how to use get_patch.py. BUG=b:339010069 TEST=repo upload Change-Id: Ibb5ad37e669826c059f9e70d85303fa2828a2479 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5519691 Reviewed-by: George Burgess <gbiv@chromium.org> Auto-Submit: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-06llvm_tools: Rm get_upstream_patch dep in nrcJordan R Abrahams-Whitehead
This removes the get_upstream_patch dependency in the nightly_revert_checker. get_upstream_patch is obsoleted by get_patch.py Also does some minor linting clean up while we're here. BUG=b:339010069 TEST=repo upload; ./run_python_tests.py Change-Id: I4a725bff7247b8f2f304c3543f7177304bc341de Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5518885 Tested-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: George Burgess <gbiv@chromium.org> Commit-Queue: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-06remove debug_info_testGeorge Burgess IV
As expanded on in b/338392607#comment3, this hasn't been used for years, and many of the checks it does are either obsolete or nice-to-know-at-best. BUG=b:338392607 TEST=None Change-Id: I9742b02f195b0c54f4b86641632bac9a16e676e9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5515546 Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org>
2024-05-06llvm_tools: point get_upstream_patch at githubGeorge Burgess IV
BUG=b:333720269 TEST=Generated crrev.com/c/5519054 Change-Id: I97c50ffc321a5a8ac8a9c44149d6047392d14f8b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5515899 Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-06binary_search_tool: re-removeGeorge Burgess IV
Now that this has been removed from ebuilds, it should be fine to delete. BUG=b:337857277 TEST=Staging SDK builder invocation Change-Id: I789a48df7089dbb21a4feebbcdcc97c86dc08810 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5507513 Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org>
2024-05-06llvm_tools: match flag nameGeorge Burgess IV
Unfortunately, mypy can't catch everything... BUG=b:338710021 TEST=Unittests Change-Id: I2aa03361e27e235f2e388907d0a07fbe3c7f39cd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5518989 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-06cros_utils: remove trivially-unused utilitiesGeorge Burgess IV
`rg 'import\s+${module_name}'` turned up zero hits for each of these. BUG=b:337837895 TEST=None Change-Id: Id37a0dedf7d7f4604ecfc9e11bc727467bf28bde Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5496650 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2024-05-06go: remove android/chromeos subdirsGeorge Burgess IV
Android: Marlin is the codename for the first-gen pixel, released in 2016. No one has touched these utils since 2018, so I presume this is pointless to keep. ChromeOS: we have better ways to test and build Go in ebuilds and the like; if these utils still work, they're unlikely to be useful. BUG=b:337837895 TEST=None Change-Id: Ibd6063a4a7b61df031d4bcc3f62923bc68a4e528 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5507042 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: George Burgess <gbiv@chromium.org>
2024-05-06go: remove patch/ subdirGeorge Burgess IV
These are patches to Go's sources, which are entirely unused by CrOS (and for very old versions of Go, so we can infer that Android doesn't care) BUG=b:337837895 TEST=None Change-Id: Iaa1a847edfc3c99651b15d45b483b47c27d3b0cc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5507041 Reviewed-by: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2024-05-06go: remove old go building scriptsGeorge Burgess IV
These scripts seem to have been used for building/running Go on localhost or target devices. Go now has very well-fleshed-out stories for both of these things, so these are almost certainly not needed. BUG=b:337837895 TEST=None Change-Id: I370bde001891a513d9462d5664a82eacb20e18cd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5507040 Commit-Queue: George Burgess <gbiv@chromium.org> Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org>
2024-05-06remove make_root_writableGeorge Burgess IV
This script exists to make `/` writable, with support for machine locking (which the toolchain team no longer does). It should either be simplified to https://chromium.googlesource.com/chromiumos/docs/+/master/developer_mode.md#disable-verity or deleted BUG=b:337837895 TEST=None Change-Id: I8a37f91cd29420e17e4d22a47e527295df676b1d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5496649 Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Ryan Beltran <ryanbeltran@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org>
2024-05-06remove update_telemetry_defaultsGeorge Burgess IV
This script seems to update telemetry benchmarking defaults, specifically when used with crosperf. Since crosperf is gone, this script has no obvious use. BUG=b:337837895 TEST=None Change-Id: If461a2322a1610fb979347a7b2dbbe4a7a0388ca Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5496648 Tested-by: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org>
2024-05-06remove tc_enter_chrootGeorge Burgess IV
This script tries to enter the chroot with what seems to be custom mounts? Specifically: - there's some 'toolchain root' which includes gcc/binutils dirs that gets mounted at `/usr/local/toolchain_root` - `third_party` gets remounted somewhere - symlinks for building GCC and binutils are created for convenience None of this seems relevant to toolchain dev in CrOS anymore. BUG=b:337837895 TEST=None Change-Id: I570f5f8df49319c753e19082eb050ffa066bc2e7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5496647 Tested-by: George Burgess <gbiv@chromium.org> Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Bob Haarman <inglorion@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com>
2024-05-06remove remote_testGeorge Burgess IV
This script says that it wraps `test_that`, but it's pretty unclear how? It seems to copy a handful of files to hardcoded paths in /tmp, then echoes the board name. BUG=b:337837895 TEST=None Change-Id: Idf193a4c2c448591a33b0854387275cd1d7e6d54 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/5496646 Commit-Queue: George Burgess <gbiv@chromium.org> Reviewed-by: Jordan Abrahams-Whitehead <ajordanr@google.com> Reviewed-by: Bob Haarman <inglorion@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>