Snapdragon LLVM Compiler
Snapdragon LLVM Compiler
chip image

Snapdragon LLVM Compiler Toolchain is now available for the following:

  • Android NDK

  • Bare metal images

LLVM is a C/C++ compiler that is becoming increasingly popular. It enables use of compilers in a broader range of configurations, providing for better performance and power usage – particularly on Snapdragon micro-architectures. Beginning with the Jellybean MR1 release, Google has included LLVM as an alternative compiler as part of the Android toolchain and the Android NDK. LLVM is suitable wherever you use native code (C/C++) in your Android application.

 

As a key supporter of LLVM, Qualcomm Technologies, Inc. has been working on optimizing this mobile-friendly compiler for Snapdragon and we are pleased to make it available to you.

 

We have seen performance gains to a variety of Android applications and libraries when compiling with LLVM. For example, in our tests the C version of the Android jpeg library performs 10% faster on Snapdragon-based devices when built with the Snapdragon LLVM compiler compared to the latest NDK GCC version. We also observe performance improvements in the libpng library when using the Snapdragon LLVM compiler compared to the LLVM or GCC compilers included in the Android NDK.
 

To use the Snapdragon LLVM Compiler for Android, you must have the recent version of the Android SDK and Android NDK installed on your build machine.
 

Download the Snapdragon LLVM Compiler for bare metal images.
 

Bare metal images typically do not run on top of an operating system, instead they directly interact with the hardware. We have seen significant code size improvements over GCC and open source LLVM with the bare metal version of the Snapdragon LLVM toolchain.
  


 

Work In Progress
 

The Snapdragon LLVM compiler team is actively working on optimizations targeting typical Android scenarios, focusing on delivering high performance on Snapdragon cores by exploiting capabilities such as the 128-bit Neon engine. The team also works on code size optimizations targeting baremetal images. Additionally, there is ongoing work in the toolchain libraries (runtime, libc, libc++) to support various flavors of ARM microcontrollers.

 

Sign up for the Developer Newsletter.

Get software and hardware tool resources to help optimize your development delivered to your inbox weekly.

Connect with our communities

Stay ahead of the curve

Receive the latest updates, exclusive offers, and valuable insights delivered through the Qualcomm newsletter straight to your inbox.

Stay ahead of the curve

Receive the latest updates, exclusive offers, and valuable insights delivered through the Qualcomm newsletter straight to your inbox.

Qualcomm relentlessly innovates to deliver intelligent computing everywhere, helping the world tackle some of its most important challenges. Our leading-edge AI, high performance, low-power computing, and unrivaled connectivity deliver proven solutions that transform major industries. At Qualcomm, we are engineering human progress.

Stay connected

Get the latest Qualcomm and industry information delivered to your inbox.

Subscribe
Manage your subscription

© Qualcomm Technologies, Inc. and/or its affiliated companies.

Snapdragon and Qualcomm branded products are products of Qualcomm Technologies, Inc. and/or its subsidiaries. Qualcomm patented technologies are licensed by Qualcomm Incorporated.

Note: Certain services and materials may require you to accept additional terms and conditions before accessing or using those items.

References to "Qualcomm" may mean Qualcomm Incorporated, or subsidiaries or business units within the Qualcomm corporate structure, as applicable.

Qualcomm Incorporated includes our licensing business, QTL, and the vast majority of our patent portfolio. Qualcomm Technologies, Inc., a subsidiary of Qualcomm Incorporated, operates, along with its subsidiaries, substantially all of our engineering, research and development functions, and substantially all of our products and services businesses, including our QCT semiconductor business.

Materials that are as of a specific date, including but not limited to press releases, presentations, blog posts and webcasts, may have been superseded by subsequent events or disclosures.

Nothing in these materials is an offer to sell or license any of the services or materials referenced herein.