aboutsummaryrefslogtreecommitdiff
path: root/backend/lib/CodeGen/GlobalISel/InstructionSelect.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/InstructionSelect.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/InstructionSelect.cpp')
-rw-r--r--backend/lib/CodeGen/GlobalISel/InstructionSelect.cpp15
1 files changed, 0 insertions, 15 deletions
diff --git a/backend/lib/CodeGen/GlobalISel/InstructionSelect.cpp b/backend/lib/CodeGen/GlobalISel/InstructionSelect.cpp
index 995a9a0..66bbff2 100644
--- a/backend/lib/CodeGen/GlobalISel/InstructionSelect.cpp
+++ b/backend/lib/CodeGen/GlobalISel/InstructionSelect.cpp
@@ -152,17 +152,6 @@ void combineFingerprint(std::uint64_t &State, std::uint64_t Value) 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]] Error passFailure(std::string Message,
ErrorCode Code = ErrorCode::VerificationError) {
return Error(Code, std::move(Message));
@@ -225,10 +214,6 @@ Expected<MachinePassResult> InstructionSelect::run(MachineFunction &Function,
if (Info == nullptr)
return std::unexpected(passFailure("instruction select has no target behavior interface",
ErrorCode::InvalidArgument));
- auto Required = requireProperties(Function, contract());
- if (!Required)
- return std::unexpected(Required.error());
-
auto Trial = cloneMachineFunction(
Function, Target,
MachineFunctionCloneOptions{.NewStableID = Function.stableID(), .NewName = std::nullopt});