xref: /llvm-project/llvm/lib/Analysis/NoInferenceModelRunner.cpp (revision c35ad9ee4f21c03baaea65e2479e9d08c4b4acd2)
1059e0347SMircea Trofin //===- NoInferenceModelRunner.cpp - noop ML model runner   ----------------===//
2059e0347SMircea Trofin //
3059e0347SMircea Trofin // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4059e0347SMircea Trofin // See https://llvm.org/LICENSE.txt for license information.
5059e0347SMircea Trofin // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6059e0347SMircea Trofin //
7059e0347SMircea Trofin //===----------------------------------------------------------------------===//
8059e0347SMircea Trofin //
9059e0347SMircea Trofin // A pseudo model runner. We use it to store feature values when collecting
10059e0347SMircea Trofin // logs for the default policy, in 'development' mode, but never ask it to
11059e0347SMircea Trofin // 'run'.
12059e0347SMircea Trofin //===----------------------------------------------------------------------===//
13059e0347SMircea Trofin #include "llvm/Analysis/NoInferenceModelRunner.h"
14059e0347SMircea Trofin 
15059e0347SMircea Trofin using namespace llvm;
16059e0347SMircea Trofin 
NoInferenceModelRunner(LLVMContext & Ctx,const std::vector<TensorSpec> & Inputs)17059e0347SMircea Trofin NoInferenceModelRunner::NoInferenceModelRunner(
18059e0347SMircea Trofin     LLVMContext &Ctx, const std::vector<TensorSpec> &Inputs)
19*c35ad9eeSMircea Trofin     : MLModelRunner(Ctx, MLModelRunner::Kind::NoOp, Inputs.size()) {
20*c35ad9eeSMircea Trofin   size_t Index = 0;
21059e0347SMircea Trofin   for (const auto &TS : Inputs)
22*c35ad9eeSMircea Trofin     setUpBufferForTensor(Index++, TS, nullptr);
23059e0347SMircea Trofin }
24