Documentation for microsoft::quantum::Validator
microsoft::quantum::Validator
#include <Validator/Validator.hpp>
Public Types
Name | |
---|---|
using std::unique_ptr< Validator > | ValidatorPtr |
using ILogger::ILoggerPtr | ILoggerPtr |
Protected Types
Name | |
---|---|
using std::unique_ptr< llvm::PassBuilder > | PassBuilderPtr |
Public Functions
Name | |
---|---|
Validator(TargetProfileConfiguration const & profile, TargetQisConfiguration const & qis, ILoggerPtr const & logger, bool debug, llvm::TargetMachine * target_machine =nullptr) | |
Validator() | |
Validator(Validator const & ) | |
Validator(Validator && ) | |
Validator & | operator=(Validator const & ) |
Validator & | operator=(Validator && ) |
~Validator() =default | |
bool | validate(llvm::Module & module) |
ILoggerPtr | logger() const Returns the logger. This value may be null if no logger was set. |
Protected Functions
Name | |
---|---|
llvm::PassBuilder & | passBuilder() Returns a reference to the pass builder. |
llvm::LoopAnalysisManager & | loopAnalysisManager() Returns a reference to the loop analysis manager. |
llvm::FunctionAnalysisManager & | functionAnalysisManager() Returns a reference to the function analysis manager. |
llvm::CGSCCAnalysisManager & | gsccAnalysisManager() Returns a reference to the GSCC analysis manager. |
llvm::ModuleAnalysisManager & | moduleAnalysisManager() Returns a reference to the module analysis manager. |
Detailed Description
class microsoft::quantum::Validator;
Validator class that defines a set of rules which constitutes the adaptor definition. Each of the rules can be used to transform a generic QIR and/or validate that the QIR is compliant with said rule.
Public Types Documentation
using ValidatorPtr
using microsoft::quantum::Validator::ValidatorPtr = std::unique_ptr<Validator>;
using ILoggerPtr
using microsoft::quantum::Validator::ILoggerPtr = ILogger::ILoggerPtr;
Protected Types Documentation
using PassBuilderPtr
using microsoft::quantum::Validator::PassBuilderPtr = std::unique_ptr<llvm::PassBuilder>;
Public Functions Documentation
function Validator
explicit Validator(
TargetProfileConfiguration const & profile,
TargetQisConfiguration const & qis,
ILoggerPtr const & logger,
bool debug,
llvm::TargetMachine * target_machine =nullptr
)
function Validator
Validator()
function Validator
Validator(
Validator const &
)
function Validator
Validator(
Validator &&
)
function operator=
Validator & operator=(
Validator const &
)
function operator=
Validator & operator=(
Validator &&
)
function ~Validator
~Validator() =default
function validate
bool validate(
llvm::Module & module
)
Validates that a module complies with the specified QIR adaptor. Returns true if the module is valid and false otherwise.
function logger
ILoggerPtr logger() const
Returns the logger. This value may be null if no logger was set.
Protected Functions Documentation
function passBuilder
llvm::PassBuilder & passBuilder()
Returns a reference to the pass builder.
function loopAnalysisManager
llvm::LoopAnalysisManager & loopAnalysisManager()
Returns a reference to the loop analysis manager.
function functionAnalysisManager
llvm::FunctionAnalysisManager & functionAnalysisManager()
Returns a reference to the function analysis manager.
function gsccAnalysisManager
llvm::CGSCCAnalysisManager & gsccAnalysisManager()
Returns a reference to the GSCC analysis manager.
function moduleAnalysisManager
llvm::ModuleAnalysisManager & moduleAnalysisManager()
Returns a reference to the module analysis manager.
Updated on 1 August 2023 at 16:25:10 UTC