From ccb51f923f30b36c9dc0bd9070a29116250428bf Mon Sep 17 00:00:00 2001 From: Sean Silva Date: Wed, 13 Feb 2013 21:17:20 +0000 Subject: [docs] PR15254: Add "AST" to the lexicon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175077 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/Lexicon.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'docs/Lexicon.rst') diff --git a/docs/Lexicon.rst b/docs/Lexicon.rst index 10821f4712..11f1341f5c 100644 --- a/docs/Lexicon.rst +++ b/docs/Lexicon.rst @@ -15,6 +15,21 @@ A **ADCE** Aggressive Dead Code Elimination +**AST** + Abstract Syntax Tree. + + Due to Clang's influence (mostly the fact that parsing and semantic + analysis are so intertwined for C and especially C++), the typical + working definition of AST in the LLVM community is roughly "the + compiler's first complete symbolic (as opposed to textual) + representation of an input program". + As such, an "AST" might be a more general graph instead of a "tree" + (consider the symbolic representation for the type of a typical "linked + list node"). This working definition is closer to what some authors + call an "annotated abstract syntax tree". + + Consult your favorite compiler book or search engine for more details. + B - -- cgit v1.2.3