Stack overflow is now a thing of the past.
StackAnalyzer automatically determines
the worst-case stack usage of the tasks in your application. The
analysis results are shown as annotations in the call graph and
control flow graph.
Call graph with stack usage annotations
Control flow graph with stack usage annotations
- Detailed and precise information on user-stack usage and system-stack usage by application tasks.
- Stack analysis for all hierarchy levels:
routines, basic blocks, assembly instructions.
- Control-flow reconstruction directly from binary code.
This means that StackAnalyzer will not be confused by potential flaws
in the debug information.
- Freely selectable entry points for the analysis.
- Easy recognition of critical program sections
thanks to customizable color coding.
- Fully integrated, feature-rich graphical and textual viewers
for control flow, analysis results, source code, assembly code, and configuration files.
- Seamless integration with other analysis tools from AbsInt
(e.g. aiT for worst-case execution time analysis)
in a single intuitive user interface called ał.
Why do you need StackAnalyzer?
Stack memory has to be allocated statically by the
programmer. Underestimating stack usage can lead to serious runtime
errors which can be difficult to find. Overestimating stack usage
means a waste of memory resources.
- StackAnalyzer provides
automatic tool support to calculate the stack usage of your
application. The analysis results are valid for all inputs and each
- StackAnalyzer directly analyzes binary executables,
exactly as they are executed in the final system.
- StackAnalyzer not only reduces development effort but also
helps prevent runtime errors due to stack overflow.
- The analysis results provide valuable feedback in
optimizing the stack usage of your application.
StackAnalyzer is available for a growing number of target processors and compilers.
Seamless integration into your toolchain
StackAnalyzer supports tight integration with state-of-the-art development tools, including:
- SCADE Suite, the market-leading embedded-software development environment from Esterel
- SymTA/S scheduling analysis tools from Symtavision
- TargetLink, the production-code generation tool from dSPACE
- RT-Druid, the Eclipse-based development environment from Evidence
We offer special qualification support
- Qualification Support Kits (QSKs) that simplify the qualification process for DO-178B level A.
- Qualification Software Life Cycle Data (QSLCD) Reports that document
our development processes, including all verification and quality assurance activities.
In the past, our QSKs and QSLCD Reports have been successfully used by leading
corporations in their DO-178B qualification process, notably in the avionics industry.
StackAnalyzer is also an integral part of the SCADE
development environment, which is DO-178B qualified up to level A for Military and Aerospace Industries, IEC 61508 certified at SIL 3
by TÜV for Heavy Equipment and Energy, and EN 50128 certified at SIL 4 by
TÜV for Rail Transportation.
The bottom line
for actual products performing stack usage analysis for embedded software, the
StackAnalyzer seems to be the most promising (and probably only) choice.”
Volker Barthelmann, University of Erlangen
To test StackAnalyzer on files of your own, fill out the
Evaluation License Agreement form (PDF)
and send or fax it to us.