Abstract
Instruction scheduling consists of the rearrangement or transformation of program statements, usually at the intermediate language or assembly code level, in order to reduce possible run-time delays between instructions. Such transformations must preserve data dependency and are subject to other constrains. Highly optimizing compilers employing instruction-scheduling techniques have proven to be effective in improving the performance of pipeline processors. Considerable attention has been given to scheduling code within the scope of basic blocks, i.e., straight-line sections of code. In this paper we present techniques for scheduling beyond basic blocks. This allows a further reduction in run-time delays such as those due, e.g., to branches and loops, enabling the exploiting of pipeline architectures which would not otherwise be possible.
| Original language | English |
|---|---|
| Pages (from-to) | 93-97 |
| Number of pages | 5 |
| Journal | IBM Journal of Research and Development |
| Volume | 34 |
| Issue number | 1 |
| DOIs | |
| State | Published - 1990 |
ASJC Scopus subject areas
- General Computer Science
Fingerprint
Dive into the research topics of 'Instruction scheduling beyond basic blocks'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver