《嵌入式应用开发》课程教学资源(文献资料)RealView编译工具 3.1 版 编译器参考指南

RealView编译工具3.1版编译器参考指南ARM版权所有2007ARMLimited。保留所有权利。ARMDUI0348AC
版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC RealView® 编译工具 3.1 版 编译器参考指南

RealView编译工具编译器参考指南版权所有2007ARMLimited。保留所有权利。版本信息本手册进行了以下更改。更改历史记录日期更改发行号保密性A2007年3月非保密RVDS3.1版所有权声明带有或标记的词语和徽标是ARM公司的注册商标或商标。此处提及的其他品牌和名称可能是其各自所有者的商标。除非事先得到版权所有人的书面许可,否则不得以任何形式修改或复制本文档包含的部分或全部信息以及产品说明。本文档描述的产品还将不断发展和完善。ARM公司将如实提供本文档所述产品的所有特性及其使用方法。但是,所有暗示或明示的担保,包括但不限于对特定用途适销性或适用性的担保,均不包括在内。本文档的目的仅在于帮助读者使用产品。对由于使用本文档任何信息出现的遗漏、损坏或错误使用产品造成的任何损失,ARM公司概不负责。使用ARM一词时,它表示“ARM或其任何相应的子公司”。保密状态本文档的内容是非保密的。根据ARM与ARM将本文档交予的参与方的协议条款,使用、复制和公开本文档内容的权利可能会受到许可限制的制约。产品状态本文档的信息是开发的产品的最新信息。网址http://ww.arm.comii版权所有2007ARMLimited。保留所有权利。ARMDUI0348AC
ii 版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC RealView 编译工具 编译器参考指南 版权所有 © 2007 ARM Limited。保留所有权利。 版本信息 本手册进行了以下更改。 所有权声明 带有 ® 或 ™ 标记的词语和徽标是 ARM 公司的注册商标或商标。此处提及的其他品牌和名称可能是 其各自所有者的商标。 除非事先得到版权所有人的书面许可,否则不得以任何形式修改或复制本文档包含的部分或全部信 息以及产品说明。 本文档描述的产品还将不断发展和完善。 ARM 公司将如实提供本文档所述产品的所有特性及其使 用方法。但是,所有暗示或明示的担保,包括但不限于对特定用途适销性或适用性的担保,均不包括 在内。 本文档的目的仅在于帮助读者使用产品。对由于使用本文档任何信息出现的遗漏、损坏或错误使用 产品造成的任何损失,ARM 公司概不负责。 使用 ARM 一词时,它表示“ARM 或其任何相应的子公司”。 保密状态 本文档的内容是非保密的。根据 ARM 与 ARM 将本文档交予的参与方的协议条款,使用、复制和公 开本文档内容的权利可能会受到许可限制的制约。 产品状态 本文档的信息是开发的产品的最新信息。 网址 http://www.arm.com 更改历史记录 日期 发行号 保密性 更改 2007 年 3 月 A 非保密 RVDS 3.1 版

目录RealView编译工具编译器参考指南前言关于本手册I反馈简介第1章1.11-2关于ARM编译器1.21-3源语言模式1-51.3语言扩展和语言遵从性1.4C和C++库1-7第2章编译器命令行选项2.1命令行选项2-2第3章语言扩展3.13-2预处理程序扩展3.23-5C90中提供的C99语言功能3.33-7C++和C90中提供的C99语言功能3.43-10标准C语言扩展3.5标准C++语言扩展3-153.63-19标准C和标准C++语言扩展3.73-25GNU语言扩展iiARMDUI0348AC版权所有2007ARMLimited。保留所有权利
ARM DUI 0348AC 版权所有 © 2007 ARM Limited。保留所有权利。 iii 目录 RealView 编译工具 编译器参考指南 前言 关于本手册 . vi 反馈 . x 第 1 章 简介 1.1 关于 ARM 编译器 . 1-2 1.2 源语言模式 . 1-3 1.3 语言扩展和语言遵从性 . 1-5 1.4 C 和 C++ 库 . 1-7 第 2 章 编译器命令行选项 2.1 命令行选项 . 2-2 第 3 章 语言扩展 3.1 预处理程序扩展 . 3-2 3.2 C90 中提供的 C99 语言功能 . 3-5 3.3 C++ 和 C90 中提供的 C99 语言功能 . 3-7 3.4 标准 C 语言扩展 . 3-10 3.5 标准 C++ 语言扩展 . 3-15 3.6 标准 C 和标准 C++ 语言扩展 . 3-19 3.7 GNU 语言扩展 . 3-25

