Functional Specification of Salto: A Retargetable System for Assembly Language Transformation and Optimization
Abstract
This document presents, in a user-oriented approach, the basic
concepts and a specification of Salto, a retargetable System for
Assembly Language Transformation and Optimization. Salto provides a
framework for implementing complex manipulations of low-level codes,
necessary when tuning performance-critical applications. This is achieved
through the use of a detailed description of the target architecture,
covering the instruction set, hardware configuration, and resource
reservation tables of all instructions. An object-based user interface
allows to easily implement complex transformations directly on the abstract
representation of assembly programs, making it easy to cope with new
hardware configurations, assembly language formats, and optimization
techniques. The resulting software infrastructure lets the user concentrate
on the implementation of actual optimizations and code instrumentation
methods, suppressing the concern about implementing house-keeping tasks.