diff options
Diffstat (limited to 'gnu/llvm/docs/CommandGuide/llvm-bcanalyzer.rst')
| -rw-r--r-- | gnu/llvm/docs/CommandGuide/llvm-bcanalyzer.rst | 305 |
1 files changed, 0 insertions, 305 deletions
diff --git a/gnu/llvm/docs/CommandGuide/llvm-bcanalyzer.rst b/gnu/llvm/docs/CommandGuide/llvm-bcanalyzer.rst deleted file mode 100644 index 7254088ec94..00000000000 --- a/gnu/llvm/docs/CommandGuide/llvm-bcanalyzer.rst +++ /dev/null @@ -1,305 +0,0 @@ -llvm-bcanalyzer - LLVM bitcode analyzer -======================================= - -SYNOPSIS --------- - -:program:`llvm-bcanalyzer` [*options*] [*filename*] - -DESCRIPTION ------------ - -The :program:`llvm-bcanalyzer` command is a small utility for analyzing bitcode -files. The tool reads a bitcode file (such as generated with the -:program:`llvm-as` tool) and produces a statistical report on the contents of -the bitcode file. The tool can also dump a low level but human readable -version of the bitcode file. This tool is probably not of much interest or -utility except for those working directly with the bitcode file format. Most -LLVM users can just ignore this tool. - -If *filename* is omitted or is ``-``, then :program:`llvm-bcanalyzer` reads its -input from standard input. This is useful for combining the tool into a -pipeline. Output is written to the standard output. - -OPTIONS -------- - -.. program:: llvm-bcanalyzer - -.. option:: -nodetails - - Causes :program:`llvm-bcanalyzer` to abbreviate its output by writing out only - a module level summary. The details for individual functions are not - displayed. - -.. option:: -dump - - Causes :program:`llvm-bcanalyzer` to dump the bitcode in a human readable - format. This format is significantly different from LLVM assembly and - provides details about the encoding of the bitcode file. - -.. option:: -verify - - Causes :program:`llvm-bcanalyzer` to verify the module produced by reading the - bitcode. This ensures that the statistics generated are based on a consistent - module. - -.. option:: -help - - Print a summary of command line options. - -EXIT STATUS ------------ - -If :program:`llvm-bcanalyzer` succeeds, it will exit with 0. Otherwise, if an -error occurs, it will exit with a non-zero value, usually 1. - -SUMMARY OUTPUT DEFINITIONS --------------------------- - -The following items are always printed by llvm-bcanalyzer. They comprize the -summary output. - -**Bitcode Analysis Of Module** - - This just provides the name of the module for which bitcode analysis is being - generated. - -**Bitcode Version Number** - - The bitcode version (not LLVM version) of the file read by the analyzer. - -**File Size** - - The size, in bytes, of the entire bitcode file. - -**Module Bytes** - - The size, in bytes, of the module block. Percentage is relative to File Size. - -**Function Bytes** - - The size, in bytes, of all the function blocks. Percentage is relative to File - Size. - -**Global Types Bytes** - - The size, in bytes, of the Global Types Pool. Percentage is relative to File - Size. This is the size of the definitions of all types in the bitcode file. - -**Constant Pool Bytes** - - The size, in bytes, of the Constant Pool Blocks Percentage is relative to File - Size. - -**Module Globals Bytes** - - Ths size, in bytes, of the Global Variable Definitions and their initializers. - Percentage is relative to File Size. - -**Instruction List Bytes** - - The size, in bytes, of all the instruction lists in all the functions. - Percentage is relative to File Size. Note that this value is also included in - the Function Bytes. - -**Compaction Table Bytes** - - The size, in bytes, of all the compaction tables in all the functions. - Percentage is relative to File Size. Note that this value is also included in - the Function Bytes. - -**Symbol Table Bytes** - - The size, in bytes, of all the symbol tables in all the functions. Percentage is - relative to File Size. Note that this value is also included in the Function - Bytes. - -**Dependent Libraries Bytes** - - The size, in bytes, of the list of dependent libraries in the module. Percentage - is relative to File Size. Note that this value is also included in the Module - Global Bytes. - -**Number Of Bitcode Blocks** - - The total number of blocks of any kind in the bitcode file. - -**Number Of Functions** - - The total number of function definitions in the bitcode file. - -**Number Of Types** - - The total number of types defined in the Global Types Pool. - -**Number Of Constants** - - The total number of constants (of any type) defined in the Constant Pool. - -**Number Of Basic Blocks** - - The total number of basic blocks defined in all functions in the bitcode file. - -**Number Of Instructions** - - The total number of instructions defined in all functions in the bitcode file. - -**Number Of Long Instructions** - - The total number of long instructions defined in all functions in the bitcode - file. Long instructions are those taking greater than 4 bytes. Typically long - instructions are GetElementPtr with several indices, PHI nodes, and calls to - functions with large numbers of arguments. - -**Number Of Operands** - - The total number of operands used in all instructions in the bitcode file. - -**Number Of Compaction Tables** - - The total number of compaction tables in all functions in the bitcode file. - -**Number Of Symbol Tables** - - The total number of symbol tables in all functions in the bitcode file. - -**Number Of Dependent Libs** - - The total number of dependent libraries found in the bitcode file. - -**Total Instruction Size** - - The total size of the instructions in all functions in the bitcode file. - -**Average Instruction Size** - - The average number of bytes per instruction across all functions in the bitcode - file. This value is computed by dividing Total Instruction Size by Number Of - Instructions. - -**Maximum Type Slot Number** - - The maximum value used for a type's slot number. Larger slot number values take - more bytes to encode. - -**Maximum Value Slot Number** - - The maximum value used for a value's slot number. Larger slot number values take - more bytes to encode. - -**Bytes Per Value** - - The average size of a Value definition (of any type). This is computed by - dividing File Size by the total number of values of any type. - -**Bytes Per Global** - - The average size of a global definition (constants and global variables). - -**Bytes Per Function** - - The average number of bytes per function definition. This is computed by - dividing Function Bytes by Number Of Functions. - -**# of VBR 32-bit Integers** - - The total number of 32-bit integers encoded using the Variable Bit Rate - encoding scheme. - -**# of VBR 64-bit Integers** - - The total number of 64-bit integers encoded using the Variable Bit Rate encoding - scheme. - -**# of VBR Compressed Bytes** - - The total number of bytes consumed by the 32-bit and 64-bit integers that use - the Variable Bit Rate encoding scheme. - -**# of VBR Expanded Bytes** - - The total number of bytes that would have been consumed by the 32-bit and 64-bit - integers had they not been compressed with the Variable Bit Rage encoding - scheme. - -**Bytes Saved With VBR** - - The total number of bytes saved by using the Variable Bit Rate encoding scheme. - The percentage is relative to # of VBR Expanded Bytes. - -DETAILED OUTPUT DEFINITIONS ---------------------------- - -The following definitions occur only if the -nodetails option was not given. -The detailed output provides additional information on a per-function basis. - -**Type** - - The type signature of the function. - -**Byte Size** - - The total number of bytes in the function's block. - -**Basic Blocks** - - The number of basic blocks defined by the function. - -**Instructions** - - The number of instructions defined by the function. - -**Long Instructions** - - The number of instructions using the long instruction format in the function. - -**Operands** - - The number of operands used by all instructions in the function. - -**Instruction Size** - - The number of bytes consumed by instructions in the function. - -**Average Instruction Size** - - The average number of bytes consumed by the instructions in the function. - This value is computed by dividing Instruction Size by Instructions. - -**Bytes Per Instruction** - - The average number of bytes used by the function per instruction. This value - is computed by dividing Byte Size by Instructions. Note that this is not the - same as Average Instruction Size. It computes a number relative to the total - function size not just the size of the instruction list. - -**Number of VBR 32-bit Integers** - - The total number of 32-bit integers found in this function (for any use). - -**Number of VBR 64-bit Integers** - - The total number of 64-bit integers found in this function (for any use). - -**Number of VBR Compressed Bytes** - - The total number of bytes in this function consumed by the 32-bit and 64-bit - integers that use the Variable Bit Rate encoding scheme. - -**Number of VBR Expanded Bytes** - - The total number of bytes in this function that would have been consumed by - the 32-bit and 64-bit integers had they not been compressed with the Variable - Bit Rate encoding scheme. - -**Bytes Saved With VBR** - - The total number of bytes saved in this function by using the Variable Bit - Rate encoding scheme. The percentage is relative to # of VBR Expanded Bytes. - -SEE ALSO --------- - -:doc:`/CommandGuide/llvm-dis`, :doc:`/BitCodeFormat` - |
