Awesome
Generic Ada Runtime
The generic Ada runtime is a downsized Ada runtime which can be adapted to different platforms. The offered feature set is a tradeoff between complexity and useful features.
Features
The runtime includes a variety of specs providing types and compiler intrinsics. It furthermore adds a small selection of more complex features:
- Secondary stack
- SPARK proof: no runtime errors, safe program abort in case of stack overflow, stack underflow or invalid stack count
- 64bit arithmetic
- SPARK proof: addition and subtraction with overflow check have no runtime errors, both functions perform a correct addition/subtraction
- Exception support
- Exceptions can only be thrown but not catched, there is only a last chance handler available
Platforms
- Posix/Linux
- Genode
- nRF52832
- STM32F051
- ESP8266 on Arduino
Directory Structure
contrib/
: external sources (GCC 8.3)platform/
: platform-specific sources of Ada runtimesrc/
: Ada runtime sourcestests/
: test sourcesbuild
: platform specific build directories
Platform-specific Symbols
To enable a new platform for this runtime the platform needs to provide a set of linker symbols. Please have a look into the platform interface description.