HomeCommunityTools, Software and IDEs blog
April 2, 2014

A 21st Century Compiler for 64-bit Architecture

ARM Compiler 6 is now available, bringing to you a modern, extensible compiler architecture for the next generation of ARM processors. Version 6 of the ARM Compiler adopts the Clang and LLVM compiler framework, which is swiftly gaining momentum as th...

By Michelle Page-Croft

Share
Reading time 2 minutes

ARM Compiler 6 is now available, bringing to you a modern, extensible compiler architecture for the next generation of ARM processors. Version 6 of the ARM Compiler adopts the Clang and LLVM compiler framework, which is swiftly gaining momentum as the compiler of choice for advanced code generation. By working with the open source Clang/LLVM, ARM is able to work in cooperation with our partners, accelerating feature creation and code generation efficiency targeting the ARM architecture. Tuning, testing and implementation are all much faster with open source LLVM.

Why is this important to ARM?

ARM has gained success based on partnership. Using an open source framework for the next-generation ARM Compiler, we have opened the door for better collaboration with regard to code generators; a critical component for improving performance and power consumption on ARM processors. ARM has actively contributed to many open source communities for years, but the ARM Compiler was developed alongside the ARM architecture and has always been proprietary. ARM Compiler 6 marks the start of a new generation, channelling open source contributions into an integrated, validated and fully supported commercial product, enabling partners and end users to take advantage of the velocity of open source development and the efficiency of Clang/LLVM.

What’s special about Clang and LLVM?

The flexible and modern Clang and LLVM infrastructure provides a solid foundation for ARM’s code generation tools. Clang is a C/C++ compiler front end based on a modular architecture with well-defined interfaces for applying complimentary tools such as code analyzers and code generators. Clang also offers improved diagnostic capabilities, leading to higher quality code and shorter development cycles.

LLVM is an extensible compiler framework which is well suited for advanced code generation techniques such as link-time code generation. LLVM’s modular framework makes it easier to develop and test new optimizations, leading to better performing code and lower power consumption.

To learn more about Clang & LLVM technology, read Vinod's blog.

What’s special about ARM Compiler 6?

Building on Clang & LLVM, ARM Compiler 6 really does provide the best of both worlds. It delivers efficient code size and performance and comes as an integrated and validated toolchain that works straight out-of-the-box. Benefits include:

  • Tight integration: ARM Compiler 6 is more than just a compiler; it is a full code generation toolchain consisting of compiler, linker, assembler, and libraries. Its integration in the ARM DS-5 Development Studio Ultimate Edition provides a full C/C++ software development environment.
  • Optimized for ARM: Highly optimized libraries provide superior performance and code size for embedded applications, maximizing software performance and reducing costs.
  • Stable and robust: Developed and maintained by ARM experts, ARM Compiler 6 has undergone extensive testing on ARMv8 targets to ensure that it is stable, mature and efficient.
  • Professionally supported and maintained: ARM Compiler 6 and DS-5 are actively supported, validated, documented and maintained by ARM’s globally distributed technical experts, ensuring rapid issue resolution and faster time to market.

Will migrating to ARM Compiler 6 be easy?

Yes, to ensure as smooth a transition as possible, we have put together a comprehensive migration guide which is included within the DS-5 Ultimate Edition installation.

Try DS-5 Ultimate Edition now

To get everything you need to develop for the ARMv8 architecture, request a free 30-day trial of ARM DS-5 Ultimate Edition. Or learn more about ARM Compiler 6 and DS-5 Ultimate Edition.


3Log in to like this post
Share

Article text

Re-use is only permitted for informational and non-commercial or personal use only.

placeholder