We introduce the concept of future values. Using future values it is possible to represent programs in a new control-flow form such that on any control flow path the data-flow aspect of the computation is either traditional (i.e., definition of a value precedes its consumers), or reversed (i.e., consumers of a value precede its definition). The representation hence allows unrestricted code motion since ordering of instructions are not prohibited by the data dependencies. We present a new program representation called Recursive Future Predicated Form (RFPF) which implements the concept. RFPF subsumes general if-conversion and permits unrestricted code motion to the extent that the whole procedure can be reduced to a single block. We develop ...
this paper we consider two elaborations of this algorithm, which are dealt with in Part I and Part I...
Backward program slicing identifies the program parts that might influence a particular variable at ...
The quality of synthesis results for most, high-level synthesis approaches is strongly affected by t...
International audienceA future is an entity representing the result of an ongoing computation. A syn...
In this paper we address a resource–constrained optimiza-tion problem for behavioral descriptions co...
In this paper we address a resource-constrained optimization problem for behavioral descriptions con...
An optimizing compiler internal representation fundamentally affects the clarity, efficiency and fea...
this paper focuses on lazy code motion as proposed by Knoop, Ruthing, and Steffen and modified by Dr...
this paper, we emphasize the practicality of lazy code motion by giving explicit directions for its ...
An implementation-oriented algorithm for lazy code motion is presented that minimizes the number of ...
Value-driven redundancy elimination is a combination of value numbering and code motion. Value numbe...
In this paper we address a resource–constrained optimization problem for behavioral descriptions con...
We introduce a code transformation technique "conditional speculation" that speculates operations by...
Program slicing is a program transformation that is useful in program debugging, program maintenance...
AbstractA future is a well-known programming construct used to introduce concurrency into sequential...
this paper we consider two elaborations of this algorithm, which are dealt with in Part I and Part I...
Backward program slicing identifies the program parts that might influence a particular variable at ...
The quality of synthesis results for most, high-level synthesis approaches is strongly affected by t...
International audienceA future is an entity representing the result of an ongoing computation. A syn...
In this paper we address a resource–constrained optimiza-tion problem for behavioral descriptions co...
In this paper we address a resource-constrained optimization problem for behavioral descriptions con...
An optimizing compiler internal representation fundamentally affects the clarity, efficiency and fea...
this paper focuses on lazy code motion as proposed by Knoop, Ruthing, and Steffen and modified by Dr...
this paper, we emphasize the practicality of lazy code motion by giving explicit directions for its ...
An implementation-oriented algorithm for lazy code motion is presented that minimizes the number of ...
Value-driven redundancy elimination is a combination of value numbering and code motion. Value numbe...
In this paper we address a resource–constrained optimization problem for behavioral descriptions con...
We introduce a code transformation technique "conditional speculation" that speculates operations by...
Program slicing is a program transformation that is useful in program debugging, program maintenance...
AbstractA future is a well-known programming construct used to introduce concurrency into sequential...
this paper we consider two elaborations of this algorithm, which are dealt with in Part I and Part I...
Backward program slicing identifies the program parts that might influence a particular variable at ...
The quality of synthesis results for most, high-level synthesis approaches is strongly affected by t...