LLVM 22.0.0git
LVOptions.h File Reference

Go to the source code of this file.

Classes

class  llvm::logicalview::LVOptions
class  llvm::logicalview::LVPatterns

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::logicalview

Macros

#define BOOL_FUNCTION(FAMILY, FIELD)
#define UNSIGNED_FUNCTION(FAMILY, FIELD)
#define STD_STRING_FUNCTION(FAMILY, FIELD)
#define STDSET_FUNCTION_4(FAMILY, FIELD, TYPE, SET)
#define STDSET_FUNCTION_5(FAMILY, FIELD, ENTRY, TYPE, SET)
#define ATTRIBUTE_OPTION(FIELD)
#define OUTPUT_OPTION(FIELD)
#define PRINT_OPTION(FIELD)
#define WARNING_OPTION(FIELD)
#define COMPARE_OPTION(FIELD)
#define REPORT_OPTION(FIELD)
#define INTERNAL_OPTION(FIELD)

Typedefs

using llvm::logicalview::LVOffsetSet = std::set<uint64_t>
using llvm::logicalview::LVAttributeKindSet = std::set<LVAttributeKind>
using llvm::logicalview::LVCompareKindSet = std::set<LVCompareKind>
using llvm::logicalview::LVOutputKindSet = std::set<LVOutputKind>
using llvm::logicalview::LVPrintKindSet = std::set<LVPrintKind>
using llvm::logicalview::LVReportKindSet = std::set<LVReportKind>
using llvm::logicalview::LVWarningKindSet = std::set<LVWarningKind>
using llvm::logicalview::LVInternalKindSet = std::set<LVInternalKind>

Enumerations

enum class  llvm::logicalview::LVAttributeKind {
  llvm::logicalview::All , llvm::logicalview::Argument , llvm::logicalview::Base , llvm::logicalview::Coverage ,
  llvm::logicalview::Directories , llvm::logicalview::Discarded , llvm::logicalview::Discriminator , llvm::logicalview::Encoded ,
  llvm::logicalview::Extended , llvm::logicalview::Filename , llvm::logicalview::Files , llvm::logicalview::Format ,
  llvm::logicalview::Gaps , llvm::logicalview::Generated , llvm::logicalview::Global , llvm::logicalview::Inserted ,
  llvm::logicalview::Language , llvm::logicalview::Level , llvm::logicalview::Linkage , llvm::logicalview::Local ,
  llvm::logicalview::Location , llvm::logicalview::Offset , llvm::logicalview::Pathname , llvm::logicalview::Producer ,
  llvm::logicalview::Publics , llvm::logicalview::Qualified , llvm::logicalview::Qualifier , llvm::logicalview::Range ,
  llvm::logicalview::Reference , llvm::logicalview::Register , llvm::logicalview::Size , llvm::logicalview::Standard ,
  llvm::logicalview::Subrange , llvm::logicalview::System , llvm::logicalview::Typename , llvm::logicalview::Underlying ,
  llvm::logicalview::Zero
}
enum class  llvm::logicalview::LVCompareKind {
  llvm::logicalview::All , llvm::logicalview::Lines , llvm::logicalview::Scopes , llvm::logicalview::Symbols ,
  llvm::logicalview::Types
}
enum class  llvm::logicalview::LVOutputKind { llvm::logicalview::All , llvm::logicalview::Split , llvm::logicalview::Json , llvm::logicalview::Text }
enum class  llvm::logicalview::LVPrintKind {
  llvm::logicalview::All , llvm::logicalview::Elements , llvm::logicalview::Instructions , llvm::logicalview::Lines ,
  llvm::logicalview::Scopes , llvm::logicalview::Sizes , llvm::logicalview::Symbols , llvm::logicalview::Summary ,
  llvm::logicalview::Types , llvm::logicalview::Warnings
}
enum class  llvm::logicalview::LVReportKind {
  llvm::logicalview::All , llvm::logicalview::Children , llvm::logicalview::List , llvm::logicalview::Parents ,
  llvm::logicalview::View
}
enum class  llvm::logicalview::LVWarningKind {
  llvm::logicalview::All , llvm::logicalview::Coverages , llvm::logicalview::Lines , llvm::logicalview::Locations ,
  llvm::logicalview::Ranges
}
enum class  llvm::logicalview::LVInternalKind {
  llvm::logicalview::All , llvm::logicalview::Cmdline , llvm::logicalview::ID , llvm::logicalview::Integrity ,
  llvm::logicalview::None , llvm::logicalview::Tag
}

