snapdragon_clang_compiler

所属分类:编译器/解释器
开发工具:C
文件大小:298579KB
下载次数:0
上传日期:2020-04-11 15:10:04
上 传 者sh-1993
说明:  快照语言编译器,,
(snapdragon_clang_compiler,,)

文件列表:
snapdragon_clang_compiler-android-8.0 (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\setup-toolchain.mk (9785, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\aarch64-linux-android-snapdragonclang (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\aarch64-linux-android-snapdragonclang\config.mk (1025, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\aarch64-linux-android-snapdragonclang\setup.mk (2581, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\arm-linux-androideabi-snapdragonclang (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\arm-linux-androideabi-snapdragonclang\config.mk (1023, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\arm-linux-androideabi-snapdragonclang\setup.mk (3746, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86-snapdragonclang (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86-snapdragonclang\config.mk (772, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86-snapdragonclang\setup.mk (2306, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86_64-snapdragonclang (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86_64-snapdragonclang\config.mk (781, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\core\toolchains\x86_64-snapdragonclang\setup.mk (2243, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\tools (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\build\tools\make_standalone_toolchain_snapdragon_llvm.py (20293, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0 (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64 (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\AndroidVersion.txt (6, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\NOTICE (51806, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\RELEASE_NOTES (8098, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\Snapdragon_LLVM_ARM_80_Compiler_User_Guide.pdf (907654, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\aarch64-linux-android (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\aarch64-linux-android\bin (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\aarch64-linux-android\bin\llvm-symbolizer (3866528, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\armv7-linux-androideabi (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\armv7-linux-androideabi\bin (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\armv7-linux-androideabi\bin\llvm-symbolizer (3864176, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin (0, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin\aarch64-link (7, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin\arm-link (7, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin\bugpoint (39908032, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin\c-index-test (20878048, 2020-04-11)
snapdragon_clang_compiler-android-8.0\toolchains\llvm-Snapdragon_LLVM_for_Android_8.0\prebuilt\linux-x86_64\bin\clang (7, 2020-04-11)
... ...

Using Snapdragon LLVM ARM Compiler 8.0.6 with Android NDK: The Snapdragon LLVM ARM Compiler 8.0.6 can be used as a drop-in replacement for LLVM shipped as part of the Android NDK. 1. Snapdragon LLVM ARM Compiler 8.0.6 has been verified to work with Android NDK versions r18b for Windows (***-bit) and Linux (***-bit) 2. On Windows, it is assumed that the user has Cygwin setup. The examples below need to be adjusted to follow the Windows path specifications if Cygwin is not used. 3. On Windows and Linux it is recommended that you extract the Android NDK under a directory which *does not* contain spaces, like: C:\android-ndk-r18b /local/mnt/workspace/android-ndk-r18b This directory is referred to as in this README. On Windows, extract Snapdragon-llvm-8.0.6-windows***.zip under . On Linux, extract Snapdragon-llvm-8.0.6-linux***.tar.gz under . 4. The following toolchains would be used for linking, by default: For ARMv8 32-bit --> arm-linux-androideabi-4.9 For AArch*** --> aarch***-linux-android-4.9 5. On Windows, in order to avoid errors due to missing MSVC Redistributable DLLs, make sure you set PATH to the Snapdragon LLVM bin directory as follows: export PATH=/toolchains/llvm-Snapdragon_LLVM_for_Android_6.0/ prebuilt/windows-x86_***/bin:$PATH 6. The Snapdragon LLVM ARM 8.0.6 toolchain is designed to work with both 32-bit and ***-bit versions of the NDK as described below: For generating ARMv8 32-bit code, invoke your compilation line as follows: ndk-build NDK_TOOLCHAIN_VERSION=snapdragonclang APP_ABI="armeabi-v7a" -C For generating AArch*** (***-bit) code, invoke your compilation line as follows: ndk-build NDK_TOOLCHAIN_VERSION=snapdragonclang APP_ABI="arm***-v8a" -C 7. If you want to specify your custom flags to the compiler in order to override the default flags you can use the flag APP_CFLAGS as follows: ndk-build NDK_TOOLCHAIN_VERSION=snapdragonclang APP_ABI="armeabi-v7a" \ APP_CFLAGS="-O3" -C Similarly, to specify custom flags for the linker you can use the flag APP_LDFLAGS. 8. We STRONGLY RECOMMEND the following command line flags, to be set through APP_CFLAGS, for best performance. These options ensure that all high performance optimization features in the Snapdragon LLVM compiler are enabled to deliver maximum performance in 32-bit and ***-bit modes. For this release, if you continue to use the default Android NDK compatible flags, you may see performance regression. If your project does not require precise math, please set APP_CFLAGS="-Ofast -mcpu=cortex-a57" If your project requires IEEE 754 floating point compliance, please set APP_CFLAGS="-O3 -mcpu=cortex-a57" 9. A standalone toolchain for the Android NDK environment using the Snapdragon LLVM ARM compiler can be created using the make_standalone_toolchain utility. Note: For NDK r18b, the default make_standalone_toolchain.py cannot be used with Snapdragon LLVM toolchain to create a standalone toolchain. So we provide a custom script called make_standalone_toolchain_snapdragon_llvm.py. For example, to create a standalone toolchain for Linux ***-bit environment, the following commands can be used: For ARMv8 32-bit: /build/tools/make_standalone_toolchain_snapdragon_llvm.py \ --arch arm --api 28 --install-dir The above command line specifies that you are targeting Android API level 28. If you do not specify the API level, the default will be set to the minimum supported level for the given architecture (currently 14 for 32-bit architectures). For AArch***: /build/tools/make_standalone_toolchain_snapdragon_llvm.py \ --arch arm*** --api 28 --install-dir The above command line specifies that you are targeting Android API level 28. If you do not specify the API level, the default will be set to the minimum supported level for the given architecture (currently 21 for ***-bit architectures). 10. By default, the ndk-build tool will build an application for all the valid targets (viz. ARMv8 32-bit, AARCH***, X86). This will result in compilation errors for X86 targets since the Snapdragon LLVM ARM Compiler 8.0.6 cannot generate code for these targets. The errors can be avoided if the user explicitly passes APP_ABI="armeabi-v7a" or APP_ABI="arm***-v8a" when using the Snapdragon LLVM ARM Compiler 8.0.6. However, in situations where the build system cannot be changed, and hence these flags cannot be set, we provide the following wrappers for x86 in order to avoid compilation errors: x86-snapdragonclang x86_***-snapdragonclang These wrappers are exact copies of their Clang versions which are distributed as part of the Android NDK. These wrappers would simply invoke the LLVM compiler that comes with NDK (for X86 targets only), thus avoiding compilation errors when using the Snapdragon LLVM ARM Compiler 8.0.6. Note: The Snapdragon LLVM ARM Compiler 8.0.6 would be invoked for ARMv8 32-bit and AARCH*** targets. Contacts & Bug Reporting http://developer.qualcomm.com/llvm-forum

近期下载者

相关文件


收藏者