原创作品,转载请标明出处。@周荣华
摘要: 本章是系列文章的第三章,介绍了基于数据流分析的一些优化方法。包括生命周期管理,可获得表达式,常用表达式,可达性定义。本章在介绍这4中分析方法的基础上提取出它们的通用模式。这一章形式化的内容比较多,看的时候有点烧脑,最好自己手工推导一下,要不然基本上看不懂:) 本文中的所有内容来自学习DCC888的学 阅读全文
posted @ 2022-05-17 08:53 周荣华 阅读(1051) 评论(0) 推荐(1) 编辑
摘要: 本章是系列文章的第二章,介绍了基于控制流图的一些优化方法。包括DAG、值标记、相同子表达式等方法。这章的后面介绍了llvm的一些基本概念,并引导大家写了个简单的pass。 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处。周荣华@燧原科技 2 控制流图 2.1 基 阅读全文
posted @ 2022-05-04 12:01 周荣华 阅读(3955) 评论(0) 推荐(2) 编辑
摘要: 本章是整个课程的第一章,主要介绍了一下文章的起源,编译器的历史和相关概念。 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处。周荣华@燧原科技 1. 导论 1.1. 什么是DCC888 DCC是葡萄牙语Departamento de Ciência da Comp 阅读全文
posted @ 2022-05-01 17:09 周荣华 阅读(899) 评论(0) 推荐(0) 编辑
摘要: 1 CMAKE的交叉编译配置 主要是C和C++编译器的配置和SYSROOT的配置。 set (CMAKE_SYSTEM_NAME "Linux") set (CMAKE_SYSTEM_PROCESSOR "x86_64") set (default_toolchain_folder /home/.d 阅读全文
posted @ 2022-04-23 10:26 周荣华 阅读(1126) 评论(0) 推荐(0) 编辑
摘要: 《隋唐演义》这本书,小时候没看过。之前从华为过来在燧原短暂逗留几个月走了的的某高层一直推崇唐史,虽然我不知道他说的唐史是《隋唐演义》这种野史,还是《二十四史》这种正史(从这位高层的文风看,野史居多),但还是勾起了我对《隋唐演义》小说的兴趣。说是小说,自然就有很多杜撰的成分,什么李靖代龙行雨,什么李世 阅读全文
posted @ 2021-12-11 21:43 周荣华 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 1. 下载safe-rm 社区有个safe-rm,可以解决绝大多数误删除目录的问题,安装命令: apt install safe-rm 2. 配置safe-rm 默认safe-rm会禁止删除一些已知的系统目录,用户可以通过配置/etc/safe-rm.conf来增加额外的删除黑名单,下面例子里面后面 阅读全文
posted @ 2021-10-28 15:09 周荣华 阅读(56) 评论(0) 推荐(0) 编辑
摘要: wikipedia上关于SSA的定义如下: In compiler design, static single assignment form (often abbreviated as SSA form or simply SSA) is a property of an intermediate 阅读全文
posted @ 2021-09-30 16:30 周荣华 阅读(1616) 评论(0) 推荐(0) 编辑
摘要: 和燧原几位同事合作生成,作者:吴飞,田进军,周荣华 戊戌1天皇2现,己亥3灵太微4。发诏南天5汉,谁星入我硅?孔雀6星辰至,剑鱼7大海归。天路漫修远8,燧人愿无违9。 注: 1 燧原2018年成立,正好是戊戌年。 2 燧原中的“燧”指代燧人氏,燧人氏又是三皇中的天皇。 3 2019年是己亥年,发布l 阅读全文
posted @ 2021-09-15 16:11 周荣华 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 昨天台风,中午在公司6餐厅吃饭,有幸和公司新来的打扫卫生阿姨聊天。 阿姨刚来没几天,之前的换新阿姨的时候,我还特意问了一下行政,为何要换,而且新的阿姨在场,所以她对我估计有点映像。 阿姨虽然初中没毕业就辍学了(小时候家里没钱,北方人估计也有点重男轻女,父母只够供一个小孩上学的钱,但家里两个女儿一个儿 阅读全文
posted @ 2021-09-15 15:30 周荣华 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 1. 缘起 这几天调gcc 7.5.0 +glibc 2.23的交叉编译工具链,由于gcc 7.5.0的默认打开Werr,偶然发现了glibc一个隐藏了二十年的世纪大bug。 这个bug在glibc 2.0版本刚开始就引入了,但直到2.25版本才最终解决,即使按glibc-2.0.1.bin.alp 阅读全文
posted @ 2021-09-08 10:35 周荣华 阅读(1699) 评论(2) 推荐(0) 编辑