OpenASIP  2.0
Public Member Functions | Static Private Attributes | List of all members
LLVMTCECmdLineOptions Class Reference

#include <LLVMTCECmdLineOptions.hh>

Inheritance diagram for LLVMTCECmdLineOptions:
Inheritance graph
Collaboration diagram for LLVMTCECmdLineOptions:
Collaboration graph

Public Member Functions

 LLVMTCECmdLineOptions ()
 
 ~LLVMTCECmdLineOptions ()
 
virtual FunctionNameListprimaryFunctions () const
 
bool isStandardEmulationLibDefined () const
 
std::string standardEmulationLib () const
 
bool isOptLevelDefined () const
 
int optLevel () const
 
bool isVerboseSwitchDefined () const
 
bool debugFlag () const
 
bool conservativePreRAScheduler () const
 
bool saveBackendPlugin () const
 
bool useBUScheduler () const
 
bool useTDScheduler () const
 
bool useBubbleFish2Scheduler () const
 
bool useOldBackendSources () const
 
bool disableDelaySlotFiller () const
 
bool isWorkItemAAFileDefined () const
 
std::string workItemAAFile () const
 
bool analyzeInstructionPatterns () const
 
std::string backendCacheDir () const
 
TCEString tempDir () const
 
virtual std::string getLLVMargv () const
 
virtual bool dumpDDGsDot () const
 
virtual bool dumpDDGsXML () const
 
virtual bool disableLLVMAA () const
 
bool useVectorBackend () const
 
bool isInitialStackPointerValueSet () const
 
uint64_t initialStackPointerValue () const
 
bool isDataStartAddressSet () const
 
uint64_t dataStartAddress () const
 
bool printInlineAsmWarnings () const
 
bool generatePluginOnly () const
 
bool disableAddressSpaceAA () const
 
bool disableHWLoops () const
 
bool assumeADFStackAlignment () const
 
virtual void printVersion () const
 
- Public Member Functions inherited from SchedulerCmdLineOptions
 SchedulerCmdLineOptions ()
 
virtual ~SchedulerCmdLineOptions ()
 
virtual bool isMachineFileDefined () const
 
virtual std::string machineFile () const
 
virtual bool isOutputFileDefined () const
 
virtual std::string outputFile () const
 
virtual int schedulingWindowSize () const
 
virtual bool useRestrictedAliasAnalyzer () const
 
virtual bool renameRegisters () const
 
bool enableStackAA () const
 
bool enableOffsetAA () const
 
bool printResourceConstraints () const
 
virtual int ifConversionThreshold () const
 
virtual bool dumpIfConversionCFGs () const
 
virtual int lowMemModeThreshold () const
 
virtual bool isLoopOptDefined () const
 
virtual int bypassDistance () const
 
virtual int noDreBypassDistance () const
 
virtual int operandShareDistance () const
 
virtual bool killDeadResults () const
 
virtual FunctionNameListnoaliasFunctions () const
 
- Public Member Functions inherited from CmdLineOptions
 CmdLineOptions (std::string description, std::string version="")
 
virtual ~CmdLineOptions ()
 
void parse (char *argv[], int argc)
 
void parse (std::string argv[], int argc)
 
void parse (std::vector< std::string > argv)
 
virtual void printHelp () const
 
virtual bool isVerboseSpamSwitchDefined () const
 
- Public Member Functions inherited from CmdLineParser
 CmdLineParser (std::string description)
 
virtual ~CmdLineParser ()
 
virtual void storeOptions (Options &options)
 
virtual int numberOfArguments () const
 
virtual std::string argument (int index) const
 

Static Private Attributes

static const std::string SWL_EMULATION_LIB = "emulation"
 
static const std::string SWS_EMULATION_LIB = "e"
 
static const std::string SWL_DEBUG_FLAG = "debug"
 
static const std::string SWL_OPT_LEVEL = "optimize"
 
static const std::string SWS_OPT_LEVEL = "O"
 
static const std::string SWL_PRIMARY_FUNCTIONS
 
static const std::string SWS_PRIMARY_FUNCTIONS = "p"
 
static const std::string SWL_EXPERIMENTAL_REGALLOC
 
static const std::string VERBOSE_SWITCH = "verbose"
 Switch for verbose output listing scheduler modules. More...
 
static const std::string DISABLE_LLVMAA = "disable-llvmaa"
 
static const std::string CONSERVATIVE_PRE_RA_SCHEDULER
 
static const std::string LLVM_USER_ARGS = "llvm-args"
 
static const std::string DISABLE_DSF = "disable-dsf"
 
static const std::string DISABLE_ADDRESS_SPACE_AA = "disable-as-aa"
 
static const std::string SWL_DUMP_DDGS_DOT = "dump-ddgs-dot"
 
static const std::string SWL_DUMP_DDGS_XML = "dump-ddgs-xml"
 
static const std::string SWL_SAVE_BACKEND_PLUGIN
 
static const std::string SWL_BU_SCHEDULER
 
static const std::string SWL_BUBBLEFISH2_SCHEDULER
 
static const std::string SWL_TD_SCHEDULER = "td-scheduler"
 
static const std::string SWL_USE_OLD_BACKEND_SOURCES
 
static const std::string SWL_TEMP_DIR = "temp-dir"
 
static const std::string SWL_ENABLE_VECTOR_BACKEND
 
static const std::string SWL_WORK_ITEM_AA_FILE
 
static const std::string SWL_ANALYZE_INSTRUCTION_PATTERNS
 