第4章编译器特有的功能4.1关键字和运算符4-24.24-24declspec属性4.3函数属性4-294.4类型属性4-374.5变量属性4-404.64-49编译指示4.74-64指令内在函数4.84-106编译器预定义第5章C和C++实现细节5.15-2C和C++实现细节5.2C++实现细节5-13附录Avia文件语法A.1via文件概述A-2A.2语法A-3附录 B标准C实现定义B.1执行定义B-2B.2B-9被视为ISOC标准未定义的行为附录C标准C++实现定义C.1整型转换C-2.C.2C-3调用纯虚函数C.3C-4主要的语言支持特性C.4C-5标准C++库实现定义附录 DC和C++编译器实现限制D.1D-2C++ISO/IEC标准限制D.2D-4整数限制D.3浮点数限制D-5使用NEON支持附录EE.1简介E-2E.2E-3向量数据类型E.3E-4内在函数iv版权所有2007ARMLimited。保留所有权利。ARM DUI0348AC
iv 版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC 第 4 章 编译器特有的功能 4.1 关键字和运算符 . 4-2 4.2 _declspec 属性 . 4-24 4.3 函数属性 . 4-29 4.4 类型属性 . 4-37 4.5 变量属性 . 4-40 4.6 编译指示 . 4-49 4.7 指令内在函数 . 4-64 4.8 编译器预定义 . 4-106 第 5 章 C 和 C++ 实现细节 5.1 C 和 C++ 实现细节 . 5-2 5.2 C++ 实现细节 . 5-13 附录 A via 文件语法 A.1 via 文件概述 . A-2 A.2 语法 . A-3 附录 B 标准 C 实现定义 B.1 执行定义 . B-2 B.2 被视为 ISO C 标准未定义的行为 . B-9 附录 C 标准 C++ 实现定义 C.1 整型转换 . C-2 C.2 调用纯虚函数 . C-3 C.3 主要的语言支持特性 . C-4 C.4 标准 C++ 库实现定义 . C-5 附录 D C 和 C++ 编译器实现限制 D.1 C++ ISO/IEC 标准限制 . D-2 D.2 整数限制 . D-4 D.3 浮点数限制 . D-5 附录 E 使用 NEON 支持 E.1 简介 . E-2 E.2 向量数据类型 . E-3 E.3 内在函数 . E-4

前言本前言介绍了《RealView编译工具编译器参考指南》。它包含以下几节第vi页的关于本手册.第x页的反馈.ARMDUI0348AC>版权所有2007ARMLimited。保留所有权利
ARM DUI 0348AC 版权所有 © 2007 ARM Limited。保留所有权利。 v 前言 本前言介绍了《RealView 编译工具编译器参考指南》。它包含以下几节: • 第vi 页的关于本手册 • 第x 页的反馈

前言关于本手册本手册提供有关RealVieW编译工具(RVCT)的参考信息,并介绍了ARM编译器的命令行选项。本手册也提供有关ARM如何在编译器中实现C和C++的参考材料。有关使用和控制ARM编译器的一般信息,请参阅《RVCT编译器用户指南》。适用对象本手册是为所有使用RVCT编写应用程序的开发人员而编写的。前提是您是一位经验丰富的软件开发人员。有关RVCT附带的ARM开发工具的概述,请参阅RealView编译工具要点指南。使用本手册本手册由以下章节和附录组成第1章简介阅读本章后,可以大致了解ARM编译器、标准一致性以及C和C++库。第2章综译器命令行选项本章列出了ARM编译器接受的所有命令行选项。第3章语言扩展本章介绍了ARM编译器提供的语言扩展,并提供了标准遵从性和实现方法的详细信息。第4章编译器特有的功能本章详细列出了ARM特有的关键字、运算符、编译指示、内在函数、宏和半主机超级用户调用(SVC)。第5章C和C++实现细节本章介绍了ARM编译器的语言实现详细信息。附录Avia文件语法本附录介绍了via文件的语法。您可以使用via文件为很多ARM工具指定命令行参数。vi版权所有2007ARMLimited。保留所有权利。ARMDUI0348AC
前言 vi 版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC 关于本手册 本手册提供有关 RealView 编译工具 (RVCT) 的参考信息,并介绍了 ARM 编译器 的命令行选项。本手册也提供有关 ARM 如何在编译器中实现 C 和 C++ 的参考 材料。有关使用和控制 ARM 编译器的一般信息,请参阅《RVCT 编译器用户指 南》。 适用对象 本手册是为所有使用 RVCT 编写应用程序的开发人员而编写的。前提是您是一 位经验丰富的软件开发人员。有关 RVCT 附带的 ARM 开发工具的概述,请参阅 RealView 编译工具要点指南。 使用本手册 本手册由以下章节和附录组成: 第 1 章 简介 阅读本章后,可以大致了解 ARM 编译器、标准一致性以及 C 和 C++ 库。 第 2 章 编译器命令行选项 本章列出了 ARM 编译器接受的所有命令行选项。 第 3 章 语言扩展 本章介绍了 ARM 编译器提供的语言扩展,并提供了标准遵从性和 实现方法的详细信息。 第 4 章 编译器特有的功能 本章详细列出了 ARM 特有的关键字、运算符、编译指示、内在函 数、宏和半主机超级用户调用 (SVC)。 第 5 章 C 和 C++ 实现细节 本章介绍了 ARM 编译器的语言实现详细信息。 附录 A via 文件语法 本附录介绍了 via 文件的语法。您可以使用 via 文件为很多 ARM 工 具指定命令行参数

