LLVM 22.0.0git
ModuleSummaryIndex.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "module-summary-index"

Functions

 STATISTIC (ReadOnlyLiveGVars, "Number of live global variables marked read only")
 STATISTIC (WriteOnlyLiveGVars, "Number of live global variables marked write only")
static void propagateAttributesToRefs (GlobalValueSummary *S, DenseSet< ValueInfo > &MarkedNonReadWriteOnly)
static std::string linkageToString (GlobalValue::LinkageTypes LT)
static std::string fflagsToString (FunctionSummary::FFlags F)
static std::string getSummaryAttributes (GlobalValueSummary *GVS)
static std::string getNodeVisualName (GlobalValue::GUID Id)
static std::string getNodeVisualName (const ValueInfo &VI)
static std::string getNodeLabel (const ValueInfo &VI, GlobalValueSummary *GVS)
static void defineExternalNode (raw_ostream &OS, const char *Pfx, const ValueInfo &VI, GlobalValue::GUID Id)
static bool hasReadOnlyFlag (const GlobalValueSummary *S)
static bool hasWriteOnlyFlag (const GlobalValueSummary *S)
static bool hasConstantFlag (const GlobalValueSummary *S)

Variables

static cl::opt< boolPropagateAttrs ("propagate-attrs", cl::init(true), cl::Hidden, cl::desc("Propagate attributes in index"))
static cl::opt< boolImportConstantsWithRefs ("import-constants-with-refs", cl::init(true), cl::Hidden, cl::desc("Import constant global variables with references"))

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "module-summary-index"

Definition at line 22 of file ModuleSummaryIndex.cpp.

Function Documentation

◆ defineExternalNode()

void defineExternalNode ( raw_ostream & OS,
const char * Pfx,
const ValueInfo & VI,
GlobalValue::GUID Id )
static

Definition at line 528 of file ModuleSummaryIndex.cpp.

References getNodeVisualName().

Referenced by llvm::ModuleSummaryIndex::exportToDot().

◆ fflagsToString()

std::string fflagsToString ( FunctionSummary::FFlags F)
static

Definition at line 476 of file ModuleSummaryIndex.cpp.

References F.

Referenced by getSummaryAttributes().

◆ getNodeLabel()

◆ getNodeVisualName() [1/2]

std::string getNodeVisualName ( const ValueInfo & VI)
static

Definition at line 507 of file ModuleSummaryIndex.cpp.

References getNodeVisualName().

◆ getNodeVisualName() [2/2]

std::string getNodeVisualName ( GlobalValue::GUID Id)
static

Definition at line 503 of file ModuleSummaryIndex.cpp.

Referenced by defineExternalNode(), getNodeLabel(), and getNodeVisualName().

◆ getSummaryAttributes()

std::string getSummaryAttributes ( GlobalValueSummary * GVS)
static

Definition at line 494 of file ModuleSummaryIndex.cpp.

References llvm::dyn_cast_or_null(), and fflagsToString().

Referenced by getNodeLabel().

◆ hasConstantFlag()

bool hasConstantFlag ( const GlobalValueSummary * S)
static

Definition at line 553 of file ModuleSummaryIndex.cpp.

References llvm::dyn_cast().

Referenced by llvm::ModuleSummaryIndex::exportToDot().

◆ hasReadOnlyFlag()

bool hasReadOnlyFlag ( const GlobalValueSummary * S)
static

Definition at line 541 of file ModuleSummaryIndex.cpp.

References llvm::dyn_cast().

Referenced by llvm::ModuleSummaryIndex::exportToDot().

◆ hasWriteOnlyFlag()

bool hasWriteOnlyFlag ( const GlobalValueSummary * S)
static

Definition at line 547 of file ModuleSummaryIndex.cpp.

References llvm::dyn_cast().

Referenced by llvm::ModuleSummaryIndex::exportToDot().

◆ linkageToString()

◆ propagateAttributesToRefs()

◆ STATISTIC() [1/2]

STATISTIC ( ReadOnlyLiveGVars ,
"Number of live global variables marked read only"  )

◆ STATISTIC() [2/2]

STATISTIC ( WriteOnlyLiveGVars ,
"Number of live global variables marked write only"  )

Variable Documentation

◆ ImportConstantsWithRefs

cl::opt< bool > ImportConstantsWithRefs("import-constants-with-refs", cl::init(true), cl::Hidden, cl::desc("Import constant global variables with references")) ( "import-constants-with-refs" ,
cl::init(true) ,
cl::Hidden ,
cl::desc("Import constant global variables with references")  )
static

◆ PropagateAttrs

cl::opt< bool > PropagateAttrs("propagate-attrs", cl::init(true), cl::Hidden, cl::desc("Propagate attributes in index")) ( "propagate-attrs" ,
cl::init(true) ,
cl::Hidden ,
cl::desc("Propagate attributes in index")  )
static