Expression optimization using unary complement operators

D. Frailey
{"title":"Expression optimization using unary complement operators","authors":"D. Frailey","doi":"10.1145/800028.808485","DOIUrl":null,"url":null,"abstract":"For purposes of code optimization there are two basic philosophies of expression analysis: one approach would attempt to do a relatively complete analysis, detecting all redundancies which are logically possible. The other approach would aim at those things which are easily detected and/or highly likely to occur. This paper gives a set of algorithms which derive from the latter philosophy but which are based on general properties rather than specific facts about a particular language or machine. The first section of the paper gives details of a notation used for describing code and defining algorithms. The most significant feature of this notation is that it allows operands to be complemented by any number of “complement operators”. This is done because most of the algorithms make frequent use of the properties of such operators. The second section describes a canonical form for expressions and a series of algorithms based on this form and the properties of complement operators. There are various facets of compiler structure which might bear on the exact usage of these algorithms. Although such considerations are not part of the scope of this paper, occasional comments are made about the relationship of an algorithm to other parts of a compiler. The third section contains a discussion of how these algorithms would fit within an overall optimizer structure.","PeriodicalId":399752,"journal":{"name":"Proceedings of a symposium on Compiler optimization","volume":"20 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1970-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"14","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of a symposium on Compiler optimization","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/800028.808485","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 14

Abstract

For purposes of code optimization there are two basic philosophies of expression analysis: one approach would attempt to do a relatively complete analysis, detecting all redundancies which are logically possible. The other approach would aim at those things which are easily detected and/or highly likely to occur. This paper gives a set of algorithms which derive from the latter philosophy but which are based on general properties rather than specific facts about a particular language or machine. The first section of the paper gives details of a notation used for describing code and defining algorithms. The most significant feature of this notation is that it allows operands to be complemented by any number of “complement operators”. This is done because most of the algorithms make frequent use of the properties of such operators. The second section describes a canonical form for expressions and a series of algorithms based on this form and the properties of complement operators. There are various facets of compiler structure which might bear on the exact usage of these algorithms. Although such considerations are not part of the scope of this paper, occasional comments are made about the relationship of an algorithm to other parts of a compiler. The third section contains a discussion of how these algorithms would fit within an overall optimizer structure.
使用一元补码运算符的表达式优化
出于代码优化的目的,表达式分析有两种基本原理:一种方法将尝试进行相对完整的分析,检测逻辑上可能的所有冗余。另一种方法将针对那些容易发现和/或极有可能发生的事情。本文给出了一组源自后一种哲学的算法,但它们基于一般属性,而不是关于特定语言或机器的特定事实。论文的第一部分详细介绍了用于描述代码和定义算法的符号。这种表示法最重要的特点是它允许用任意数量的“补操作符”对操作数进行补。这样做是因为大多数算法经常使用这些运算符的属性。第二部分描述表达式的规范形式,以及基于这种形式和补运算符的属性的一系列算法。编译器结构的各个方面可能与这些算法的确切使用有关。虽然这些考虑不在本文的讨论范围之内,但是偶尔会对算法与编译器其他部分的关系进行注释。第三部分讨论了这些算法如何适应整体优化器结构。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信