llvm/llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp

//===- PGOInstrumentationTest.cpp - Instrumentation unit tests ------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "llvm/Transforms/Instrumentation/PGOInstrumentation.h"
#include "llvm/AsmParser/Parser.h"
#include "llvm/IR/Module.h"
#include "llvm/Passes/PassBuilder.h"
#include "llvm/ProfileData/InstrProf.h"

#include "gmock/gmock.h"
#include "gtest/gtest.h"

#include <tuple>

namespace {

usingnamespacellvm;

_;
DoDefault;
Invoke;
NotNull;
Ref;
Return;
Sequence;
Test;
TestParamInfo;
Values;
WithParamInterface;

template <typename Derived> class MockAnalysisHandleBase {};

class MockModuleAnalysisHandle
    : public MockAnalysisHandleBase<MockModuleAnalysisHandle> {};

struct PGOInstrumentationGenTest
    : public Test,
      WithParamInterface<std::tuple<StringRef, StringRef>> {};

static constexpr StringRef CodeWithFuncDefs =;

static constexpr StringRef CodeWithFuncDecls =;

static constexpr StringRef CodeWithGlobals =;

INSTANTIATE_TEST_SUITE_P();

TEST_P(PGOInstrumentationGenTest, Instrumented) {}

} // end anonymous namespace