GCC编译器生成代码中C对象模型分析.docVIP

  • 6
  • 0
  • 约4.65千字
  • 约 11页
  • 2018-08-11 发布于福建
  • 举报
GCC编译器生成代码中C对象模型分析

GCC编译器生成代码中C对象模型分析   【摘要】本文对GCC编译器编译C++程序时使用的对象模型进行了讨论,重点分析了GCC实现C++对象模型过程中采用的相关数据结构和算法。本文的分析可以帮助程序开发者及C++编译器的设计者理解GCC编译器中C++对象模型的实现机制,或在C++程序安全分析领域帮助开发者设计C++程序安全模型。   【关键词】GCC;C++;对象模型   1.引言   C++对象模型是C++编译器在编译时将代码中各种数据对象映射为二进制代码的映射方法和运行时对这些数据的检索方法的统称。一个C++编译器采用的对象模型很大程度上决定了该C++编译器的设计质量,也部分地体现了该编译器的设计思路。   本文以目前实际项目开发中广为使用的开放源代码C/C++编译器GCC为例,分析其C++对象模型的实现。选择GCC的原因主要是由于GCC允许程序员在编译过程中将其语法中间表示导出为数据文件[1]。程序员在分析GCC的过程中可以通过该中间语法表示直接获取GCC生成代码中的内部信息[2],从而大大降低分析的难度;另一方面,尽管GCC在实际项目开发中被广泛使用,但是探讨其C++代码生成逻辑的文献却相对较少。因此,分析GCC的C++对象模型实现可以作为学习GCC编译器设计的一种有效途径。本文以下的讨论均以GCC v3.3.3作为分析目标。   C++对象模型实际上包括两部分,即C+

文档评论(0)

1亿VIP精品文档

相关文档