Giter Site home page Giter Site logo

snapdragon-llvm's Introduction

The following are the changes in the 10.0.9 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.8 release.

  1. Default to thread based errno for baremetal. Enable global errno only in libc-with-errno.a

The following are the changes in the 10.0.8 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.7 release.

  1. Revert two recent community commits causing performance degradation for 32-bit compilation with "-O2" flag

The following are the changes in the 10.0.7 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.5 release.

  1. Fix corner case in auto-vectorizer
  2. Update YAMLMapParser.py to be Python 3 compatible
  3. Enable errno to be used in Baremetal context
  4. Fix non-determinism in tail duplication optimization pass

The following are the changes in the 10.0.5 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.4 release.

  1. Prevent lld from discarding notes in comdat

The following are the changes in the 10.0.4 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.3 release.

  1. Fix a bug in handling dynamic sections that contain no fragments
  2. Fix corner case assertion in auto-vectorizer in ARM 32 path
  3. Bring in fixes from llvm.org for unaligned memory access under -mstrict-align

The following are the changes in the 10.0.3 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0.1 release. This version includes all changes from llvm.org for the period 9/28/2019 through 1/16/2020 (llvm.org 10.0 branch point). The release notes for the llvm.org 10.0 release are available using the link below and includes information about new warnings.

https://prereleases.llvm.org/10.0.0/rc1/tools/clang/docs/ReleaseNotes.html

  1. Cherry-Pick Google patch for R_ARM_NONE relocations for exception unwinding

The following are the changes in the 10.0.1 release of the Snapdragon LLVM ARM C/C++ Toolchain over the 10.0 release.

  1. Disable Cortex fix for partial linking
  2. Handle missed cases in Auto-Vectorizer parallel code generation
  3. Match SDLLVM behavior with AOSP LLVM LLD
  4. Fix corner case linkerscript issue when ALIGN is specified for the output section

This is the release of Snapdragon LLVM ARM C/C++ compiler toolchain version 10.0. This is a cross toolchain built to run on x86 64-bit Ubuntu Linux (versions 14.04 and later) and Windows platform (Windows 7 64-bit and later). The Snapdragon LLVM ARM Compiler will generate code for ARM and X86 targets and will not generate code for any of the other targets supported by the llvm.org compiler.

Version 10.0 of the Snapdragon LLVM ARM toolchain includes all changes in the llvm.org 9.0 mainline as of 9/27/19. The Snapdragon LLVM ARM toolchain 10.0 release includes proprietary features and optimizations that are not available in the llvm.org 9.0 mainline.

The Snapdragon LLVM ARM Compiler uses the integrated assembler for assembling and includes a full featured proprietary linker (QC Linker) for linking.

The following link contains all the new features in the llvm.org 9.0 release. http://releases.llvm.org/9.0.0/tools/clang/docs/ReleaseNotes.html

The Snapdragon LLVM ARM 10.0 toolchain contains all the above features, and additionally contains the following key features compared to the Snapdragon LLVM ARM 8.0 toolchain:

  1. Auto-Vectorization performance improvements for image processing
  2. Code size improvements for Baremetal images
  3. X86 code generation
  4. Performance tuning of optimizations, such as the unroller for Baremetal workloads
  5. Code size tuning for Android-Go images
  6. Support for structured exception handling (SEH) for ARM 64-bit targets

Basic Usage & Examples Use the following link for details on SDLLVM setup and usage: http://qwiki.qualcomm.com/quic-llvm-arm/ Snapdragon_LLVM_Basic_Usage_and_Examples

Documentation The complete user guides (3) for this Snapdragon LLVM ARM compiler and linker are available in the 'documents' directory, which is at the root of the SDLLVM toolchain that was downloaded and installed using the Qualcomm Package Manager (QPM).

Contacts & Bug Reporting [email protected]

Use and Distribution: The release in this location is strictly for internal distribution and should not be distributed outside of Qualcomm. An external release is available on QDevNet for customer access.

snapdragon-llvm's People

Contributors

xiangfeidexiaohuo avatar

Stargazers

boy1337 avatar  avatar Buerck avatar Liklax avatar Re:Shion avatar  avatar Christian <kimo> B. avatar Atlas avatar SatyrDiamond avatar Muralidharan avatar Son Tung ACB avatar Maulvi Alfansuri avatar  avatar  avatar Drew Green avatar

Watchers

James Cloos avatar boy1337 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.