Displaying 4 results from an estimated 4 matches for "cfgprofile".
2017 Jun 15
7
[RFC] Profile guided section layout
...-105,6 +106,8 @@ struct Configuration {
std::vector<SymbolVersion> VersionScriptLocals;
std::vector<uint8_t> BuildIdVector;
llvm::MapVector<Symbol *, RenamedSymbol> RenamedSymbols;
+ llvm::DenseMap<std::pair<llvm::StringRef, llvm::StringRef>, uint64_t>
+ CFGProfile;
bool AllowMultipleDefinition;
bool AsNeeded = false;
bool Bsymbolic;
@@ -124,6 +127,7 @@ struct Configuration {
bool GnuHash;
bool ICF;
bool MipsN32Abi = false;
+ bool NoCFGProfileReorder;
bool NoGnuUnique;
bool NoUndefinedVersion;
bool Nostdlib;
diff --git a/ELF/Driver...
2017 Jul 31
3
[RFC] Profile guided section layout
Hi Rafael,
On 07/31/2017 04:20 PM, Rafael Avila de Espindola via llvm-dev wrote:
> However, do we need to start with instrumentation? The original paper
> uses sampling with good results and current intel cpus can record every
> branch in a program.
>
> I would propose starting with just an lld patch that reads the call
> graph from a file. The format would be very similar to
2017 Jul 31
2
[RFC] Profile guided section layout
...-108,6 +109,8 @@ struct Configuration {
std::vector<SymbolVersion> VersionScriptLocals;
std::vector<uint8_t> BuildIdVector;
llvm::MapVector<Symbol *, RenamedSymbol> RenamedSymbols;
+ llvm::DenseMap<std::pair<llvm::StringRef, llvm::StringRef>, uint64_t>
+ CFGProfile;
bool AllowMultipleDefinition;
bool AsNeeded = false;
bool Bsymbolic;
@@ -127,6 +130,7 @@ struct Configuration {
bool GnuHash;
bool ICF;
bool MipsN32Abi = false;
+ bool NoCFGProfileReorder;
bool NoGnuUnique;
bool NoUndefinedVersion;
bool NoinhibitExec;
diff --git a/ELF/D...
2017 Aug 01
2
[RFC] Profile guided section layout
...-108,6 +109,8 @@ struct Configuration {
std::vector<SymbolVersion> VersionScriptLocals;
std::vector<uint8_t> BuildIdVector;
llvm::MapVector<Symbol *, RenamedSymbol> RenamedSymbols;
+ llvm::DenseMap<std::pair<llvm::StringRef, llvm::StringRef>, uint64_t>
+ CFGProfile;
bool AllowMultipleDefinition;
bool AsNeeded = false;
bool Bsymbolic;
diff --git a/ELF/Driver.cpp b/ELF/Driver.cpp
index 263ba7b..04740db 100644
--- a/ELF/Driver.cpp
+++ b/ELF/Driver.cpp
@@ -600,6 +600,23 @@ static std::vector<StringRef> getLines(MemoryBufferRef MB) {
return Ret;...