We are using ML to build a compiler that does low-level optimization. To support optimizations in classic imperative style, we built a control-flow graph using mutable pointers and other mutable state in the nodes. This decision proved unfortunate: the mutable flow graph was big and complex, and it led to many bugs. We have replaced it by a smaller, simpler, applicative flow graph based on Huet’s (1997) zipper. The new flow graph is a success; this paper presents its design and shows how it leads to a gratifyingly simple implementation of the dataflow framework developed by Lerner, Grove, and Chambers (2002).
The computation of dominators in a flowgraph has applications in several areas, including program op...
Flow graph models have recently become increasingly popular as a way to express parallel computation...
The first step in high level synthesis consists of translating a behavioral specification into its c...
AbstractWe are using ML to build a compiler that does low-level optimization. To support optimizatio...
Text includes handwritten formulasIn data flow programs, instructions execute when their operands be...
Data flow languages form a subclass of the languages which are based primarily upon function applica...
Data-flow analysis is an integral part of any aggressive optimizing compiler. We propose a framework...
this report is to investigate the representation of algorithms as data flow graphs and the lineariza...
Machine learning (ML) is increasingly seen as a viable approach for building compiler optimization h...
Abstract Dataflow programs are widely used. Each program is a directed graph where nodes are comput...
Abstract. As part of a larger project, we have built a declarative assembly language that enables us...
This thesis develops a demand driven solver for constraint based control flow analysis. Our approach...
Data-flow analysis computes its solutions over the paths in a control-flow graph. These paths---whet...
Compiler optimizations need precise and scalable analyses to discover program properties. We propose...
. The concepts of value- and control-flow graphs are important for program analysis of imperative pr...
The computation of dominators in a flowgraph has applications in several areas, including program op...
Flow graph models have recently become increasingly popular as a way to express parallel computation...
The first step in high level synthesis consists of translating a behavioral specification into its c...
AbstractWe are using ML to build a compiler that does low-level optimization. To support optimizatio...
Text includes handwritten formulasIn data flow programs, instructions execute when their operands be...
Data flow languages form a subclass of the languages which are based primarily upon function applica...
Data-flow analysis is an integral part of any aggressive optimizing compiler. We propose a framework...
this report is to investigate the representation of algorithms as data flow graphs and the lineariza...
Machine learning (ML) is increasingly seen as a viable approach for building compiler optimization h...
Abstract Dataflow programs are widely used. Each program is a directed graph where nodes are comput...
Abstract. As part of a larger project, we have built a declarative assembly language that enables us...
This thesis develops a demand driven solver for constraint based control flow analysis. Our approach...
Data-flow analysis computes its solutions over the paths in a control-flow graph. These paths---whet...
Compiler optimizations need precise and scalable analyses to discover program properties. We propose...
. The concepts of value- and control-flow graphs are important for program analysis of imperative pr...
The computation of dominators in a flowgraph has applications in several areas, including program op...
Flow graph models have recently become increasingly popular as a way to express parallel computation...
The first step in high level synthesis consists of translating a behavioral specification into its c...