(C) 1995-2013 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
[email protected] [email protected]
If you use the zlib library in a product, we would appreciate *not* receiving
lengthy legal documents to sign. The sources are provided for free but without
warranty of any kind. The library has been entirely written by Jean-loup
Gailly and Mark Adler; it does not include third-party code.
If you redistribute modified sources, we would appreciate that you include in
the file ChangeLog history information documenting your changes. Please read
the FAQ for more information on the distribution of modified source versions.
ARM Compiler Version 5版本的编译器ARMCC
需积分: 0 90 浏览量
更新于2023-06-07
4
收藏 56.83MB RAR 举报
ARM Compiler Version 5是ARM公司推出的针对ARM架构处理器的一套高效、优化的编译工具链。这个版本的编译器,ARMCC,是为开发者提供的一整套开发环境,包括了编译器、链接器、汇编器以及相关的调试工具,用于编写、编译和优化在ARM处理器上运行的软件。以下将详细介绍ARM Compiler Version 5的主要特点、功能和相关知识点:
1. **ARM指令集支持**:ARMCC是专门为ARM架构设计的,它能够将C/C++源代码翻译成高效的ARM指令集,支持多种ARM处理器核心,如Cortex-A、Cortex-R和Cortex-M系列。
2. **优化编译器**:ARMCC包含了一套强大的优化技术,例如O0到O3级别的代码优化,用于提高代码的执行效率。在O3级别,编译器会进行诸如循环展开、死代码消除、常量折叠等高级优化。
3. **嵌入式链接编辑器(ELF)**:ARMCC的链接器支持嵌入式链接编辑器格式,可以处理多个源文件和库,生成可执行文件或库。它还能进行符号解析、重定位和大小调整等操作。
4. **调试支持**:ARMCC集成了调试信息生成,使得开发者可以使用GDB或其他调试器进行源代码级别的调试,包括断点设置、变量查看等功能。
5. **多线程和实时性**:对于支持多线程的应用,ARMCC提供了线程安全的函数库,并且可以处理实时系统的需求,如中断服务例程的处理。
6. **浮点运算支持**:对于需要浮点运算的场合,ARMCC支持ARM的硬件浮点单元(FPU)和软浮点库,可以根据目标平台的配置选择最优的实现方式。
7. **代码大小优化**:在资源有限的嵌入式系统中,代码大小至关重要。ARMCC提供了代码压缩选项,通过减少指令和数据占用的空间来优化内存使用。
8. **标准库和CMSIS**:ARMCC包含了C和C++的标准库,以及特定于ARM的CMSIS(Cortex Microcontroller Software Interface Standard),提供了一套统一的API来访问硬件寄存器和外设。
9. **预处理器和宏**:预处理器在编译阶段处理#include指令、宏定义等,允许开发者使用条件编译和代码复用。
10. **错误和警告报告**:ARMCC提供了丰富的错误和警告信息,帮助开发者定位并修复代码问题,提升代码质量。
11. **二进制兼容性**:ARMCC生成的二进制文件可以在不同版本的ARM处理器上运行,只要这些处理器具有相同的指令集架构。
12. **多平台支持**:ARMCC不仅适用于基于ARM架构的微控制器,还可以用于开发板和服务器级处理器,覆盖从低功耗嵌入式到高性能计算的广泛领域。
ARM Compiler Version 5是为ARM平台定制的高效开发工具,其丰富的特性、优化功能和对ARM处理器的深度理解,使得开发者能够编写出高效、可靠的嵌入式软件,广泛应用于移动设备、物联网、汽车电子、工业控制等多个领域。

701044
- 粉丝: 1515
最新资源
- 基于规则算法的功率跟随控制:燃料电池汽车能量管理策略及其MATLAB数据分析
- (源码)基于C++的贪吃蛇游戏.zip
- 基于模态计算与声振耦合仿真的玻璃隔声量研究及其工程应用
- (源码)基于Python和Arduino的复古LED条形音频可视化器.zip
- 基于Matlab的ESMD信号分解算法:极值点驱动的数据处理与分析 · 时频分析
- 基于MATLAB的特征子集选择(FSS)与前后搜索法实现及应用
- (源码)基于Arduino的JoystickBuzzer音乐控制器项目.zip
- 模块化多电平换流器MMC的载波移相调制及PLECS仿真研究:工况参数为AC3.3kvDC6kv,采用N=6配置,优化双闭环控制与均压策略
- 基于UDP千兆以太网协议栈的纯FPGA Verilog OV5640图像采集系统实现
- (源码)基于Android的学习应用.zip
- CNG加气站设计:从背景到工艺流程的全面解析与实施方案
- (源码)基于C++的面试算法学习项目.zip
- 基于MATLAB的石川公式法齿轮时变啮合刚度计算及应用 宝典
- 基于MATLAB的EKF-GMPHD与UKF-GMPHD多目标跟踪算法研究及仿真 v4.0
- (源码)基于C++语言的RGB到YCbCr颜色空间转换系统.zip
- 永磁同步电机接地故障检测与处理的技术解析及Python代码实现 信号处理 (07月)