llvm/lldb/unittests/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpressionTests.cpp

//===-- PDBFPOProgramToDWARFExpressionTests.cpp ---------------------------===//
//
// 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 "gtest/gtest.h"

#include "Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.h"

#include "lldb/Utility/ArchSpec.h"
#include "lldb/Utility/DataBufferHeap.h"
#include "lldb/Utility/DataExtractor.h"
#include "lldb/Utility/StreamBuffer.h"
#include "lldb/Utility/StreamString.h"
#include "llvm/DebugInfo/DIContext.h"
#include "llvm/DebugInfo/DWARF/DWARFExpression.h"

usingnamespacelldb;
usingnamespacelldb_private;
usingnamespacelldb_private::npdb;

/// Valid programs tests

static void
CheckValidProgramTranslation(llvm::StringRef fpo_program,
                             llvm::StringRef target_register_name,
                             llvm::StringRef expected_dwarf_expression) {}

TEST(PDBFPOProgramToDWARFExpressionTests, SingleAssignmentRegisterRef) {}

TEST(PDBFPOProgramToDWARFExpressionTests, MultipleIndependentAssignments) {}

TEST(PDBFPOProgramToDWARFExpressionTests, MultipleDependentAssignments) {}

TEST(PDBFPOProgramToDWARFExpressionTests, DependencyChain) {}

/// Invalid programs tests
static void
CheckInvalidProgramTranslation(llvm::StringRef fpo_program,
                               llvm::StringRef target_register_name) {}

TEST(PDBFPOProgramToDWARFExpressionTests, InvalidAssignmentSingle) {}

TEST(PDBFPOProgramToDWARFExpressionTests, InvalidAssignmentMultiple) {}

TEST(PDBFPOProgramToDWARFExpressionTests, UnknownOp) {}

TEST(PDBFPOProgramToDWARFExpressionTests, InvalidOpBinary) {}

TEST(PDBFPOProgramToDWARFExpressionTests, InvalidOpUnary) {}

TEST(PDBFPOProgramToDWARFExpressionTests, MissingTargetRegister) {}

TEST(PDBFPOProgramToDWARFExpressionTests, UnresolvedRegisterReference) {}

TEST(PDBFPOProgramToDWARFExpressionTests,
     UnresolvedRegisterAssignmentReference) {}

TEST(PDBFPOProgramToDWARFExpressionTests,
     UnresolvedCyclicRegisterAssignmentReference) {}

TEST(PDBFPOProgramToDWARFExpressionTests,
     UnresolvedDependentCyclicRegisterAssignmentReference) {}

TEST(PDBFPOProgramToDWARFExpressionTests, UnsupportedRASearch) {}