
编译原理
文章平均质量分 73
GamebabyRockSun_QQ
曾经拥有的,不要忘记,
已经得到的,更要珍惜,
属于自己的,不要放弃,
已经失去的,留着回忆,
想要得到的,必须努力,
但最重要的,是好好爱惜自己!
展开
-
VS2022环境中使用WinFlex&Bison时设置详细输出
我发誓这个*.y文件之前是编译通过的,而且工作的非常好,这次我只是引用一下,看我配置的环境有没有问题,结果就这样了。接着就是按照错误提示修改内容,直到正确执行即可。原创 2022-07-28 18:15:00 · 1005 阅读 · 4 评论 -
DirectX12(D3D12)基础教程(外篇二)——编译DirectXShaderCompiler库
目录1、前言2、准备工作3、下载DirectXShaderCompiler源码4、编译DirectXShaderCompiler1、前言 功夫不负有心人,终于DirectXShaderCompiler库,也就是HLSL的编译器开源项目源码也被我编译通过了,这是个不小的成功!于是我就乘热打铁,把整个编译的过程记录下来,并完整的分享给大家。目前HLSL Shader 已经发展到最新的V6.6版本了,按微软的叫法就是sm6.6,又增加了很多新的光追Shader特性,所以有喜欢研究编译器以及Shader编译原原创 2021-04-22 02:41:26 · 3621 阅读 · 19 评论 -
循环体并行优化(二)——多维循环迭代空间的仿射变换及循环上下界不等式的矩阵表示法
(重新整理于2020年冬。) 上回书说到(忘了我不是说书的了,习惯性口语,见谅!),我们可以通过一个简单的仿射变换将一维的“不连续”循环下标空间变换到一个“连续”的下标空间中。这次,我们则继续来看看如何将一个高维的“不连续”循环下标变换到“连续”的循环下标空间中。如果非要为这种变换加上一个理由的话,我认为那就是不要在我们的整数向量空间中留下太多的“洞”或者“空泡”。因为对于一个增量不为1的循环变量来说(包括绝对值大于1的负增量也就是递减量),跳过的坐标值形成的那些点就不能在这个迭代空间中,因而形成了这个原创 2020-12-04 09:37:36 · 1033 阅读 · 7 评论 -
循环体并行优化(一)——循环迭代空间的仿射变换
循环体并行优化(一)——循环迭代空间的仿射变换(重新整理于2020年冬。) 最近痴迷于编译原理而不能自拔,这么多年来一直是会在某一段时间痴迷于一件事物,性格使然,无法自控。随着钻研深入,多年前的一个模糊的想法——搞一个自带针对多处理器系统并行优化的编译器,慢慢的发现这个想法并不是遥不可及了。在看了编译原理第二版的并行性和局部性优化章节的内容后,眼前突然豁然开朗。 在多核处理器横行的今天,我的手机上都有八个可以同时执行任务的处理器的年代,很难想象不用并行计算,要如何去榨取这些硬件的“剩余价值”。甚至原创 2020-12-04 09:07:47 · 1713 阅读 · 1 评论 -
C++11标准Flex及Bison文件,请结合WinFlex&Bison编译调试
目录1、前言2、标准C++词法文件(没有整理全,可以参考C的标准词法文件和C++的语法文件补充完整)3、标准C++语法文件(C++11规范,未整理完全,部分可优化,请自行参考语言规范整理)1、前言鉴于这段时间美国总统特朗普先生对以华为为代表的中国企业围堵的全面升级,本人将平时收集整理的标准C++语言的Flex和Bison元文件发出来,供大家参考。算是为反围堵尽自己的一份绵...原创 2019-05-23 00:48:26 · 1569 阅读 · 0 评论 -
标准C语言Flex及Bison文件,请结合WinFlex&Bison编译调试
目录1、前言2、ANSI C 词法文件3、ANSI C 语法文件4、ISO C 标准语法文件(未整理,请参考前两个即可整理)1、前言鉴于这段时间美国总统特朗普先生对以华为为代表的中国企业围堵的全面升级,本人将平时收集整理的标准C语言的Flex和Bison元文件发出来,供大家参考。算是为反围堵尽自己的一份绵薄之力。请注意文件只是标识了标准的词法和语法,并没有语法分析和语...原创 2019-05-23 00:40:58 · 1581 阅读 · 2 评论 -
【原创】Flex和Bison中巧用单双引号提升语法文件的可读性
使用Win Flex 和 Bison有一段时间了,期间搞了几个小型语言的编译器,也整理了C和C++的语法文件,在使用过程中我发现,如果按照传统的%token标记,将运算符,如“+”、“-”、“*”、“/”等搞成文字记号,比如:%token PLUS、%token MINUS,在声明语法时,就会出现像下面这样的定义:simple_exp : simple_exp PLUS simple_e原创 2017-10-11 12:07:27 · 958 阅读 · 2 评论 -
【原创】循环体并行优化(二) ——多维循环迭代空间的仿射变换及循环上下界不等式的矩阵表示法
上回书说到(忘了我不是说书的了,习惯性口语,见谅!),我们可以通过一个简单的仿射变换将一维的“不连续”循环下标空间变换到一个“连续”的下标空间中。这次,我们则继续来看看如何将一个高维的“不连续”循环下标变换到“连续”的循环下标空间中。如果非要为这种变换加上一个理由的话,我认为那就是不要在我们的整数向量空间中留下太多的“洞”。因为对于一个增量不为1的循环变量来说(包括绝对值大于1的负增量也就是递减量原创 2017-10-10 14:23:17 · 1040 阅读 · 2 评论 -
【原创】循环体并行优化(一)——循环迭代空间的仿射变换
最近痴迷于编译原理而不能自拔,这么多年来一直是会在某一段时间痴迷于一件事物,性格使然,无法自控。随着钻研深入,多年前的一个模糊的想法——搞一个自带针对多处理器系统并行优化的编译器,慢慢的发现这个想法并不是遥不可及了。在看了编译原理第二版的并行性和局部性优化章节的内容后,眼前突然豁然开朗。 在多核处理器横行的今天,我的手机上都有八个可以同时执行任务的处理器的年代,很难想象不用并行处理如何去榨取这原创 2017-10-10 14:23:14 · 1465 阅读 · 0 评论 -
【原创】让VS2015与Win Flex Bison共舞
时光荏苒,岁月如梭!很久很久没有更新博客了,很多要写的东西都只是开了个头,或者只写了一小部分因不完整而无法发布,实在遗憾。无奈时间实在是太紧张,大量时间都用在了看书、学习和工作上,不能快意自在的笔耕以饲读者,深感愧疚。前一久加入了一个立志开发编译器的网友团队,哪不知还没开始就又结束了(干嘛说个“又”字,原因你懂的),但是这次经历居然又勾起了我10多年对编译原理的那份迷恋,从书架上翻出那些10多...原创 2020-06-17 09:20:38 · 2773 阅读 · 2 评论