summaryrefslogtreecommitdiff
path: root/docs/Lexicon.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Lexicon.rst')
-rw-r--r--docs/Lexicon.rst21
1 files changed, 21 insertions, 0 deletions
diff --git a/docs/Lexicon.rst b/docs/Lexicon.rst
index 9a599da128591..112eb7d79ec1c 100644
--- a/docs/Lexicon.rst
+++ b/docs/Lexicon.rst
@@ -46,6 +46,15 @@ B
C
-
+**CFI**
+ Call Frame Information. Used in DWARF debug info and in C++ unwind info
+ to show how the function prolog lays out the stack frame.
+
+**CIE**
+ Common Information Entry. A kind of CFI used to reduce the size of FDEs.
+ The compiler creates a CIE which contains the information common across all
+ the FDEs. Each FDE then points to its CIE.
+
**CSE**
Common Subexpression Elimination. An optimization that removes common
subexpression compuation. For example ``(a+b)*(a+b)`` has two subexpressions
@@ -82,6 +91,10 @@ F
**FCA**
First Class Aggregate
+**FDE**
+ Frame Description Entry. A kind of CFI used to describe the stack frame of
+ one function.
+
G
-
@@ -121,6 +134,14 @@ L
**LICM**
Loop Invariant Code Motion
+**LSDA**
+ Language Specific Data Area. C++ "zero cost" unwinding is built on top a
+ generic unwinding mechanism. As the unwinder walks each frame, it calls
+ a "personality" function to do language specific analysis. Each function's
+ FDE points to an optional LSDA which is passed to the personality function.
+ For C++, the LSDA contain info about the type and location of catch
+ statements in that function.
+
**Load-VN**
Load Value Numbering