Leading the Embedded World

Green Hills Optimizing Compilers

 

Green Hills Software has been providing the most advanced C, C++, Embedded C++, and Ada95 optimizing compilers to the embedded industry since 1982. Green Hills compilers are highly configurable, standards compliant, and consistently outperform the competition in real world applications and in industry standard benchmarks, such as those published by EEMBC.

Optimization
Green Hills optimizing compilers take several approaches to make code as small and fast as possible, including:

  • General optimization
  • Language-specific optimization
  • Target-specific optimization
  • Whole program optimization
  • Profile driven optimization

In addition, these optimizations can be configured on a per-file or per-project basis, and weighted for fastest execution speed or minimum program size. This extremely configurable system allows the compiler to be fine tuned for the best results, no matter the project.

Reliability
Beyond optimization, Green Hills compilers generate such reliable code that they are used to build the INTEGRITY-178B RTOS, and safety critical systems that run on some of the most advanced avionics, radar, and weapons systems in the world.

Green Hills optimizing compilers optionally include DoubleCheck, an integrated static analyzer. While a typical compiler finds basic code problems, DoubleCheck is a powerful tool that, at compile time, can analyze large pieces of code spanning many source files and find bugs caused by complex interactions between them. By finding bugs without even running the program, DoubleCheck helps engineers write more reliable programs while decreasing defect resolution time.

Support
Green Hills Software has developed optimizing compilers for over 33 microprocessor architectures, and continues to add support for new ones, such as the ARM Cortex-A8 and Freescale MPC8641D. A modular approach to compiler design allows Green Hills Software to add support for new microprocessors quickly while maintaining a high degree of reliability.

Green Hills optimizing compilers also support a variety of languages and dialects, and provide options to assist in the creation of code that conforms to one of many different standards, such as:

  • ANSI C
  • GNU C
  • MISRA C 98 and 2004
  • K&R C
  • Ada 95
  • GNU C++ (and extensions)
  • Standard ANSI/ISO C++
  • EC++
  • EEC++ (EC++ with templates)
  • FORTRAN

More compiler information
» Optimizing C Compiler
» Optimizing C++, Embedded C++ Compilers
» Optimizing Ada 95 Compiler

Supported Processors
© 1996-2010 Green Hills Software, Inc. Trademark Acknowledgements Privacy Statement