Functions

LVOptionsllvm::logicalview::options ()
void llvm::logicalview::setOptions (LVOptions *Options)
LVPatternsllvm::logicalview::patterns ()

Macro Definition Documentation

◆ ATTRIBUTE_OPTION

#define ATTRIBUTE_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Attribute, FIELD, LVAttributeKind, Kinds)
#define FIELD(name)
#define STDSET_FUNCTION_4(FAMILY, FIELD, TYPE, SET)
Definition LVOptions.h:51

Definition at line 65 of file LVOptions.h.

◆ BOOL_FUNCTION

#define BOOL_FUNCTION ( FAMILY,
FIELD )
Value:
bool get##FAMILY##FIELD() const { return FAMILY.FIELD; } \
void set##FAMILY##FIELD() { FAMILY.FIELD = true; } \
void reset##FAMILY##FIELD() { FAMILY.FIELD = false; }

Definition at line 31 of file LVOptions.h.

◆ COMPARE_OPTION

#define COMPARE_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Compare, FIELD, LVCompareKind, Elements)

Definition at line 80 of file LVOptions.h.

◆ INTERNAL_OPTION

#define INTERNAL_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Internal, FIELD, LVInternalKind, Kinds)

Definition at line 88 of file LVOptions.h.

◆ OUTPUT_OPTION

#define OUTPUT_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Output, FIELD, LVOutputKind, Kinds)

Definition at line 69 of file LVOptions.h.

◆ PRINT_OPTION

#define PRINT_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Print, FIELD, LVPrintKind, Kinds)

Definition at line 73 of file LVOptions.h.

◆ REPORT_OPTION

#define REPORT_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Report, FIELD, LVReportKind, Kinds)

Definition at line 84 of file LVOptions.h.

◆ STD_STRING_FUNCTION

#define STD_STRING_FUNCTION ( FAMILY,
FIELD )
Value:
std::string get##FAMILY##FIELD() const { return FAMILY.FIELD; } \
void set##FAMILY##FIELD(std::string FIELD) { \
FAMILY.FIELD = std::move(FIELD); \
} \
void reset##FAMILY##FIELD() { FAMILY.FIELD = ""; }

Definition at line 43 of file LVOptions.h.

◆ STDSET_FUNCTION_4

#define STDSET_FUNCTION_4 ( FAMILY,
FIELD,
TYPE,
SET )
Value:
bool get##FAMILY##FIELD() const { \
return FAMILY.SET.find(TYPE::FIELD) != FAMILY.SET.end(); \
} \
void set##FAMILY##FIELD() { FAMILY.SET.insert(TYPE::FIELD); } \
void reset##FAMILY##FIELD() { FAMILY.SET.erase(TYPE::FIELD); }

Definition at line 51 of file LVOptions.h.

◆ STDSET_FUNCTION_5

#define STDSET_FUNCTION_5 ( FAMILY,
FIELD,
ENTRY,
TYPE,
SET )
Value:
bool get##FAMILY##FIELD##ENTRY() const { \
return FAMILY.SET.find(TYPE::ENTRY) != FAMILY.SET.end(); \
} \
void set##FAMILY##FIELD##ENTRY() { FAMILY.SET.insert(TYPE::ENTRY); }
#define ENTRY(ASMNAME, ENUM)

Definition at line 58 of file LVOptions.h.

◆ UNSIGNED_FUNCTION

#define UNSIGNED_FUNCTION ( FAMILY,
FIELD )
Value:
unsigned get##FAMILY##FIELD() const { return FAMILY.FIELD; } \
void set##FAMILY##FIELD(unsigned Value) { FAMILY.FIELD = Value; } \
void reset##FAMILY##FIELD() { FAMILY.FIELD = -1U; }

Definition at line 37 of file LVOptions.h.

◆ WARNING_OPTION

#define WARNING_OPTION ( FIELD)
Value:
STDSET_FUNCTION_4(Warning, FIELD, LVWarningKind, Kinds)

Definition at line 76 of file LVOptions.h.