aboutsummaryrefslogtreecommitdiff
path: root/backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-26 23:28:39 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-26 23:28:39 +0800
commita72a7a4323fb6eef8e15cc2f1229bcca14879e94 (patch)
tree5768e6cd3ad0a025128d9bf7f76a8ee7afe22c12 /backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp
parent7b3dcced70be227bb43e71d84d11a2f15fb25072 (diff)
downloadrcc-project-a72a7a4323fb6eef8e15cc2f1229bcca14879e94.tar.gz
rcc-project-a72a7a4323fb6eef8e15cc2f1229bcca14879e94.tar.xz
[CodeGen] Centralize machine pass property validation
Diffstat (limited to 'backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp')
-rw-r--r--backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp15
1 files changed, 0 insertions, 15 deletions
diff --git a/backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp b/backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp
index a5747c3..3b7932b 100644
--- a/backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp
+++ b/backend/lib/CodeGen/GlobalISel/RegBankSelect.cpp
@@ -56,17 +56,6 @@ registerConfigurationFingerprint(const MachineRegisterInfo &RegInfo) noexcept {
return Result;
}
-[[nodiscard]] Expected<void> requireProperties(const MachineFunction &Function,
- const MachinePassContract &Contract) {
- const MachineFunctionProperties Missing = Contract.Requires.missingFrom(Function.properties());
- if (!Missing.empty()) {
- return makeUnexpected(ErrorCode::VerificationError,
- "pass '" + Contract.Name +
- "' requires properties: " + Missing.toString());
- }
- return {};
-}
-
[[nodiscard]] Expected<void> restoreRegisterConfiguration(
MachineRegisterInfo &RegInfo,
const std::vector<std::pair<Register, std::pair<std::optional<RegisterBankID>,
@@ -299,10 +288,6 @@ Expected<MachinePassResult> RegBankSelect::run(MachineFunction &Function,
if (Info == nullptr)
return std::unexpected(passFailure("register-bank select has no target behavior interface",
ErrorCode::InvalidArgument));
- auto Required = requireProperties(Function, contract());
- if (!Required)
- return std::unexpected(Required.error());
-
MachinePassResult Result;
MachineRegisterInfo &RegInfo = Function.registerInfo();
const std::uint64_t RegisterConfigurationBefore = registerConfigurationFingerprint(RegInfo);