Group Partners
Homepage / Optimizing Compilers / C l C++ l EC++
Green Hills Software has been the leader in embedded optimizing compilers for almost three decades. Green Hills compilers consistently outperform competing compilers in certified results on industry standard benchmarks, such as those published by Embedded Microprocessor Benchmark Consortium (EEMBC).

Green Hills C and C++ compilers generate highly optimized code while strictly adhering to industry-standard language requirements. They support a variety of userselectable features, including programming language, target architecture, performance level, debugging level, and much more. They include a command-line interface for easy automation and a tight integration with the MULTI® IDE for easy customization and project visibility.

Performance
By applying hundreds of advanced optimization strategies, the Green Hills compilers can significantly increase program execution speed and decrease program size. Link time and inter-module optimizations tune the program further. For example, the CodeFactor™ linker optimization reduces the overall program size by identifying and removing redundant segments of code from object files. This often translates to lower power consumption and a reduced cost per unit. Code size optimizations produce the most efficient code with a minimal footprint, to allow users to include more functionality in the same amount of memory.

Flexibility
Green Hills compilers work closely with the rest of the Green Hills Tool Chain—which includes the Macro Assembler, Librarian, Linker and Utility Programs—to create programs for a variety of host, language, and target configurations. They consist of a Language-Specific Front-End, a Global Optimizer, and a Target-Specific Optimizer and Code Generator. The Global Optimizer applies the latest optimizations independent of the language or the target. Some examples are loop optimization, tail recursion, and function inlining. This allows new architectures to take advantage of the most advanced optimization techniques developed over the last several years.

The Target-Specific Optimizer applies additional optimizations based on the target architecture, such as peephole optimizations and multiple issue instruction pipeline scheduling. Green Hills compilers use the same Target-Specific Optimizers and Code Generators regardless of programming language, giving the developer additional flexibility in implementation.
Compatibility
 

Click here for a larger view.
Green Hills Software’s conformance to key industry standards offers developers increased compatibility across different projects and source code files.

K&R Mode and Extensions to ANSI C—Green Hills compilers support the version of C described in The C Programming Language by Kernighan and Ritchie, including the many versions of the Portable C Compiler (PCC) implementation. The PCC includes hundreds of extensions required to compile the UNIX operating system and many existing C application programs.
Japanese Automotive C—Green Hills compilers support a unique set of extensions to ANSI C used by Japanese automobile manufacturers.
GNU C/C++ Extensions—Green Hills compilers are so compatible with GNU C/C++ extensions that they have been used to build the entire Linux kernel.
MISRA C—Undefined and implementation-defined constructs in the C language consistently trip up even the best programmers and result in bugs. For software developers, this means a large amount of time spent finding bugs. For managers, this often means the single largest risk to their project. MISRA C is a formal set of guidelines published by the Motor Industry Software Reliability Association (MISRA) that identifies aspects of the C language to be avoided due to their ambiguity and susceptibility to common programming mistakes. Green Hills compilers provide automated enforcement of MISRA C programming guidelines. Green Hills Software is uniquely qualified to support the largest number of MISRA C rules through its optimizing compilers and Advanced Run-time Error Detection.
C++ Support—Green Hills Software enables developers to use a single compiler for several unique dialects of the C++ programming language. This increases portability for new projects, existing projects, and legacy projects. Unlike other compilers, the Green Hills compilers support each dialect in full, including C++ conformance for namespaces and templates. The Green Hills C++ libraries are scalable and tuned for the specific level of C++ support requested.
Standard (ANSI/ISO) C++
C++ as defined by The Annotated C++ Reference Manual (ARM), by Ellis & Stroustrop
Embedded C++ (EC++)
Embedded C++ with Templates
Green Hills EC++ is a proper subset of ANSI C++ intended to meet the needs of embedded application developers. EC++ offers the same object-oriented benefits of C++, but with smaller code size, deterministic behavior, and a simpler user interface.

More...
Go to Homepage
Bildes Proje © 2012
All rights reserved.
Privacy | Term of Use
Address : Ugur Mumcu St. 43/5 06700 GOP Cankaya, Ankara / TURKEY
Telephone : +90 (312) 447-3016
Fax : +90 (312 ) 447 30 26
E-mail : info@bildesproje.com
Social Sharing