码迷,mamicode.com
首页 >  
搜索关键字:ucc    ( 40个结果
C编译器剖析_6.1 汇编代码生成_简介
6.1 汇编代码生成简介     历经词法分析、语法分析、语义检查和中间代码生成阶段,我们终于来到了“目标代码生成阶段”,由于UCC编译器的目标代码即为32位x86汇编代码,因此我们就把本章称为“汇编代码生成”。UCC编译器中的大部分源代码都适用于Windows和Linux平台,但Windows平台上缺省的汇编器支持Intel风格的x86汇编代码,而Linux平台默认的汇编器则采用AT&T风格的...
分类:其他好文   时间:2015-04-26 09:30:07    阅读次数:185
C编译器剖析_5.4.2 中间代码生成及优化_基本块的合并
5.4.2  基本块的合并     我们在第5.4.1节时给出了由基本块构成的双向链表和控制流图,为阅读方便,我们这里再次给出“图5.1.4 基本块的静态结构和动态结构”。在这一小节中,我们试图把双向链表中相邻的基本块进行合并,当然这种合并需要满足一定条件,同时要保持程序的原有语义。在合并后,控制流图中的前驱与后继关系也要进行调整。我们需要改动的数据结构有图5.4.1中的双向链表和控制流图。需要...
分类:其他好文   时间:2015-04-24 19:13:54    阅读次数:136
5.4.1 中间代码生成与优化_UCC编译器的优化_删除无用的临时变量和优化跳转目标
5.4.1  删除无用的临时变量和优化跳转目标     UCC编译器在优化方面做的工作不多,其中与优化有关的函数主要有以下几个: (1)    Symbol  Simplify(Type ty, int opcode, Symbol src1,Symbol src2); 用于进行“代数恒等式”的简化,例如表达式“a (2)    Symbol  TryAddValue(Type ty,...
分类:其他好文   时间:2015-04-23 17:28:20    阅读次数:182
C编译器剖析_5.3.2 中间代码生成及优化_switch语句的翻译
5.3.2.Switch语句的翻译    在这一小节中,我们来讨论一下switch语句的翻译,switch语句的产生式如下所示。 SwitchStatement:                    switch( expr ) statement    当C程序员编写出如下代码时,UCC编译器会在语义检查阶段进行报错“error:The  break shall  appear  in...
分类:其他好文   时间:2015-04-22 18:14:12    阅读次数:160
C编译器剖析_5.3.1 中间代码生成及优化_If语句和复合语句的翻译
5.3.1   If语句和复合语句的翻译     我们先简单回顾一下对布尔表达式的翻译,我们通过调用TranslateBranch函数来产生跳转指令,从而实现布尔表达式的语义。在使用函数TranslateBranch(expr, bt, bn)时,有这么两个约定:     (1) 当expr为真时,跳往bt基本块;     (2) 紧随“函数TranslateBranch所生成的跳转指令”之...
分类:其他好文   时间:2015-04-20 16:58:25    阅读次数:142
C编译器剖析_5.2.4 中间代码生成及优化_后缀表达式的翻译
5.2.4 后缀表达式的翻译     在前面的章节中,我们介绍了用于对数组元素和结构体成员进行访问的函数Offset,其接口如下所示,参数addr代表了基地址,参数voff代表可变偏移,而参数coff则代表常量偏移。          Symbol Offset(Type ty, Symbol addr,Symbol voff, int coff);     函数Offset的基本想法是产生...
分类:其他好文   时间:2015-04-17 11:36:10    阅读次数:140
基于ZK构建统一配置中心的方案和实践
背景:近期使用Zk实现了一个简单的配置管理的小东西,在此开源出来,有兴趣的希望提出您的宝贵意见。如果恰巧您也使用或者接触过类似的东西,也希望您可以分享下您觉得现在这个项目可以优化和改进的地方。项目地址:https://github.com/cncduLee/zk-ucc需求:1、不需要重启应用、修改...
分类:其他好文   时间:2015-04-11 11:46:20    阅读次数:183
C编译器剖析_5.1 中间代码生成及优化_简介
本节对UCC编译器的中间代码生成及优化进行简介,给出基本块BasicBlock、三地址码、控制流图CFG的相应数据结构,介绍有条件跳转、无条件跳转和间接跳转等概念。...
分类:其他好文   时间:2015-04-09 09:02:30    阅读次数:217
《编译原理》上课笔记
2015年03月30日课本P24 P226 P259(左侧,7-1图)1.外部声明 external-declaration external int a; int b; void f(){}2.ucc\examples\sc\decl.c课本P24 Declaration ----->...
分类:其他好文   时间:2015-04-05 10:31:42    阅读次数:234
dropbear编译安装及服务脚本编写
编译安装下载dropbear、并解压#wgethttp://matt.ucc.asn.au/dropbear/releases/dropbear-2015.67.tar.bz2 #tarxvfdropbear-2015.67.tar.bz2 #cddropbear-2015.67 #./configure--prefix=/usr/local/dropbear--sysconfdir=/etc/dropbear编译安装dropbear,要指定安装dropbear的哪..
分类:其他好文   时间:2015-04-04 01:19:34    阅读次数:317
40条   上一页 1 2 3 4 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!