Compiler Optimizations for Code Density of Variable Length Instructions

Heikki Kultala, Timo Viitanen, Pekka Jääskeläinen, Janne Helkala, Jarmo Takala

    Research output: Chapter in Book/Report/Conference proceedingConference contributionScientificpeer-review

    2 Citations (Scopus)
    43 Downloads (Pure)


    Variable length encoding can considerably decrease code size in VLIW processors by decreasing the amount of bits wasted on encoding No Operation(NOP)s. A processor may have different instruction templates where different execution slots are implicitly NOPs, but all combinations of NOPs may not be supported by the instruction templates. The efficiency of the NOP encoding can be improved by the compiler trying to place NOPs in such way that the usage of implicit NOPs is maximized. Two different methods of optimizing the use of the implicit NOP slots are evaluated: prioritizing function units that have fewer implicit NOPs associated to them, and a post-pass to the instruction scheduler which utilizes the slack of the schedule by rescheduling operations with slack into different instruction words so that the available instruction templates are better utilized. The post-pass optimizer saved an average of 2.5 % and at best of 9.1 % instruction memory, without performance loss. Prioritizing function units gave best case instruction memory savings of 12.7 % but the average savings were only 1.0 % and there was in average 5.7 % slowdown for the program.
    Translated title of the contributionCompiler Optimizations for Code Density of Variable Length Instructions
    Original languageEnglish
    Title of host publicationIEEE Workshop on Signal Processing Systems, SiPS 2014, Belfast, UK, October 20-22, 2014
    Number of pages6
    ISBN (Print)978-14799-6588-5
    Publication statusPublished - 2014
    Publication typeA4 Article in conference proceedings
    EventIEEE Workshop on Signal Processing Systems -
    Duration: 1 Jan 1900 → …

    Publication series

    NameIEEE Workshop on Signal Processing Systems


    ConferenceIEEE Workshop on Signal Processing Systems
    Period1/01/00 → …

    Publication forum classification

    • Publication forum level 1


    Dive into the research topics of 'Compiler Optimizations for Code Density of Variable Length Instructions'. Together they form a unique fingerprint.

    Cite this