We present a compiler algorithm called BitValue, which can discover unused and constant bits in dusty-deck C programs. BitValue uses forward and backward dataflow analyses, generalizing constant-folding and dead-code detection at the bit-level. This algorithm enables compiler optimizations targeting special processor architectures for computing on non-standard bitwidths. Using this algorithm we show that up to 36 % of the computed bytes are thrown away; also, we show that on average 26.8 % of the values computed require 16 bits or less (for programs from SpecINT95 and Mediabench). A compiler for recongurable hardware uses this algorithm to achieve substantial reductions (up to 20-fold) in the size of the synthesized circuits
Pre-execution is a promising latency tolerance technique that uses one or more helper threads runnin...
International audienceThe CompCert C compiler guarantees that the target program behaves as the sour...
Many reverse engineering techniques for data structures rely on the knowledge of memory allocation r...
We present a compiler algorithm called Bit Value, which can discover both unused and constant bits i...
Many important applications perform computations on non-standard bit-width values; mapping them to ...
In this paper we study the impact of compiler optimizations on the error sensitivity of twelve bench...
In order to implement efficiently in software block ciphers, advanced bitslicing techniques (such as...
This article investigates several source-to-source C compilers for extracting pre-execution thread c...
Many high-level language compilers generate C code and then invoke a C compiler for code generation....
Many high-level language compilers generate C code and then invoke a C compiler to do code generatio...
Abstract. Many high-level language compilers generate C code and then invoke a C compiler to do code...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
This paper presents CDTT, a compiler framework that takes C/C++ code and automatically generates a b...
: This tutorial considers the design of modern machine-independent optimising compilers for classica...
Using only the internal program and data memory of a microcontroller can save large costs in embedde...
Pre-execution is a promising latency tolerance technique that uses one or more helper threads runnin...
International audienceThe CompCert C compiler guarantees that the target program behaves as the sour...
Many reverse engineering techniques for data structures rely on the knowledge of memory allocation r...
We present a compiler algorithm called Bit Value, which can discover both unused and constant bits i...
Many important applications perform computations on non-standard bit-width values; mapping them to ...
In this paper we study the impact of compiler optimizations on the error sensitivity of twelve bench...
In order to implement efficiently in software block ciphers, advanced bitslicing techniques (such as...
This article investigates several source-to-source C compilers for extracting pre-execution thread c...
Many high-level language compilers generate C code and then invoke a C compiler for code generation....
Many high-level language compilers generate C code and then invoke a C compiler to do code generatio...
Abstract. Many high-level language compilers generate C code and then invoke a C compiler to do code...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
This paper presents CDTT, a compiler framework that takes C/C++ code and automatically generates a b...
: This tutorial considers the design of modern machine-independent optimising compilers for classica...
Using only the internal program and data memory of a microcontroller can save large costs in embedde...
Pre-execution is a promising latency tolerance technique that uses one or more helper threads runnin...
International audienceThe CompCert C compiler guarantees that the target program behaves as the sour...
Many reverse engineering techniques for data structures rely on the knowledge of memory allocation r...