Accelerator Manual (G06.24+, H06.03+)
Accelerator Manual—527303-002
1-1
1 Introduction
The Accelerator processes TNS object code to produce accelerated object code. On 
TNS/R systems, accelerated object code runs significantly faster than TNS object 
code. This section describes how the Accelerator works, how to determine which 
programs to accelerate, and the cost in time and space to accelerate your programs.
How the Accelerator Works
The Accelerator takes as input an executable TNS object file and produces as output 
an accelerated object file. The accelerated object file contains both the original TNS 
code and the logically equivalent optimized RISC instructions (accelerated object 
code.)
Figure 1-1, The Acceleration Process, on page 1-1 illustrates the acceleration process.
The Accelerator produces for each TNS instruction its functional equivalent on the 
TNS/R system, in the form of either:
•
A sequence of zero or more (usually more than one) RISC instructions
•
A call on a millicode routine
In the first and more common case, the Accelerator treats a TNS instruction as though 
it were a macro instruction, expanding it into RISC instructions. In the second, the 
Accelerator treats a TNS instruction as though it were a call on a closed subroutine, 
referred to as a millicode routine. Millicode routines are sets of RISC instructions that 
implement various complex TNS instructions and low-level functions such as exception 
handling, real-time translation routines, and floating-point and quad arithmetic. 
Millicode is functionally equivalent to TNS microcode.
The Accelerator can only produce optimized RISC instructions for TNS instruction 
sequences whose exact meaning can be determined before runtime. In cases where 
the exact meaning cannot be determined until run-time, the program makes a transition 
into TNS code and executes the original TNS instructions. These transitions into TNS 
code can often be prevented by either modifying the program or changing some 
Figure 1-1. The Acceleration Process
TNS
Compiler
TNS
Object Code
TNS Object File
Accelerator
Accelerated Object File
TNS
Object Code
Accelerated
Object Code
VST0101.vsd