static const std::string SWL_BACKEND_CACHE_DIR
 
static const std::string SWL_INIT_SP = "init-sp"
 
static const std::string SWL_DATA_START = "data-start"
 
static const std::string USAGE
 
static const std::string SWL_PRINT_INLINE_ASM_WARNINGS
 
static const std::string SWL_GEN_PLUGIN_ONLY
 
static const std::string SWL_DISABLE_HWLOOPS
 
static const std::string SWL_ASSUME_ADF_STACKALIGNMENT
 

Additional Inherited Members

- Protected Member Functions inherited from CmdLineOptions
bool optionGiven (std::string key) const
 
- Protected Member Functions inherited from CmdLineParser
void addOption (CmdLineOptionParser *opt)
 
CmdLineOptionParserfindOption (std::string name) const
 
bool parseOption (std::string option, std::string &name, std::string &arguments, std::string &prefix, bool &hasArgument) const
 
bool readPrefix (std::string &option, std::string &prefix, bool &longOption) const
 
bool isPrefix (std::string name) const
 
- Protected Attributes inherited from CmdLineParser
std::map< std::string, CmdLineOptionParser * > optionLongNames_
 Database for holding options with their long names as a key. More...
 
std::map< std::string, CmdLineOptionParser * > optionShortNames_
 Database for holding options with their short names as a key. More...
 
std::vector< std::string > commandLine_
 Command line is stored here. More...
 
std::vector< std::string > arguments_
 Command line arguments are stored here. More...
 
std::vector< std::string > prefixes_
 Legal prefixes are stored here. More...
 

Detailed Description

Command line options class for the llvm-tce compiler CLI.

Definition at line 48 of file LLVMTCECmdLineOptions.hh.

Constructor & Destructor Documentation

◆ LLVMTCECmdLineOptions()

LLVMTCECmdLineOptions::LLVMTCECmdLineOptions ( )

Constructor.

Definition at line 96 of file LLVMTCECmdLineOptions.cc.

96  {
97 
98  addOption(
100  SWL_EMULATION_LIB, "Emulation library bitcode file.",
102 
103  addOption(
105  SWL_OPT_LEVEL, "Optimization level (0-2)",
106  SWS_OPT_LEVEL));
107 
108  addOption(
110  SWL_DEBUG_FLAG, "Print LLVM debug data."));
111 
112  addOption(
115  "List of function names that should be scheduled with "
116  "the primary scheduler config (-c). Other functions are scheduled "
117  "with the secondary config (-s).",
119 
120  addOption(
122  VERBOSE_SWITCH, "The verbose switch", "v"));
123 
124  addOption(
126  DISABLE_LLVMAA, "Disable use of LLVM Alias Analysis", DISABLE_LLVMAA));
127 
128  addOption(
131  "Disable use of Address Space Alias Analysis",
133 
134  addOption(
136  DISABLE_DSF, "Disable post-pass delay slot filler optimizer.",
137  DISABLE_DSF));
138 
139  addOption(
142  "Conservative pre-ra-scheduler. May decrease register usage but "
143  "limit ILP. good for machines with low amount of registers."));
144 
146  LLVM_USER_ARGS, "Parameters to pass to LLVM"));
147 
148  addOption(
151  "Dump DDGs in dot format before and after scheduling."));
152 
153  addOption(
156  "Dump DDGs in XML format before and after scheduling."));
157 
158  addOption(
161  "Save the generated backend plugin for the architecture. "
162  "This avoid the regeneration of the backend plugin when calling "
163  "tcecc for the same architecture."));
164  addOption(
167  "Use an experiment Bottom Up scheduler."));
168 
169  addOption(
172  "Use an experimental Bubblefish instructionscheduler v2."));
173 
174  addOption(
177  "Use the old top-down instruction scheduler(previous default)."));
178 
179  addOption(
182  "Use the existing backend sources from the given temporary directory."));
183 
184  addOption(
186  SWL_TEMP_DIR,
187  "The temporary directory to use for files needed during the code generation."));
188 
189  addOption(
192  "The filename with Work Item Alias Analysis - this is filled automatically "
193  "if tcecc finds path to installed pocl."));
194 
195  addOption(
198  "Enable backend support for vector registers split between multiple RF's"));
199 
200  addOption(
203  "Analyze the instruction patterns after instruction selection."));
204 
205  addOption(
208  "The directory to use for caching LLVM backend plugins."));
209 
210  addOption(
212  SWL_INIT_SP,
213  "Initialize the stack pointer of the program to the given value."));
214  addOption(
217  "Override the global data start address."));
218 
219  addOption(
222  "Prints warnings from inline assembly parsing. Default is off."));
223  addOption(
226  "Generates LLVM backend plugin for target machine without tpef "
227  "generation."));
228 
231  "Do not use hardware loops even though the processor supports them."));
232 
233  addOption(
236  "Assume size of stackalignment based on biggest memory operations in the adf."));
237 }