前言附录B标准C实现定义本附录提供有关ARMC实现的信息,该实现直接与ISOC要求相关。附录C标准C++实现定义本附录提供了有关ARMC++实现的信息。附录DC和C++编译器实现限制本附录提供了有关ARM编译器中C和C++实现的限制。附录E使用NEON支持本附录介绍了此版本的RVCT所支持的NEON内在函数的相关信息。本手册假定ARM软件安装在缺省位置。例如,在Windows上,这可能是卷:\ProgramFiles\ARM。引用路径名时,假定安装位置为install_directory,如insta11_directory\Documentation)...。如果将ARM软件安装在其他位置,则可能需要更改此位置。印刷约定本手册使用了以下印刷约定表示可以从键盘输入的文本,如命令、文件和程序名以及源代码。monospace表示允许的命令或选项缩写。可只输入下划线标记的文本,无需输monospace入命令或选项的全名。monospace italic表示此处的命令和函数的自变量可用特定值代替。等宽粗体表示在示例代码以外使用的语言关键字。斜体突出显示重要注释、介绍特殊术语以及表示内部交叉引用和引文。粗体突出显示界面组件,如菜单名称。有时候也用在描述性列表中以示强调,以及表示ARM处理器信号名称。viARMDUI0348AC版权所有2007ARMLimited。保留所有权利
前言 ARM DUI 0348AC 版权所有 © 2007 ARM Limited。保留所有权利。 vii 附录 B 标准 C 实现定义 本附录提供有关 ARM C 实现的信息,该实现直接与 ISO C 要求相 关。 附录 C 标准 C++ 实现定义 本附录提供了有关 ARM C++ 实现的信息。 附录 D C 和 C++ 编译器实现限制 本附录提供了有关 ARM 编译器中 C 和 C++ 实现的限制。 附录 E 使用 NEON 支持 本附录介绍了此版本的 RVCT 所支持的 NEON™ 内在函数的相关信 息。 本手册假定 ARM 软件安装在缺省位置。例如,在 Windows 上,这可能是 卷:\Program Files\ARM。引用路径名时,假定安装位置为 install_directory,如 install_directory\Documentation\.。如果将 ARM 软件安装在其他位置,则可能 需要更改此位置。 印刷约定 本手册使用了以下印刷约定: monospace 表示可以从键盘输入的文本,如命令、文件和程序名以及源代码。 monospace 表示允许的命令或选项缩写。可只输入下划线标记的文本,无需输 入命令或选项的全名。 monospace italic 表示此处的命令和函数的自变量可用特定值代替。 等宽粗体 表示在示例代码以外使用的语言关键字。 斜体 突出显示重要注释、介绍特殊术语以及表示内部交叉引用和引文。 粗体 突出显示界面组件,如菜单名称。有时候也用在描述性列表中以示 强调,以及表示 ARM 处理器信号名称

