Leading the Embedded World

Arm

Embedded Software Solutions
RISC-V Embedded Software Solutions

Real-time operating systems

Hypervisors and Virtualization

  • INTEGRITY Multivisor
    Securely run guest operating systems such as Linux and Android alongside native time-critical and secure applications
  • µ-visor hypervisor
    Efficiently consolidate multiple operating systems on microntrollers with hardware virtualization capabilities

Software development tools

Processor probes

  • Green Hills Probe V4
    Multicore hardware bring-up, low-level debugging, and trace-powered analysis toosl

Optimizing Compilers for Arm Architecture

For four decades, the Green Hills Optimizing Compilers have led the embedded industry by generating the fastest, smallest, and most reliable code. The Green Hills optimizing C/C++ compilers for Arm use architecture and processor-specific optimizations that are tailored to the pipeline and instruction set characteristics of the Cortex-M, Cortex-R and Cortex-A architectures. Arm-specific features include:

  • Code generation for AArch32 and AArch64, supporting the latest Armv9 processors and instructions
  • Support for the latest Arm extensions including NEON, Cortex-M DSP, FP16, and crypto extensions
  • Support for auto-vectorization of code using the NEON instruction set
  • Optimizations that obtain optimal performance on the latest cores using architectural characteristics such as pipelining, cache perfor-mance, and branch prediction
  • Support for both Thumb (Armv8-M Baseline) and Thumb-2 (Armv8-M Mainline) modes of execution on a function-by-function basis. The user may select to link against standard libraries in either Arm or Thumb/Thumb2 mode
  • Big and Little Endian – Generates code with either Big-Endian or Little-Endian byte ordering
  • Vector Floating Point – Generates optimized code utilizing the Vector Floating Point (VFP) unit when available. On processors without VFP, floating point is implemented using hand-coded software emulation routines.

Supported Cores

  • Cortex-A5, A7
  • Cortex-A8, A9
  • Cortex-A12
  • Cortex-A15, A17
  • Cortex-A32, A34, A35
  • Cortex-A53, A55
  • Cortex-A65, A65AE
  • Cortex-A72, A73
  • Cortex-A75, A76, 76AE, A77
  • Cortex-A78, A78AE, 78C
  • Cortex-A320
  • Cortex-A520, A520AE, A510
  • Cortex-A725, A720AE, A720
  • Cortex-A715, A710
  • Cortex-M0, M0+
  • Cortex-M23
  • Cortex-M3
  • Cortex-M33, M33P
  • Cortex-M35P
  • Cortex-M4, M4F
  • Cortex-M55, M52
  • Cortex-M7
  • Cortex-M85
  • Cortex-R4, R4F
  • Cortex-R5, R5F
  • Cortex-R52, R52+
  • Cortex-R7
  • Cortex-R8
  • Cortex-R82, R82AE
  • Cortex-X1
  • Neoverse
  • ARM7
  • ARM8
  • ARM9
  • ARM9E
  • ARM11
  • Exynos (Samsung)
  • Kryo™ 4xx, 5xx (Qualcomm)
  • XScale (Marvell)

Supported Processors

INTEGRITY Board Support Packages