Displaying 3 results from an estimated 3 matches for "getfunctionforedge".
2009 Jul 01
0
[LLVMdev] Profiling in LLVM Patch
...t; + // FunctionInformation - Count the number of times a function is executed
> + std::map<Function*, double> FunctionInformation;
Instead of multiple maps from Function* ->, would it make sense to collect these
three (or four) maps inside a per-function structure?
> + // getFunctionForEdge() - This returns the Function for a given Edge. This
> + // requires special handling for (0,entry) so its centralised here.
> + static inline Function* getFunctionForEdge(Edge E) {
> + BasicBlock *BB = E.first;
> + if ( BB == 0 ) { BB = E.second; };
> + assert (...
2009 Jun 29
7
[LLVMdev] Profiling in LLVM Patch
Hi all,
as proposed in
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-February/020396.html
I implemented the algorithm presented in [Ball94]. It only instruments
the minimal number of edges necessary for edge profiling.
The main changes introduced by this patch are:
*) a interface compatible rewrite of ProfileInfo
*) a cleanup of ProfileInfoLoader
(some functionality in ProfileInfoLoader
2009 Jul 01
12
[LLVMdev] Profiling in LLVM Patch
..., double> FunctionInformation;
>
> Instead of multiple maps from Function* ->, would it make sense to collect these
> three (or four) maps inside a per-function structure?
Yes, makes sense, its then easier to factor out the retrieval and handling of this structure.
>> + // getFunctionForEdge() - This returns the Function for a given Edge. This
>> + // requires special handling for (0,entry) so its centralised here.
>> + static inline Function* getFunctionForEdge(Edge E) {
>> + BasicBlock *BB = E.first;
>> + if ( BB == 0 ) { BB = E.second; };
>...