An Abstract Syntax Tree (AST) is a representation that the compiler frontend can derive from code, provided that it is structured and unobfuscated. Each node in the AST represents a high-level language construct, such as a loop or an assignment. The AST contains no cycles.
Java bytecode is unstructured and can express more than Java source code, sometimes making it impossible to use it to derive an AST. Thus, the JRockit IR representations are always graphs instead of trees.
See also IR.
18.191.62.122