aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorPaschalis Mpeis <paschalis.mpeis@arm.com>2025-07-22 09:04:00 +0300
committerGitHub <noreply@github.com>2025-07-22 09:04:00 +0300
commit3408f7b42f7af7c38d8054067c7dcad82df99b2f (patch)
treeb728df12950564e7c12385511c2028e239266ea4 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parent03a170837e78e56e1876c681a4bf95957adc73fd (diff)
downloadllvm-3408f7b42f7af7c38d8054067c7dcad82df99b2f.zip
llvm-3408f7b42f7af7c38d8054067c7dcad82df99b2f.tar.gz
llvm-3408f7b42f7af7c38d8054067c7dcad82df99b2f.tar.bz2
[BOLT] Guard llvm-bolt-wrapper logic of NFC-Mode behind a flag (#146209)
Buildbot (`BOLTBuilder`) no longer relies on a wrapper script to run tests. This patch guards the wrapper logic under a flag that is disabled by default. This it allows to: - Eliminate the need for special handling in some tests. - Fix the issue of a wrapper loop (described below) - Simplify the NFC-Mode setup. **Background:** Previously, tests ran unconditionally, which also compiled any missing utilities and the unit tests. The `nfc-check-setup.py` created: - `llvm-bolt.new`, renamed from the current compilation - `llvm-bolt.old`, built from the previous SHA - `llvm-bolt`: a python wrapper pointing to `llvm-bolt.new` Current behaviour and wrapper issue: As before, the old/new binaries identify whether a patch affects BOLT. If so, `ninja check-bolt` builds missing dependencies and run tests, overwriting the `llvm-bolt` wrapper with a binary. However, if Ninja reports: ``` ninja: no work to do. ``` the wrapper remains in place. If the next commit also does no work, `nfc-check-setup.py` renames the existing wrapper to `llvm-bolt.new`, causing an infinite loop. Allowing to disable the wrapper logic prevents this scenario and simplifies the flow. **Test plan:** Creates llvm-bolt.new and llvm-bolt.old and stays on previous revision: ``` ./nfc-check-setup.py build ``` Creates llvm-bolt.new and llvm-bolt.old and returns on current revision: ``` ./nfc-check-setup.py build --switch-back ``` Creates llvm-bolt.new and llvm-bolt.old, returns on current revision, and creates a wrapper: ``` ./nfc-check-setup.py build --switch-back --create-wrapper ``` Creates llvm-bolt.new and llvm-bolt.old, and passes an invalid argument to the wrapper: ``` ./nfc-check-setup.py build --switch-back --create-wrapper --random-arg ```
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions