libFirm
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Modules
Here is a list of all modules:
[detail level 123]
oAbstract Data StructuresThis module contains abstract datatypes like lists and hashmaps
|oArrays
|oGeneric HashsetGeneric Hashset
|oLinked ListsDoubly linked lists
|oMemory Allocation
|oPointer MapPointer->Pointer hashmap
|oPointer Set(Hash)sets containing pointers
|oPriority QueueA priority queue
|\Union-FindUnion-Find data structure
oAlgorithmsThis module contains generic algorithms like bipartite matching or solvers for linear equation systems
|oBipartite MatchingSolved bipartite matching problem
|oGauss Jordan EliminationSolves a system of linear equations
|oHash Functions
|\Hungarian AlgorithmSolves bipartite matching problems (minimize/maximize cost function)
oAnalyses
|oBasic Block Execution FrequencyExecution frequencies specify how often a basic block is expected to get executed during execution of a function
|oCallgraphThis file contains the representation of the callgraph
|oControl Dependence
|oDominance InformationThe dominator information is stored in three fields of block nodes:
|oDynamic Reverse Edges
|oLoops
|oMemory DisambiguatorA memory disambiguator checks whether 2 given SSA values representing addresses alias
|oNode HeightsThe height is a measure for the longest data dependency path from a node to the end of a basic block
|oReverse EdgesOut-Edges are the reverse of the edges in a firm graph (also called def-use edges)
|\Value InformationInformation about SSA-values (ranges, known bits, ...)
oCode GenerationCode Generation (backend) produces machine-code
|\Just in Time CompilationProvides interface to generate code and resolve symbols in memory buffers
oCorrectness Tests
oEntitiesAn entity is the Firm representation of an object known to the program
|\Entity Initializers
oIdentifiers
oInput and Output
oLibrary InitializationThe functions in this section deal with initialization and deinitalization of the libFirm library
oLoweringLowering is the process of transforming a highlevel representation (a representation closer to the sourcecode) into a lower-level representation (something closer to the target machine)
oPrinting and VisualisationThis module contains functions for printing and visualizing libfirm data structures like programs, graphs and nodes for humans
|oString FormattingThese functions allow printing of formated strings with support for printing firm objects in a human readable form
|\VisualisationDumps information so it can be visualised
oProcedure GraphThis struct contains all information about a procedure
|oConstruction Support
|oNodesIr_node - a datatype representing a Firm node
|\TraversingTraverse graphs:
oProgramIr_prog keeps information about a program:
oSource ReferencesFirm requires a debugging module fulfilling this interface, else no debugging information is passed to the backend
oStatistic EventsThe statistics system helps to evaluate the effects of compiler passes and transformations
oTarget Machine ValuesTarvals only represent values of mode_sort:
oTarget Setup and Information
|oMachine TripleFunctions to work with machine triples
|\Target platform informationThe functions in this API return information about the operating system or runtime system
oTransformations and Optimizations
|oFlagsFlags to customize the behavior of libfirm
|oGraph Transformations
|\Local Optimizations
oType SystemDatastructure to hold type information
|oArrayThe array type represents linear arrangement of objects of the same type
|oClassIf the type opcode is set to type_class the type represents class types
|oCode
|oCompoundThese functions are common to classes, structs and unions, collectively known as "compound types"
|oFrame
|oMethodA method type represents a method, function or procedure type
|oPointerPointer types:
|oPrimitivePrimitive types are types that represent atomic data values that map directly to modes
|oSegmentSegment types represent segments in the object file
|oStructA struct type represents aggregate types that consist of a list of fields
|oTraversing
|oUnionThe union type represents union types
|\UnknownThis type is an auxiliary type dedicated to support type analyses
\Value ModesThis module specifies the modes that type the firm nodes