StackAnalyzer for RISC-V statically determines the worst-case stack usage
of tasks in safety-critical applications written or generated in C or C++
and compiled to run on 32-bit or 64-bit RISC-V processors.
Your benefits
- StackAnalyzer lets you prevent stack overflow for all possible inputs
and task executions under any circumstances — without wasting hardware resources.
- StackAnalyzer requires no code instrumentation, no testing, no measuring,
no modification of your system, no modification of your toolchain,
and it will not be misled by potential flaws in debug information.
- Using StackAnalyzer is essential in meeting current safety standards
such as ISO 26262, DO-178B/C, IEC-61508, and EN-50128, where statically
analyzing your stack usage is part of the architectural safety requirements.
Key features
- Static analysis of binary files, exactly as they are executed in the final system.
- Clear and precise information on the worst-case stack usage by tasks, procedures, basic blocks, and individual instructions.
- Recursions, function pointers, inline assembly code, and library-function calls are all taken into account.
- Automatic recognition of dead code.
- Exceptionally fast analysis of complex real-world software.
- Freely selectable entry points for the analysis,
so you can focus on the worst-case path or other areas of interest,
and speed up the analysis even further.
- Feature-rich GUI with graphical and textual views for analysis results,
code coverage, control flow, source code, assembly code, statistics, and more.
- Command-line mode and customizable XML reports for easy integration into automated build processes.
- Plugins for TargetLink and Jenkins.
- Seamless integration with other analysis tools from AbsInt —
e.g. TimingProfiler
for profiling the worst-case execution time.
Supported processor derivates
For the purposes of licensing and pricing, StackAnalyzer for 32-bit RISC-V
and StackAnalyzer for 64-bit RISC-V are treated as two separate products.
Supported compilers
- The formally verified CompCert compiler
- GNU Compiler (GCC) for C and C++
- LLVM/Clang based C/C++ compilers
The standard license only covers one compiler of your choice.
Additional compilers can be unlocked for a surcharge.
Recent improvements
- Release 23.10:
- Improved automatic decoding of computed control-flow transitions
- Release 22.10:
- Improved diagnostics for invalid stack area specifications
System requirements
- Windows: 64-bit Windows 10 or 11
- Linux: 64-bit CentOS/RHEL 7 or compatible
- 4 GB of RAM (16 GB recommended)
- 4 GB of disk space
- The Linux version requires the
libxcb-*
family of libraries to be installed
- Support for macOS High Sierra 10.13 or newer is possible on request for a surcharge
Free trial
You can try StackAnalyzer for free,
on your own applications, for a period of 30 days.
Your free-trial package includes online training and tech support.
Also available for RISC-V