EasyManuals Logo
Home>Texas Instruments>Calculator>TI-89

Texas Instruments TI-89 Software Guide

Texas Instruments TI-89
334 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #316 background imageLoading...
Page #316 background image
304
Section 4: Linker
TI
-
89 / TI
-
92 Plus Sierra C Assembler Reference Manual
Not for Distribution
Beta Version February 2, 2001
Once all the assembly files have been processed by the assembler, the linker is
invoked with the
-h
flag with the hole compression input file just created
specified as an argument. For each 32-bit relocation hole in each TEXT-like
section of each object file listed in this file, the linker determines whether the
address of the referenced symbol could be expressed as an absolute short
address and/or a 16-bit program counter relative address. This information is
stored along with the address of the relocation hole in the compression output
file. The name of this file is created by stripping the
.hci
extension, if present,
from the compression input file, and appending
.hco
. Also stored in this file are
the address bus size and the assembler command line arguments, both of which
are obtained from the compression input file. Once the compression input file is
no longer needed, it is moved to a backup file which is designated by the file
extension
.hcb
.
During the second pass, the assembler and linker are each invoked with the
-H
flag, followed by the name of the hole compression output file generated by the
linker. The assembler treats the compression information contained in this file as
suggestions only, since it is possible that the addressing mode required to
compress a hole will not be legal for the effective address field of a given
instruction. If the addressing mode required to compress a hole is legal, though,
the assembler will shrink the hole to 16 bits, opting for the PC-relative mode over
the absolute short mode if both addressing modes are legal and permit
compression. The assembler requires only a single invocation during this pass,
because it reads the command lines needed to assemble each input file directly
from the compression output file; no command line arguments beside the
-H
flag
and its file should be specified during this pass.
Finally, the linker is invoked with the
-H
flag to link the compressed object files. It
is possible, albeit unlikely, that there will exist a compressed relocation hole that
is too small for the value it must hold. This can only occur when other hole
compressions have caused an increase in the distance between the hole and the
location it references. If this has occurred, the linker will edit the hole
compression output file to rescind the compression recommendation for that
hole. An additional pass (identical to the second pass) will then be required to
uncompress that hole and any others like it. A message will notify the user if an
extra pass is necessary. Only in the rarest of cases will more than one additional
pass be required. If there is still an error after the second pass, check your
source code for possible problems.
The two assembly/linkage passes (plus any necessary additional passes)
required for relocation hole compression are performed automatically by the
TI
FLASH
Studio.

Table of Contents

Other manuals for Texas Instruments TI-89

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Texas Instruments TI-89 and is the answer not in the manual?

Texas Instruments TI-89 Specifications

General IconGeneral
Display size (HxV)100 x 160 mm
Memory type639K FLASH ROM, 188K bytes RAM
Compatible operating systemsOperating System 2.09
Battery typeAAA

Related product manuals