![]() |
libFirm
|
▼Abstract Data Structures | This module contains abstract datatypes like lists and hashmaps |
Arrays | |
Generic Hashset | Generic Hashset |
Linked Lists | |
Memory Allocation | |
Pointer Map | Pointer->Pointer hashmap |
Pointer Set | (Hash)sets containing pointers |
Priority Queue | A priority queue |
Union-Find | Union-Find data structure |
▼Algorithms | This module contains generic algorithms like bipartite matching or solvers for linear equation systems |
Bipartite Matching | Solved bipartite matching problem |
Gauss Jordan Elimination | Solves a system of linear equations |
Hash Functions | |
Hungarian Algorithm | Solves bipartite matching problems (minimize/maximize cost function) |
▼Analyses | |
Basic Block Execution Frequency | |
Callgraph | |
Control Dependence | |
Dominance Information | |
Dynamic Reverse Edges | |
Loops | |
Memory Disambiguator | |
Node Heights | |
Reverse Edges | Out-Edges are the reverse of the edges in a firm graph (also called def-use edges) |
Value Information | Information about SSA-values (ranges, known bits, ...) |
▼Code Generation | |
Just in Time Compilation | |
Correctness Tests | |
▼Entities | |
Entity Initializers | |
Identifiers | |
Input and Output | |
Library Initialization | The functions in this section deal with initialization and deinitalization of the libFirm library |
Lowering | |
▼Printing and Visualisation | This module contains functions for printing and visualizing libfirm data structures like programs, graphs and nodes for humans |
String Formatting | These functions allow printing of formated strings with support for printing firm objects in a human readable form |
►Visualisation | |
▼Procedure Graph | |
Construction Support | |
►Nodes | |
Traversing | |
Program | |
Source References | Firm requires a debugging module fulfilling this interface, else no debugging information is passed to the backend |
Statistic Events | |
Target Machine Values | |
▼Target Setup and Information | |
Machine Triple | |
Target platform information | |
▼Transformations and Optimizations | |
Flags | Flags to customize the behavior of libfirm |
Graph Transformations | |
Local Optimizations | |
▼Type System | |
Array | |
Class | |
Code | |
►Compound | |
Frame | |
Method | |
Pointer | |
Primitive | |
Segment | |
Struct | |
Traversing | |
Union | |
Unknown | |
Value Modes | This module specifies the modes that type the firm nodes |