Jlm
Public Types | Public Member Functions | Static Public Member Functions | Static Private Member Functions | Private Attributes | List of all members
jlm::tooling::LlvmOptCommand Class Referencefinal

#include <Command.hpp>

Inheritance diagram for jlm::tooling::LlvmOptCommand:
Inheritance graph
[legend]
Collaboration diagram for jlm::tooling::LlvmOptCommand:
Collaboration graph
[legend]

Public Types

enum class  Optimization { Mem2Reg }
 

Public Member Functions

 ~LlvmOptCommand () noexcept override
 
 LlvmOptCommand (util::FilePath inputFile, util::FilePath outputFile, bool writeLlvmAssembly, std::vector< Optimization > optimizations)
 
std::string ToString () const override
 
const util::FilePathOutputFile () const noexcept
 
- Public Member Functions inherited from jlm::tooling::Command
virtual ~Command ()
 
virtual void Run () const
 

Static Public Member Functions

static CommandGraph::NodeCreate (CommandGraph &commandGraph, const util::FilePath &inputFile, const util::FilePath &outputFile, bool writeLlvmAssembly, const std::vector< Optimization > &optimizations)
 

Static Private Member Functions

static std::string ToString (const Optimization &optimization)
 

Private Attributes

util::FilePath InputFile_
 
util::FilePath OutputFile_
 
bool WriteLlvmAssembly_
 
std::vector< OptimizationOptimizations_
 

Detailed Description

The LlvmOptCommand class represents the LLVM opt command line tool.

Definition at line 466 of file Command.hpp.

Member Enumeration Documentation

◆ Optimization

Enumerator
Mem2Reg 

Definition at line 469 of file Command.hpp.

Constructor & Destructor Documentation

◆ ~LlvmOptCommand()

jlm::tooling::LlvmOptCommand::~LlvmOptCommand ( )
overridedefaultnoexcept

◆ LlvmOptCommand()

jlm::tooling::LlvmOptCommand::LlvmOptCommand ( util::FilePath  inputFile,
util::FilePath  outputFile,
bool  writeLlvmAssembly,
std::vector< Optimization optimizations 
)
inline

Definition at line 476 of file Command.hpp.

Member Function Documentation

◆ Create()

static CommandGraph::Node& jlm::tooling::LlvmOptCommand::Create ( CommandGraph commandGraph,
const util::FilePath inputFile,
const util::FilePath outputFile,
bool  writeLlvmAssembly,
const std::vector< Optimization > &  optimizations 
)
inlinestatic

Definition at line 497 of file Command.hpp.

◆ OutputFile()

const util::FilePath& jlm::tooling::LlvmOptCommand::OutputFile ( ) const
inlinenoexcept

Definition at line 491 of file Command.hpp.

◆ ToString() [1/2]

std::string jlm::tooling::LlvmOptCommand::ToString ( ) const
overridevirtual

Implements jlm::tooling::Command.

Definition at line 683 of file Command.cpp.

◆ ToString() [2/2]

std::string jlm::tooling::LlvmOptCommand::ToString ( const Optimization optimization)
staticprivate

Definition at line 716 of file Command.cpp.

Member Data Documentation

◆ InputFile_

util::FilePath jlm::tooling::LlvmOptCommand::InputFile_
private

Definition at line 513 of file Command.hpp.

◆ Optimizations_

std::vector<Optimization> jlm::tooling::LlvmOptCommand::Optimizations_
private

Definition at line 518 of file Command.hpp.

◆ OutputFile_

util::FilePath jlm::tooling::LlvmOptCommand::OutputFile_
private

Definition at line 514 of file Command.hpp.

◆ WriteLlvmAssembly_

bool jlm::tooling::LlvmOptCommand::WriteLlvmAssembly_
private

Definition at line 516 of file Command.hpp.


The documentation for this class was generated from the following files: