GNU Interoperability
使用RVDS中的编译工具能为嵌入式Linux和Symbian系统提供最优化的应用程序。RVDS为那些一直在寻求互用ARM与GNU工具链,并且基于 ARM 架构的兼容Application Binary Interface (ABI)的客户提供空前灵活的支持,使开源工具与商业工具的使用贯穿整个软件开发团队。
RVDS中的编译工具包含以下部分:
l 优化的标准C编译器
l 优化的标准C++编译器
l 链接器
l 汇编器
l 映像转换工具
l ARM目标文件管理
l C语言库
l RogueWave C++标准模版库
优化的C和C++编译器和汇编器
主要特点:
l 全面的C和C++支持
l 运行ARM架构的 ARM c/c++ ABI
Ø 通过使能混合目标代码编译,与其他的ABI编译器兼容,比如GNU
l 行业领先的代码体积优化
l 行业领先的代码性能优化
l 能编译32位ARM 指令集、16位 Thumb指令集和 Thumb-2 指令集
l 可选的调试和优化级别
l 对于ARM架构的各种处理器的优化
l 目标文件遵从标准的ELF和DWARF
l 功能强大的ARM指令、Thumb 指令、Thumb-2指令宏汇编器
链接器
l 目标文件与调试列表格式遵从ELF与DWARF标准
l ARM指令、Thumb 指令和Thumb-2 指令目标代码之间可实现无缝交织
l 具有分散装入的特点,使得代码和数据的置放于复杂的目标存储映射
l 自动删除非引用代码区
映象转换工具
l 将ELF转换成其他可下载和可存储于ROM的格式
l 支持二进制, Motorola 32位S-record, Intel Hex-32 格式和 Byte Oriented Hex 格式。
l 显示输入文件信息(如:反汇编输出和符号列表)
ARM目标文件管理
l 能够在库中收集并维护ELF文件
l 支持库的合并
C and RogueWaveC++ Libraries
l 完整的ISO标准C库包含以下部分:
Ø ISO标准C库所定义的函数功能
Ø 包含目标独立功能,用来在半宿主运行环境下执行C库程序。
Ø C和C++编译器助手功能
l 目标独立的C库功能能够在任何执行环境下被再次执行
l 浮点运算库使用ARM浮点运算环境,这是一种用于二进制浮点运算的IEEE754标准的实现
l Rogue Wave C++标准模板库包含以下内容:
Ø ISO标准C++库所定义的功能
Ø Rogue Wave 标准C++ 库 2.02.03版本
Ø C++编译助手