自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(7)
  • 资源 (1)
  • 收藏
  • 关注

原创 GCC-4.4.0 机器描述文件中的指令模板

本文简单介绍了GCC机器描述文件中指令模板的基本内容,有兴趣的读者可以打开对应的机器描述文件(例如,针对于Intel的i386处理器架构所提供的机器描述文件为gcc/config/i386/i386.md,针对于MIPS处理器的机器描述文件为gcc/config/mips/mips.md),结合上述内容对照分析。

2024-06-14 16:00:53 1971

原创 GNU ld 链接脚本(Linker Script)简介

表2. 指定目标文件格式的链接脚本命令命令格式意义备注输出文件的格式与命令行选项--oformat bfdname同义输出文件的格式与选项-EB -EL有关指定输入文件的BFD格式与命令行选项-b bfdname同义表示指定输出文件的格式默认为elf32-i386,如果使用链接选项-EB,则选择大端模式的输出格式elf32-i386,如果使用链接选项-EL,则选择小端模式的输出格式elf32-i386。这个例子中三个输出格式的名称是一样,当然也可以指定为不同的值。

2024-06-05 10:47:26 1463

原创 静态库lib.a结构简介

静态库文件是使用打包工具ar将一个或者多个可重定位的目标文件组成一个静态库文件,也可以看做是多个可重定位的目标文件的一个简单包装文件。假设我们要构建一个四则运算的而函数库。

2024-05-31 19:26:26 1640

原创 GCC-4.4.0 词法分析简介

该结果描述了词法分析时,对源文件中的代码进行逐一分析,形成词法符号的过程。由于词法分析的过程已经确定了该词法元素不但是一个标识符,而且是一个语言保留的标识符(即关键字),因此词法分析的过程中就为该标识符创建一个标识符节点,该标识符的名称为“int”,如上面第2行所示,其内存地址在0x b7cfd348。而第二类信息则是以^@开头的行,描述了词法分析的过程中,在解析出了当前词法符号的信息后,是否需要创建相应的AST树节点,如果需要创建,则创建相应的树节点信息,如果不需要创建,则没有该部分的输出信息。

2024-05-29 20:35:51 2046

原创 GCC词法语法分析——AST输出及图示

二. 编译GCC源代码,生成新的编译程序cc1gcc提供了-fdump-tree-original、-fdump-tree-all等选项,可以输出gcc处理源代码过程中的AST及GIMPLE中间表示信息。例如使用-fudmp-tree-original就可以输出GCC进行词法/语法解析后所生成的AST信息,然而该AST信息过于繁杂,不便于分析,本文通过在GCC源代码中增加一些调试语句,从而输出特定函数的AST信息。一. gcc源代码中增加调试代码。

2024-05-24 22:23:37 1113

原创 GCC-4.4.0源代码结构简介

例如,在gcc/目录以下几个目录,分别处理Ada、Java、Fortran、Object-C及C++的词法分析、语法分析、语义分析等典型的语言相关的功能。这部分代码也通常称为GCC前端处理。由于C语言是GCC支持的最基础的语言,所以C语言的前端处理的部分代码在gcc目录下。gcc/adagcc/javagcc/objcgcc/cp总体说来,GCC(编译程序通常称为cc1)的功能可以分为如下几个阶段(1)对输入的高级语言源代码进行词法语法语义分析,构造AST。

2024-05-23 16:56:42 1029 1

原创 GCC 4.4.0中添加自定义的选项

该定义表示声明一个选项-mytest,其中Target表示该选项是一个目标机器相关的选项,Var(MY_TEST_OPTION)表示该选项的值在代码中会使用变量MY_TEST_OPTION保存,Save表示gcc在解析该选项时会使用cl_target_option结构体来保存该选项的值。假设目前需要在i386平台上增加一个自定选项-mytest,该选项的值可以是0或者1,可以按照如下步骤进行添加。该语句中使用的变量名称MY_TEST_OPTION就是上述第一步声明的选项变量。

2024-05-23 11:46:59 465

SystemC.pdf

IEEE1666-2005 SystemC Mannual

2010-02-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除