3. The compiler's role
As previously mentioned, the compiler is responsible for generating long instructions according to the different slots available. VLIW instructions can have up to 8 slots, whereas the length of basic blocks in programs, i.e. the sequence of instructions followed by a branch, varies on average between 4 to 5 for integer programs and 8 to 10 for float programs. This means that a basic block requires one instruction or a very small number of VLIW instructions.
3.1 Trace scheduling
The compiler must first schedule the basic blocks. To optimize further, the compiler must schedule instructions across several basic blocks to form super-blocks. This technique is called trace scheduling. It is illustrated in figure
Exclusive to subscribers. 97% yet to be discovered!
You do not have access to this resource.
Click here to request your free trial access!
Already subscribed? Log in!
The Ultimate Scientific and Technical Reference
This article is included in
Software technologies and System architectures
This offer includes:
Knowledge Base
Updated and enriched with articles validated by our scientific committees
Services
A set of exclusive tools to complement the resources
Practical Path
Operational and didactic, to guarantee the acquisition of transversal skills
Doc & Quiz
Interactive articles with quizzes, for constructive reading
The compiler's role
Bibliography
Exclusive to subscribers. 97% yet to be discovered!
You do not have access to this resource.
Click here to request your free trial access!
Already subscribed? Log in!
The Ultimate Scientific and Technical Reference