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

#include <Command.hpp>

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

Public Types

enum class  OptimizationLevel { O0 , O1 , O2 , O3 }
 
enum class  RelocationModel { Static , Pic }
 

Public Member Functions

 ~LlcCommand () override
 
 LlcCommand (util::FilePath inputFile, util::FilePath outputFile, const OptimizationLevel &optimizationLevel, const RelocationModel &relocationModel)
 
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, const OptimizationLevel &optimizationLevel, const RelocationModel &relocationModel)
 

Static Private Member Functions

static std::string ToString (const OptimizationLevel &optimizationLevel)
 
static std::string ToString (const RelocationModel &relocationModel)
 

Private Attributes

OptimizationLevel OptimizationLevel_
 
RelocationModel RelocationModel_
 
util::FilePath InputFile_
 
util::FilePath OutputFile_
 

Detailed Description

The LlcCommand class represents the llc command line tool.

Definition at line 268 of file Command.hpp.

Member Enumeration Documentation

◆ OptimizationLevel

Enumerator
O0 
O1 
O2 
O3 

Definition at line 271 of file Command.hpp.

◆ RelocationModel

Enumerator
Static 
Pic 

Definition at line 279 of file Command.hpp.

Constructor & Destructor Documentation

◆ ~LlcCommand()

jlm::tooling::LlcCommand::~LlcCommand ( )
overridedefault

◆ LlcCommand()

jlm::tooling::LlcCommand::LlcCommand ( util::FilePath  inputFile,
util::FilePath  outputFile,
const OptimizationLevel optimizationLevel,
const RelocationModel relocationModel 
)
inline

Definition at line 287 of file Command.hpp.

Member Function Documentation

◆ Create()

static CommandGraph::Node& jlm::tooling::LlcCommand::Create ( CommandGraph commandGraph,
const util::FilePath inputFile,
const util::FilePath outputFile,
const OptimizationLevel optimizationLevel,
const RelocationModel relocationModel 
)
inlinestatic

Definition at line 308 of file Command.hpp.

◆ OutputFile()

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

Definition at line 302 of file Command.hpp.

◆ ToString() [1/3]

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

Implements jlm::tooling::Command.

Definition at line 247 of file Command.cpp.

◆ ToString() [2/3]

std::string jlm::tooling::LlcCommand::ToString ( const OptimizationLevel optimizationLevel)
staticprivate

Definition at line 265 of file Command.cpp.

◆ ToString() [3/3]

std::string jlm::tooling::LlcCommand::ToString ( const RelocationModel relocationModel)
staticprivate

Definition at line 278 of file Command.cpp.

Member Data Documentation

◆ InputFile_

util::FilePath jlm::tooling::LlcCommand::InputFile_
private

Definition at line 329 of file Command.hpp.

◆ OptimizationLevel_

OptimizationLevel jlm::tooling::LlcCommand::OptimizationLevel_
private

Definition at line 327 of file Command.hpp.

◆ OutputFile_

util::FilePath jlm::tooling::LlcCommand::OutputFile_
private

Definition at line 330 of file Command.hpp.

◆ RelocationModel_

RelocationModel jlm::tooling::LlcCommand::RelocationModel_
private

Definition at line 328 of file Command.hpp.


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