References CmdLineParser::addOption(), CONSERVATIVE_PRE_RA_SCHEDULER, DISABLE_ADDRESS_SPACE_AA, DISABLE_DSF, DISABLE_LLVMAA, LLVM_USER_ARGS, SWL_ANALYZE_INSTRUCTION_PATTERNS, SWL_ASSUME_ADF_STACKALIGNMENT, SWL_BACKEND_CACHE_DIR, SWL_BU_SCHEDULER, SWL_BUBBLEFISH2_SCHEDULER, SWL_DATA_START, SWL_DEBUG_FLAG, SWL_DISABLE_HWLOOPS, SWL_DUMP_DDGS_DOT, SWL_DUMP_DDGS_XML, SWL_EMULATION_LIB, SWL_ENABLE_VECTOR_BACKEND, SWL_GEN_PLUGIN_ONLY, SWL_INIT_SP, SWL_OPT_LEVEL, SWL_PRIMARY_FUNCTIONS, SWL_PRINT_INLINE_ASM_WARNINGS, SWL_SAVE_BACKEND_PLUGIN, SWL_TD_SCHEDULER, SWL_TEMP_DIR, SWL_USE_OLD_BACKEND_SOURCES, SWL_WORK_ITEM_AA_FILE, SWS_EMULATION_LIB, SWS_OPT_LEVEL, SWS_PRIMARY_FUNCTIONS, and VERBOSE_SWITCH.

Here is the call graph for this function:

◆ ~LLVMTCECmdLineOptions()

LLVMTCECmdLineOptions::~LLVMTCECmdLineOptions ( )

Destructor.

Definition at line 242 of file LLVMTCECmdLineOptions.cc.

242  {
243 }

Member Function Documentation

◆ analyzeInstructionPatterns()

bool LLVMTCECmdLineOptions::analyzeInstructionPatterns ( ) const

Definition at line 414 of file LLVMTCECmdLineOptions.cc.

414  {
416 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_ANALYZE_INSTRUCTION_PATTERNS.

Here is the call graph for this function:

◆ assumeADFStackAlignment()

bool LLVMTCECmdLineOptions::assumeADFStackAlignment ( ) const

Definition at line 463 of file LLVMTCECmdLineOptions.cc.

463  {
465 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_ASSUME_ADF_STACKALIGNMENT.

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

◆ backendCacheDir()

std::string LLVMTCECmdLineOptions::backendCacheDir ( ) const

Definition at line 419 of file LLVMTCECmdLineOptions.cc.

419  {
420  if (findOption(SWL_BACKEND_CACHE_DIR)->isDefined())
423 }

References CmdLineParser::findOption(), Environment::llvmtceCachePath(), CmdLineOptionParser::String(), and SWL_BACKEND_CACHE_DIR.

Referenced by LLVMBackend::LLVMBackend().

Here is the call graph for this function:

◆ conservativePreRAScheduler()

bool LLVMTCECmdLineOptions::conservativePreRAScheduler ( ) const

Definition at line 339 of file LLVMTCECmdLineOptions.cc.

339  {
340  if (findOption(CONSERVATIVE_PRE_RA_SCHEDULER)->isDefined() &&
342  return true;
343  }
344  return false;
345 }

References CONSERVATIVE_PRE_RA_SCHEDULER, and CmdLineParser::findOption().

Referenced by llvm::TCETargetLowering::TCETargetLowering().

Here is the call graph for this function:

◆ dataStartAddress()

uint64_t LLVMTCECmdLineOptions::dataStartAddress ( ) const

Definition at line 441 of file LLVMTCECmdLineOptions.cc.

441  {
443 }

References CmdLineParser::findOption(), SWL_DATA_START, and CmdLineOptionParser::unsignedInteger().

Referenced by llvm::LLVMTCEBuilder::dataEnd().

Here is the call graph for this function:

◆ debugFlag()

bool LLVMTCECmdLineOptions::debugFlag ( ) const

Returns true if the debug flag option was given.

Returns
True, if debug mode switch was given.

Definition at line 303 of file LLVMTCECmdLineOptions.cc.

303  {
304 
305  if (findOption(SWL_DEBUG_FLAG)->isDefined() &&
306  findOption(SWL_DEBUG_FLAG)->isFlagOn()) {
307 
308  return true;
309  }
310  return false;
311 }

References CmdLineParser::findOption(), and SWL_DEBUG_FLAG.

Here is the call graph for this function:

◆ disableAddressSpaceAA()

bool LLVMTCECmdLineOptions::disableAddressSpaceAA ( ) const

Definition at line 319 of file LLVMTCECmdLineOptions.cc.

319  {
321 }

References DISABLE_ADDRESS_SPACE_AA, CmdLineParser::findOption(), and CmdLineOptionParser::isDefined().

Referenced by DataDependenceGraphBuilder::memoryCategory().

Here is the call graph for this function:

◆ disableDelaySlotFiller()

bool LLVMTCECmdLineOptions::disableDelaySlotFiller ( ) const

Definition at line 324 of file LLVMTCECmdLineOptions.cc.

324  {
325  return findOption(DISABLE_DSF)->isDefined();
326 }

References DISABLE_DSF, CmdLineParser::findOption(), and CmdLineOptionParser::isDefined().

Referenced by llvm::LLVMTCEIRBuilder::LLVMTCEIRBuilder().

Here is the call graph for this function:

◆ disableHWLoops()

bool LLVMTCECmdLineOptions::disableHWLoops ( ) const

Definition at line 458 of file LLVMTCECmdLineOptions.cc.

458  {
460 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_DISABLE_HWLOOPS.

Referenced by llvm::TCETargetLowering::TCETargetLowering().

Here is the call graph for this function:

◆ disableLLVMAA()

bool LLVMTCECmdLineOptions::disableLLVMAA ( ) const
virtual

Definition at line 314 of file LLVMTCECmdLineOptions.cc.

314  {
316 }

References DISABLE_LLVMAA, CmdLineParser::findOption(), and CmdLineOptionParser::isDefined().

Referenced by DataDependenceGraphBuilder::DataDependenceGraphBuilder().

Here is the call graph for this function:

◆ dumpDDGsDot()

bool LLVMTCECmdLineOptions::dumpDDGsDot ( ) const
virtual

◆ dumpDDGsXML()

bool LLVMTCECmdLineOptions::dumpDDGsXML ( ) const
virtual

◆ generatePluginOnly()

bool LLVMTCECmdLineOptions::generatePluginOnly ( ) const

Definition at line 452 of file LLVMTCECmdLineOptions.cc.

452  {
453  return (findOption(SWL_GEN_PLUGIN_ONLY)->isDefined() &&
454  findOption(SWL_GEN_PLUGIN_ONLY)->isFlagOn());
455 }

References CmdLineParser::findOption(), and SWL_GEN_PLUGIN_ONLY.

Here is the call graph for this function:

◆ getLLVMargv()

std::string LLVMTCECmdLineOptions::getLLVMargv ( ) const
virtual

Definition at line 348 of file LLVMTCECmdLineOptions.cc.

348  {
349  if (!findOption(LLVM_USER_ARGS)->isDefined()) {
350  return "llvm-tce --no-stack-coloring";
351  } else {
352  std::string argv = "llvm-tce --no-stack-coloring " +
354  return argv;
355  }
356 }

References CmdLineParser::findOption(), LLVM_USER_ARGS, and CmdLineOptionParser::String().

Here is the call graph for this function:

◆ initialStackPointerValue()

uint64_t LLVMTCECmdLineOptions::initialStackPointerValue ( ) const

Definition at line 431 of file LLVMTCECmdLineOptions.cc.

431  {
433 }

References CmdLineParser::findOption(), SWL_INIT_SP, and CmdLineOptionParser::unsignedInteger().

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

◆ isDataStartAddressSet()

bool LLVMTCECmdLineOptions::isDataStartAddressSet ( ) const

Definition at line 436 of file LLVMTCECmdLineOptions.cc.

436  {
438 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_DATA_START.

Referenced by llvm::LLVMTCEBuilder::dataEnd().

Here is the call graph for this function:

◆ isInitialStackPointerValueSet()

bool LLVMTCECmdLineOptions::isInitialStackPointerValueSet ( ) const

Definition at line 426 of file LLVMTCECmdLineOptions.cc.

426  {
427  return findOption(SWL_INIT_SP)->isDefined();
428 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_INIT_SP.

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

◆ isOptLevelDefined()

bool LLVMTCECmdLineOptions::isOptLevelDefined ( ) const

Returns true if optimization level switch was given.

Returns
True, if optimization level was given on command line.

Definition at line 281 of file LLVMTCECmdLineOptions.cc.

281  {
283 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWS_OPT_LEVEL.

Here is the call graph for this function:

◆ isStandardEmulationLibDefined()

bool LLVMTCECmdLineOptions::isStandardEmulationLibDefined ( ) const

Definition at line 271 of file LLVMTCECmdLineOptions.cc.

271  {
273 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWS_EMULATION_LIB.

Here is the call graph for this function:

◆ isVerboseSwitchDefined()

bool LLVMTCECmdLineOptions::isVerboseSwitchDefined ( ) const
virtual

Return true if the verbose switch was defined in the command line.

Returns
True if the verbose switch was defined in the command line.

Reimplemented from CmdLineOptions.

Definition at line 334 of file LLVMTCECmdLineOptions.cc.

334  {
336 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and VERBOSE_SWITCH.

Here is the call graph for this function:

◆ isWorkItemAAFileDefined()

bool LLVMTCECmdLineOptions::isWorkItemAAFileDefined ( ) const

Definition at line 404 of file LLVMTCECmdLineOptions.cc.

404  {
406 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_WORK_ITEM_AA_FILE.

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

◆ optLevel()

int LLVMTCECmdLineOptions::optLevel ( ) const

Returns optimization level defined with the -O switch.

Returns
Optimization level.

Definition at line 292 of file LLVMTCECmdLineOptions.cc.

292  {
293  return findOption(SWS_OPT_LEVEL)->integer();
294 }

References CmdLineParser::findOption(), CmdLineOptionParser::integer(), and SWS_OPT_LEVEL.

Referenced by llvm::LLVMTCEIRBuilder::writeMachineFunction().

Here is the call graph for this function:

◆ primaryFunctions()

FunctionNameList * LLVMTCECmdLineOptions::primaryFunctions ( ) const
virtual

Returns the list of "primary functions" that should be scheduled with the primary scheduling conf.

Rest of the functions are scheduled with the scheduling config given with -s.

Definition at line 254 of file LLVMTCECmdLineOptions.cc.

254  {
255  FunctionNameList* funcs = new FunctionNameList();
257  if (opt == NULL)
258  return funcs;
259  for (int i = 1; i <= opt->listSize(); ++i) {
260  funcs->insert(opt->String(i));
261  }
262  return funcs;
263 }

References CmdLineParser::findOption(), CmdLineOptionParser::listSize(), CmdLineOptionParser::String(), and SWS_PRIMARY_FUNCTIONS.

Referenced by llvm::LLVMTCEIRBuilder::isHotFunction().

Here is the call graph for this function:

◆ printInlineAsmWarnings()

bool LLVMTCECmdLineOptions::printInlineAsmWarnings ( ) const

Definition at line 446 of file LLVMTCECmdLineOptions.cc.

446  {
447  return (findOption(SWL_PRINT_INLINE_ASM_WARNINGS)->isDefined() &&
449 }

References CmdLineParser::findOption(), and SWL_PRINT_INLINE_ASM_WARNINGS.

Referenced by llvm::LLVMTCEBuilder::emitInlineAsm().

Here is the call graph for this function:

◆ printVersion()

virtual void LLVMTCECmdLineOptions::printVersion ( ) const
inlinevirtual

Print the version of the user interface.

Reimplemented from SchedulerCmdLineOptions.

Definition at line 107 of file LLVMTCECmdLineOptions.hh.

107  {
108  std::cout
109  << "llvm-tce - TCE LLVM code generator "
111  << std::endl;
112  }

References Application::TCEVersionString().

Here is the call graph for this function:

◆ saveBackendPlugin()

bool LLVMTCECmdLineOptions::saveBackendPlugin ( ) const

Definition at line 369 of file LLVMTCECmdLineOptions.cc.

369  {
372 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), CmdLineOptionParser::isFlagOn(), and SWL_SAVE_BACKEND_PLUGIN.

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

◆ standardEmulationLib()

std::string LLVMTCECmdLineOptions::standardEmulationLib ( ) const

Definition at line 266 of file LLVMTCECmdLineOptions.cc.

266  {
268 }

References CmdLineParser::findOption(), CmdLineOptionParser::String(), and SWS_EMULATION_LIB.

Here is the call graph for this function:

◆ tempDir()

TCEString LLVMTCECmdLineOptions::tempDir ( ) const

Definition at line 394 of file LLVMTCECmdLineOptions.cc.

394  {
395  return findOption(SWL_TEMP_DIR)->String();
396 }

References CmdLineParser::findOption(), CmdLineOptionParser::String(), and SWL_TEMP_DIR.

Here is the call graph for this function:

◆ useBubbleFish2Scheduler()

bool LLVMTCECmdLineOptions::useBubbleFish2Scheduler ( ) const

Definition at line 379 of file LLVMTCECmdLineOptions.cc.

379  {
381 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_BUBBLEFISH2_SCHEDULER.

Referenced by BBSchedulerController::handleBasicBlock().

Here is the call graph for this function:

◆ useBUScheduler()

bool LLVMTCECmdLineOptions::useBUScheduler ( ) const

Definition at line 374 of file LLVMTCECmdLineOptions.cc.

374  {
376 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_BU_SCHEDULER.

Referenced by BBSchedulerController::handleBasicBlock().

Here is the call graph for this function:

◆ useOldBackendSources()

bool LLVMTCECmdLineOptions::useOldBackendSources ( ) const

Definition at line 389 of file LLVMTCECmdLineOptions.cc.

389  {
391 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_USE_OLD_BACKEND_SOURCES.

Referenced by LLVMBackend::createPlugin().

Here is the call graph for this function:

◆ useTDScheduler()

bool LLVMTCECmdLineOptions::useTDScheduler ( ) const

Definition at line 384 of file LLVMTCECmdLineOptions.cc.

384  {
386 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_TD_SCHEDULER.

Referenced by BBSchedulerController::handleBasicBlock().

Here is the call graph for this function:

◆ useVectorBackend()

bool LLVMTCECmdLineOptions::useVectorBackend ( ) const

Definition at line 399 of file LLVMTCECmdLineOptions.cc.

399  {
401 }

References CmdLineParser::findOption(), CmdLineOptionParser::isDefined(), and SWL_ENABLE_VECTOR_BACKEND.

Here is the call graph for this function:

◆ workItemAAFile()

std::string LLVMTCECmdLineOptions::workItemAAFile ( ) const

Definition at line 409 of file LLVMTCECmdLineOptions.cc.

409  {
411 }

References CmdLineParser::findOption(), CmdLineOptionParser::String(), and SWL_WORK_ITEM_AA_FILE.

Referenced by LLVMBackend::compile().

Here is the call graph for this function:

Member Data Documentation

◆ CONSERVATIVE_PRE_RA_SCHEDULER

const std::string LLVMTCECmdLineOptions::CONSERVATIVE_PRE_RA_SCHEDULER
staticprivate
Initial value:
=
"conservative-pre-ra-scheduler"

Definition at line 127 of file LLVMTCECmdLineOptions.hh.

Referenced by conservativePreRAScheduler(), and LLVMTCECmdLineOptions().

◆ DISABLE_ADDRESS_SPACE_AA

const std::string LLVMTCECmdLineOptions::DISABLE_ADDRESS_SPACE_AA = "disable-as-aa"
staticprivate

Definition at line 130 of file LLVMTCECmdLineOptions.hh.

Referenced by disableAddressSpaceAA(), and LLVMTCECmdLineOptions().

◆ DISABLE_DSF

const std::string LLVMTCECmdLineOptions::DISABLE_DSF = "disable-dsf"
staticprivate

Definition at line 129 of file LLVMTCECmdLineOptions.hh.

Referenced by disableDelaySlotFiller(), and LLVMTCECmdLineOptions().

◆ DISABLE_LLVMAA

const std::string LLVMTCECmdLineOptions::DISABLE_LLVMAA = "disable-llvmaa"
staticprivate

Definition at line 126 of file LLVMTCECmdLineOptions.hh.

Referenced by disableLLVMAA(), and LLVMTCECmdLineOptions().

◆ LLVM_USER_ARGS

const std::string LLVMTCECmdLineOptions::LLVM_USER_ARGS = "llvm-args"
staticprivate

Definition at line 128 of file LLVMTCECmdLineOptions.hh.

Referenced by getLLVMargv(), and LLVMTCECmdLineOptions().

◆ SWL_ANALYZE_INSTRUCTION_PATTERNS

const std::string LLVMTCECmdLineOptions::SWL_ANALYZE_INSTRUCTION_PATTERNS
staticprivate
Initial value:
=
"analyze-instruction-patterns"

Definition at line 141 of file LLVMTCECmdLineOptions.hh.

Referenced by analyzeInstructionPatterns(), and LLVMTCECmdLineOptions().

◆ SWL_ASSUME_ADF_STACKALIGNMENT

const std::string LLVMTCECmdLineOptions::SWL_ASSUME_ADF_STACKALIGNMENT
staticprivate
Initial value:
=
"assume-adf-stackalignment"

Definition at line 149 of file LLVMTCECmdLineOptions.hh.

Referenced by assumeADFStackAlignment(), and LLVMTCECmdLineOptions().

◆ SWL_BACKEND_CACHE_DIR

const std::string LLVMTCECmdLineOptions::SWL_BACKEND_CACHE_DIR
staticprivate
Initial value:
=
"backend-cache-dir"

Definition at line 142 of file LLVMTCECmdLineOptions.hh.

Referenced by backendCacheDir(), and LLVMTCECmdLineOptions().

◆ SWL_BU_SCHEDULER

const std::string LLVMTCECmdLineOptions::SWL_BU_SCHEDULER
staticprivate
Initial value:
=
"bottom-up-scheduler"

Definition at line 134 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and useBUScheduler().

◆ SWL_BUBBLEFISH2_SCHEDULER

const std::string LLVMTCECmdLineOptions::SWL_BUBBLEFISH2_SCHEDULER
staticprivate
Initial value:
=
"bubblefish2-scheduler"

Definition at line 135 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and useBubbleFish2Scheduler().

◆ SWL_DATA_START

const std::string LLVMTCECmdLineOptions::SWL_DATA_START = "data-start"
staticprivate

◆ SWL_DEBUG_FLAG

const std::string LLVMTCECmdLineOptions::SWL_DEBUG_FLAG = "debug"
staticprivate

Definition at line 118 of file LLVMTCECmdLineOptions.hh.

Referenced by debugFlag(), and LLVMTCECmdLineOptions().

◆ SWL_DISABLE_HWLOOPS

const std::string LLVMTCECmdLineOptions::SWL_DISABLE_HWLOOPS
staticprivate
Initial value:
=
"disable-hwloops"

Definition at line 148 of file LLVMTCECmdLineOptions.hh.

Referenced by disableHWLoops(), and LLVMTCECmdLineOptions().

◆ SWL_DUMP_DDGS_DOT

const std::string LLVMTCECmdLineOptions::SWL_DUMP_DDGS_DOT = "dump-ddgs-dot"
staticprivate

Definition at line 131 of file LLVMTCECmdLineOptions.hh.

Referenced by dumpDDGsDot(), and LLVMTCECmdLineOptions().

◆ SWL_DUMP_DDGS_XML

const std::string LLVMTCECmdLineOptions::SWL_DUMP_DDGS_XML = "dump-ddgs-xml"
staticprivate

Definition at line 132 of file LLVMTCECmdLineOptions.hh.

Referenced by dumpDDGsXML(), and LLVMTCECmdLineOptions().

◆ SWL_EMULATION_LIB

const std::string LLVMTCECmdLineOptions::SWL_EMULATION_LIB = "emulation"
staticprivate

Definition at line 116 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions().

◆ SWL_ENABLE_VECTOR_BACKEND

const std::string LLVMTCECmdLineOptions::SWL_ENABLE_VECTOR_BACKEND
staticprivate
Initial value:
=
"vector-backend"

Definition at line 139 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and useVectorBackend().

◆ SWL_EXPERIMENTAL_REGALLOC

const std::string LLVMTCECmdLineOptions::SWL_EXPERIMENTAL_REGALLOC
staticprivate

Definition at line 123 of file LLVMTCECmdLineOptions.hh.

◆ SWL_GEN_PLUGIN_ONLY

const std::string LLVMTCECmdLineOptions::SWL_GEN_PLUGIN_ONLY
staticprivate
Initial value:
=
"gen-plugin-only"

Definition at line 147 of file LLVMTCECmdLineOptions.hh.

Referenced by generatePluginOnly(), and LLVMTCECmdLineOptions().

◆ SWL_INIT_SP

const std::string LLVMTCECmdLineOptions::SWL_INIT_SP = "init-sp"
staticprivate

◆ SWL_OPT_LEVEL

const std::string LLVMTCECmdLineOptions::SWL_OPT_LEVEL = "optimize"
staticprivate

Definition at line 119 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions().

◆ SWL_PRIMARY_FUNCTIONS

const std::string LLVMTCECmdLineOptions::SWL_PRIMARY_FUNCTIONS
staticprivate
Initial value:
=
"primary-functions"

Definition at line 121 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions().

◆ SWL_PRINT_INLINE_ASM_WARNINGS

const std::string LLVMTCECmdLineOptions::SWL_PRINT_INLINE_ASM_WARNINGS
staticprivate
Initial value:
=
"print-inline-asm-warnings"

Definition at line 146 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and printInlineAsmWarnings().

◆ SWL_SAVE_BACKEND_PLUGIN

const std::string LLVMTCECmdLineOptions::SWL_SAVE_BACKEND_PLUGIN
staticprivate
Initial value:
=
"save-backend-plugin"

Definition at line 133 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and saveBackendPlugin().

◆ SWL_TD_SCHEDULER

const std::string LLVMTCECmdLineOptions::SWL_TD_SCHEDULER = "td-scheduler"
staticprivate

Definition at line 136 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and useTDScheduler().

◆ SWL_TEMP_DIR

const std::string LLVMTCECmdLineOptions::SWL_TEMP_DIR = "temp-dir"
staticprivate

Definition at line 138 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and tempDir().

◆ SWL_USE_OLD_BACKEND_SOURCES

const std::string LLVMTCECmdLineOptions::SWL_USE_OLD_BACKEND_SOURCES
staticprivate
Initial value:
=
"use-old-backend-src"

Definition at line 137 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and useOldBackendSources().

◆ SWL_WORK_ITEM_AA_FILE

const std::string LLVMTCECmdLineOptions::SWL_WORK_ITEM_AA_FILE
staticprivate
Initial value:
=
"wi-aa-filename"

Definition at line 140 of file LLVMTCECmdLineOptions.hh.

Referenced by isWorkItemAAFileDefined(), LLVMTCECmdLineOptions(), and workItemAAFile().

◆ SWS_EMULATION_LIB

const std::string LLVMTCECmdLineOptions::SWS_EMULATION_LIB = "e"
staticprivate

◆ SWS_OPT_LEVEL

const std::string LLVMTCECmdLineOptions::SWS_OPT_LEVEL = "O"
staticprivate

Definition at line 120 of file LLVMTCECmdLineOptions.hh.

Referenced by isOptLevelDefined(), LLVMTCECmdLineOptions(), and optLevel().

◆ SWS_PRIMARY_FUNCTIONS

const std::string LLVMTCECmdLineOptions::SWS_PRIMARY_FUNCTIONS = "p"
staticprivate

Definition at line 122 of file LLVMTCECmdLineOptions.hh.

Referenced by LLVMTCECmdLineOptions(), and primaryFunctions().

◆ USAGE

const std::string LLVMTCECmdLineOptions::USAGE
staticprivate
Initial value:
=
"Usage: llvm-tce [OPTION]... BYTECODE\n"
"Compile LLVM bytecode for target TCE architecture.\n"

Definition at line 145 of file LLVMTCECmdLineOptions.hh.

◆ VERBOSE_SWITCH

const std::string LLVMTCECmdLineOptions::VERBOSE_SWITCH = "verbose"
staticprivate

Switch for verbose output listing scheduler modules.

Definition at line 125 of file LLVMTCECmdLineOptions.hh.

Referenced by isVerboseSwitchDefined(), and LLVMTCECmdLineOptions().


The documentation for this class was generated from the following files:
SimpleInterPassDatum
Definition: InterPassDatum.hh:64
LLVMTCECmdLineOptions::SWL_DEBUG_FLAG
static const std::string SWL_DEBUG_FLAG
Definition: LLVMTCECmdLineOptions.hh:118
LLVMTCECmdLineOptions::SWL_TEMP_DIR
static const std::string SWL_TEMP_DIR
Definition: LLVMTCECmdLineOptions.hh:138
CmdLineOptionParser::unsignedInteger
virtual unsigned unsignedInteger(int index=0) const
Definition: CmdLineOptionParser.cc:90
LLVMTCECmdLineOptions::SWL_ENABLE_VECTOR_BACKEND
static const std::string SWL_ENABLE_VECTOR_BACKEND
Definition: LLVMTCECmdLineOptions.hh:139
LLVMTCECmdLineOptions::LLVM_USER_ARGS
static const std::string LLVM_USER_ARGS
Definition: LLVMTCECmdLineOptions.hh:128
LLVMTCECmdLineOptions::SWL_BU_SCHEDULER
static const std::string SWL_BU_SCHEDULER
Definition: LLVMTCECmdLineOptions.hh:134
CmdLineOptionParser::isDefined
bool isDefined()
Definition: CmdLineOptionParser.cc:169
LLVMTCECmdLineOptions::SWL_OPT_LEVEL
static const std::string SWL_OPT_LEVEL
Definition: LLVMTCECmdLineOptions.hh:119
LLVMTCECmdLineOptions::SWL_DATA_START
static const std::string SWL_DATA_START
Definition: LLVMTCECmdLineOptions.hh:144
LLVMTCECmdLineOptions::DISABLE_DSF
static const std::string DISABLE_DSF
Definition: LLVMTCECmdLineOptions.hh:129
LLVMTCECmdLineOptions::SWL_ASSUME_ADF_STACKALIGNMENT
static const std::string SWL_ASSUME_ADF_STACKALIGNMENT
Definition: LLVMTCECmdLineOptions.hh:149
LLVMTCECmdLineOptions::SWL_DUMP_DDGS_XML
static const std::string SWL_DUMP_DDGS_XML
Definition: LLVMTCECmdLineOptions.hh:132
CmdLineOptionParser::isFlagOn
virtual bool isFlagOn() const
Definition: CmdLineOptionParser.cc:126
LLVMTCECmdLineOptions::SWS_EMULATION_LIB
static const std::string SWS_EMULATION_LIB
Definition: LLVMTCECmdLineOptions.hh:117
LLVMTCECmdLineOptions::DISABLE_ADDRESS_SPACE_AA
static const std::string DISABLE_ADDRESS_SPACE_AA
Definition: LLVMTCECmdLineOptions.hh:130
LLVMTCECmdLineOptions::SWS_PRIMARY_FUNCTIONS
static const std::string SWS_PRIMARY_FUNCTIONS
Definition: LLVMTCECmdLineOptions.hh:122
LLVMTCECmdLineOptions::SWL_DISABLE_HWLOOPS
static const std::string SWL_DISABLE_HWLOOPS
Definition: LLVMTCECmdLineOptions.hh:148
CmdLineParser::addOption
void addOption(CmdLineOptionParser *opt)
CmdLineOptionParser::listSize
virtual int listSize() const
Definition: CmdLineOptionParser.cc:150
CmdLineOptionParser
Definition: CmdLineOptionParser.hh:56
LLVMTCECmdLineOptions::SWL_GEN_PLUGIN_ONLY
static const std::string SWL_GEN_PLUGIN_ONLY
Definition: LLVMTCECmdLineOptions.hh:147
LLVMTCECmdLineOptions::SWL_WORK_ITEM_AA_FILE
static const std::string SWL_WORK_ITEM_AA_FILE
Definition: LLVMTCECmdLineOptions.hh:140
LLVMTCECmdLineOptions::SWL_ANALYZE_INSTRUCTION_PATTERNS
static const std::string SWL_ANALYZE_INSTRUCTION_PATTERNS
Definition: LLVMTCECmdLineOptions.hh:141
LLVMTCECmdLineOptions::SWL_SAVE_BACKEND_PLUGIN
static const std::string SWL_SAVE_BACKEND_PLUGIN
Definition: LLVMTCECmdLineOptions.hh:133
BoolCmdLineOptionParser
Definition: CmdLineOptionParser.hh:278
LLVMTCECmdLineOptions::SWL_INIT_SP
static const std::string SWL_INIT_SP
Definition: LLVMTCECmdLineOptions.hh:143
LLVMTCECmdLineOptions::SWL_EMULATION_LIB
static const std::string SWL_EMULATION_LIB
Definition: LLVMTCECmdLineOptions.hh:116
FunctionNameList
SimpleInterPassDatum< std::set< std::string > > FunctionNameList
This datum is set in case the pass should only process (or ignore) certain functions....
Definition: InterPassDatum.hh:91
LLVMTCECmdLineOptions::SWL_PRINT_INLINE_ASM_WARNINGS
static const std::string SWL_PRINT_INLINE_ASM_WARNINGS
Definition: LLVMTCECmdLineOptions.hh:146
LLVMTCECmdLineOptions::SWL_USE_OLD_BACKEND_SOURCES
static const std::string SWL_USE_OLD_BACKEND_SOURCES
Definition: LLVMTCECmdLineOptions.hh:137
LLVMTCECmdLineOptions::DISABLE_LLVMAA
static const std::string DISABLE_LLVMAA
Definition: LLVMTCECmdLineOptions.hh:126
LLVMTCECmdLineOptions::SWL_TD_SCHEDULER
static const std::string SWL_TD_SCHEDULER
Definition: LLVMTCECmdLineOptions.hh:136
LLVMTCECmdLineOptions::SWL_BUBBLEFISH2_SCHEDULER
static const std::string SWL_BUBBLEFISH2_SCHEDULER
Definition: LLVMTCECmdLineOptions.hh:135
CmdLineOptionParser::String
virtual std::string String(int index=0) const
Definition: CmdLineOptionParser.cc:102
LLVMTCECmdLineOptions::CONSERVATIVE_PRE_RA_SCHEDULER
static const std::string CONSERVATIVE_PRE_RA_SCHEDULER
Definition: LLVMTCECmdLineOptions.hh:127
StringListCmdLineOptionParser
Definition: CmdLineOptionParser.hh:344
Environment::llvmtceCachePath
static std::string llvmtceCachePath()
Definition: Environment.cc:1087
LLVMTCECmdLineOptions::SWL_PRIMARY_FUNCTIONS
static const std::string SWL_PRIMARY_FUNCTIONS
Definition: LLVMTCECmdLineOptions.hh:121
LLVMTCECmdLineOptions::VERBOSE_SWITCH
static const std::string VERBOSE_SWITCH
Switch for verbose output listing scheduler modules.
Definition: LLVMTCECmdLineOptions.hh:125
CmdLineOptionParser::integer
virtual int integer(int index=0) const
Definition: CmdLineOptionParser.cc:84
CmdLineParser::findOption
CmdLineOptionParser * findOption(std::string name) const
Definition: CmdLineParser.cc:160
UnsignedIntegerCmdLineOptionParser
Definition: CmdLineOptionParser.hh:147
Application::TCEVersionString
static std::string TCEVersionString()
Definition: Application.cc:510
LLVMTCECmdLineOptions::SWS_OPT_LEVEL
static const std::string SWS_OPT_LEVEL
Definition: LLVMTCECmdLineOptions.hh:120
StringCmdLineOptionParser
Definition: CmdLineOptionParser.hh:180
LLVMTCECmdLineOptions::SWL_DUMP_DDGS_DOT
static const std::string SWL_DUMP_DDGS_DOT
Definition: LLVMTCECmdLineOptions.hh:131
IntegerCmdLineOptionParser
Definition: CmdLineOptionParser.hh:117
LLVMTCECmdLineOptions::SWL_BACKEND_CACHE_DIR
static const std::string SWL_BACKEND_CACHE_DIR
Definition: LLVMTCECmdLineOptions.hh:142