前言更多参考出版物本部分列出了ARM公司和第三方发布的、可提供有关ARM系列处理器开发代码的附加信息的出版物。ARM公司将定期对其文档进行更新和更正。有关最新勘误表、附录以及ARM常见问题(FAQ),请访问http://ww.arm.com。ARM公司出版物本手册包含RVCT附带的开发工具专用的参考信息。该套件中包含的其他出版物有:.《RVCT要点指南》(ARMDUI0202)《RVCT编译器用户指南》(ARMDUI0205)*《RVCT库和浮点支持指南》(ARMDUI0349)-《RVCT链接器和实用程序指南》(ARMDUI0206)《RVCT汇编程序指南》(ARMDUI0204).《RVCT开发指南》(ARMDUI0203)《RealViewDevelopmentSuite词汇表》(ARMDUI0324)..《NEON向量化编译器指南》(ARMDUI0350)。有关基础标准、软件接口以及ARM支持的标准的完整信息,请参阅install_directoryDocumentation\Specificationsl....此外,有关与ARM产品相关的特定信息,请参阅下列文档《ARM6-M体系结构参考手册》(ARMDDI0419)《ARM7-M体系结构参考手册》(ARMDDI0403)《ARM体系结构参考手册》,ARMv7-A和ARMv7-R版(ARMDDI0406)《ARM体系结构参考手册高级SIMD扩展和VFPv3补充》(ARMDDI0268)您的硬件设备的ARM数据表或技术参考手册。vili版权所有2007ARMLimited。保留所有权利。ARMDUI0348AC
前言 viii 版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC 更多参考出版物 本部分列出了 ARM 公司和第三方发布的、可提供有关 ARM 系列处理器开发代 码的附加信息的出版物。 ARM 公司将定期对其文档进行更新和更正。有关最新勘误表、附录以及 ARM 常见问题 (FAQ),请访问 http://www.arm.com。 ARM 公司出版物 本手册包含 RVCT 附带的开发工具专用的参考信息。该套件中包含的其他出版 物有: • 《RVCT 要点指南》(ARM DUI 0202) • 《RVCT 编译器用户指南》(ARM DUI 0205) • 《RVCT 库和浮点支持指南》(ARM DUI 0349) • 《RVCT 链接器和实用程序指南》(ARM DUI 0206) • 《RVCT 汇编程序指南》(ARM DUI 0204) • 《RVCT 开发指南》(ARM DUI 0203) • 《RealView Development Suite 词汇表》 (ARM DUI 0324) • 《NEON 向量化编译器指南》(ARM DUI 0350)。 有关基础标准、软件接口以及 ARM 支持的标准的完整信息,请参阅 install_directory\Documentation\Specifications\.。 此外,有关与 ARM 产品相关的特定信息,请参阅下列文档: • 《ARM6-M 体系结构参考手册》(ARM DDI 0419) • 《ARM7-M 体系结构参考手册》(ARM DDI 0403) • 《ARM 体系结构参考手册》,ARMv7-A 和 ARMv7-R 版(ARM DDI 0406) • 《ARM 体系结构参考手册高级 SIMD 扩展和 VFPv3 补充》(ARM DDI 0268) • 您的硬件设备的 ARM 数据表或技术参考手册

前言其他出版物以下出版物提供了有关ETSI基本运算的信息。要获取这些信息,请访问国际电信联盟(ITU)无线电通信局的网站http://www.itu.int。ETSI建议书G.191:《语音和音频编码标准化软件工具》.《ITU-T软件工具库2005用户手册》,收录为ETSI建议书G.191的一部分*ETSI建议书G723.1《传输速率为5.3和6.3Kb/s的多媒体通信双速率语音编码器》。ETSI建议书G.729《使用共轭结构代数码激励线性预测(CS-ACELP)的8Kb/s语音编码》。德州仪器公司的网站http://www.ti.com上提供有关TI编译器内在函数信息的出版物。ixARMDUI0348AC版权所有2007ARMLimited。保留所有权利
前言 ARM DUI 0348AC 版权所有 © 2007 ARM Limited。保留所有权利。 ix 其他出版物 以下出版物提供了有关 ETSI 基本运算的信息。要获取这些信息,请访问国际电 信联盟 (ITU) 无线电通信局的网站 http://www.itu.int。 • ETSI 建议书 G.191:《语音和音频编码标准化软件工具》 • 《ITU-T 软件工具库 2005 用户手册》,收录为 ETSI 建议书 G.191 的一部分 • ETSI 建议书 G723.1:《传输速率为 5.3 和 6.3 Kb/s 的多媒体通信双速率语音 编码器》。 • ETSI 建议书 G.729:《使用共轭结构代数码激励线性预测 (CS-ACELP) 的 8 Kb/s 语音编码》。 德州仪器公司的网站 http://www.ti.com 上提供有关 TI 编译器内在函数信息的出 版物

