5. Glossary

Autosar

AUTomotive Open System ARchitecture is a consortium of automotive standard developers as well as the standard itself. Among other things, the standard also contains coding guidelines for, e.g., C++.

BDD

Binary decision diagram.

Cert

https://en.wikipedia.org/wiki/CERT_Coding_Standards

DFA

Data flow analysis.

FIPTA

Flow-insensitive pointer target analysis.

FSPTA

Flow-sensitive pointer target analysis. See Modular Semantic Analysis.

IR

Intermediate representation, can mean two things based on context.

  1. The exchange format containing PIR and LIR.

  2. A blanket term referring to PIR and LIR.

LIR

Logical intermediate representation.

MISRA

MISRA is an organization that publishes various “best-practises” guidelines with respect to the development of embedded systems with C (Misra-C) or C++.

MSA

Modular semantic analysis. See Modular Semantic Analysis.

PIR

Physical intermediate representation.

PTA

Pointer target analysis.

RCI

Relevant Context Inference, a technique described in a POPL 99 paper (Download).

Routine

Callable entity in an analysed program, represented by a node of type Routine in the IR (one callable entity in the program, can be function / method etc.).

Simple objects

An object \(o\) is simple iff \(o\) has only one definition (its initialization) and no address is taken from \(o\). Most helper variables are simple. No data flow is generated for them, except for shared helpers.

SSA

Single static assignment form.

SSI

Static single information form, a renaming scheme similar to SSA, but with additional \(\sigma\) nodes. Initially described 1997 in a Master’s thesis, more concise 2006 in a PhD thesis.

STL

Standard template library.

Values

Can be obtained for definitions.