mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-02 10:33:53 +00:00
Updated the BytecodeAnalysis data structure to contain additional fields
needed for analysis of individual functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14125 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
def0e55c87
commit
38a6cfe41e
@ -25,6 +25,8 @@
|
||||
|
||||
namespace llvm {
|
||||
|
||||
class Function;
|
||||
|
||||
/// This structure is used to contain the output of the Bytecode Analysis
|
||||
/// library. It simply contains fields to hold each item of the analysis
|
||||
/// results.
|
||||
@ -69,14 +71,18 @@ struct BytecodeAnalysis {
|
||||
unsigned byteSize; ///< The size of the function in bytecode bytes
|
||||
unsigned numInstructions; ///< The number of instructions in the function
|
||||
unsigned numBasicBlocks; ///< The number of basic blocks in the function
|
||||
unsigned numPhis; ///< Number of Phi Nodes in Instructions
|
||||
unsigned numOperands; ///< The number of operands in the function
|
||||
double density; ///< Density of function
|
||||
double vbrEffectiveness; ///< Effectiveness of variable bit rate encoding.
|
||||
double density; ///< Density of function
|
||||
unsigned vbrCount32; ///< Number of 32-bit vbr values
|
||||
unsigned vbrCount64; ///< Number of 64-bit vbr values
|
||||
unsigned vbrCompBytes; ///< Number of vbr bytes (compressed)
|
||||
unsigned vbrExpdBytes; ///< Number of vbr bytes (expanded)
|
||||
};
|
||||
|
||||
/// A mapping of function slot numbers to the collected information about
|
||||
/// the function.
|
||||
std::map<unsigned,BytecodeFunctionInfo> FunctionInfo;
|
||||
std::map<const Function*,BytecodeFunctionInfo> FunctionInfo;
|
||||
|
||||
/// The content of the bytecode dump
|
||||
std::string BytecodeDump;
|
||||
|
Loading…
x
Reference in New Issue
Block a user