前言反馈ARM公司欢迎用户就RealView编译工具及其文档提供反馈意见。RealView编译工具反馈信息如果您有关于RVCT的任何问题,请与您的供应商联系。为便于他们快速提供有用的答复,请提供您的姓名和公司产品序列号您所用版本的详细信息您运行的平台的详细信息,如硬件平台、操作系统类型和版本能重现问题的一小段独立代码示例您预期发生和实际发生的情况的详细说明您使用的命令,包括所有命令行选项能说明问题的示例输出工具的版本字符串,包括版本号和内部版本号。关于本手册的反馈如果您发现本手册有任何错误或遗漏之处,请发送电子邮件到errata@arm.com,并提供文档标题文档编号.您有疑问的页码问题的简要说明。我们还欢迎您对需要增加和改进之处提出建议。ARMDUI0348ACx版权所有2007ARMLimited。保留所有权利
前言 x 版权所有 © 2007 ARM Limited。保留所有权利。 ARM DUI 0348AC 反馈 ARM 公司欢迎用户就 RealView 编译工具及其文档提供反馈意见。 RealView 编译工具反馈信息 如果您有关于 RVCT 的任何问题,请与您的供应商联系。为便于他们快速提供 有用的答复,请提供: • 您的姓名和公司 • 产品序列号 • 您所用版本的详细信息 • 您运行的平台的详细信息,如硬件平台、操作系统类型和版本 • 能重现问题的一小段独立代码示例 • 您预期发生和实际发生的情况的详细说明 • 您使用的命令,包括所有命令行选项 • 能说明问题的示例输出 • 工具的版本字符串,包括版本号和内部版本号。 关于本手册的反馈 如果您发现本手册有任何错误或遗漏之处,请发送电子邮件到 errata@arm.com, 并提供: • 文档标题 • 文档编号 • 您有疑问的页码 • 问题的简要说明。 我们还欢迎您对需要增加和改进之处提出建议
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《嵌入式应用开发》课程教学资源(文献资料)DHT11数字湿温度传感器的原理和应用范例.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)CH340 中文手册(USB 转串口芯片 CH340).pdf
- 《嵌入式应用开发》课程教学资源(文献资料)AL422 Data Sheets.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)Advanced Monolithic Systems AMS1117 1A LOW DROPOUT VOLTAGE REGULATOR.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)AT24C02.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)DS1820中文数据手册.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)ENC28J60 Data Sheet Stand-Alone Ethernet Controller with SPI Interface.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)ET2046 低电压IO触摸屏控制电路.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)OV7670-OV7171 CMOS VGA(OmniPixel)CAMERACHIP图像传感器.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)W25Q64BV 64M-BIT SERIAL FLASH MEMORY WITH DUAL AND QUAD SPI.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)XPT2046用户手册(中文资料).pdf
- 《嵌入式应用开发》课程教学资源(文献资料)通用串行总线(USB)2.0——STM32F10x USB开发者培训.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)UM0424 User manual STM32 USB-FS-Device development kit.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)STM32 USB Mass Storage学习资料.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)STM32的USB详解.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)STM32F2技术培训——灵活的静态存储控制器(FSMC).pdf
- 《嵌入式应用开发》课程教学资源(文献资料)AN2594 Application note EEPROM emulation in STM32F101xx and STM32F103xx microcontrollers.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)PM0042编程手册——STM32F10xxx闪存编程.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)STM32F107开发板学习笔记.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)Cortex-M3 技术参考手册.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)PCB高级设计系列讲座——射频与数模混合类高速PCB设计.pdf
- 《嵌入式应用开发》课程教学资源(文献资料)华为技术有限公司硬件工程师手册.pdf
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元1 数据库基础.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元2 数据库安装与配置.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元3 数据库设计.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元4 数据库建立.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元5 数据库查询.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元6 视图.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元7 数据库编程.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元8 存储过程与触发器.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元9 数据库管理.ppt
- 《数据库原理与SQL Server》课程教学资源(PPT课件)单元10 数据库开发.ppt
- 《数据库原理与SQL Server》课程教学课件(PPT讲稿)存储过程触发器.ppt
- 《数据库原理与SQL Server》课程教学课件(PPT讲稿)大数据时代.ppt
- 《J2SE程序设计基础》课程教学大纲(适用专业:计算机应用、网络、物联网技术).pdf
- 《J2SE程序设计基础》课程教学课件(PPT讲稿)第1章 Java开发入门.ppt
- 《J2SE程序设计基础》课程教学课件(PPT讲稿)第2章 Java编程基础.pptx
- 《J2SE程序设计基础》课程教学课件(PPT讲稿)第3章 面向对象(上).ppt
- 《J2SE程序设计基础》课程教学课件(PPT讲稿)第4章 面向对象(下).ppt
- 《J2SE程序设计基础》课程教学课件(PPT讲稿)第6章 GUI(图形用户界面).pptx
