Pragma Cave - Intel i960 User Manual

Processor compiler
Hide thumbs Also See for i960:
Table of Contents

Advertisement

7
7-26
i960 Processor Compiler User's Guide

#pragma cave

#pragma cave [ [(] function [...] [)] ]
function
Prepares code for link-time compression and runtime decompression.
Default
The compiler does not prepare code for compression.
Overview
Compression assisted virtual execution (CAVE) reduces the physical
memory requirements of ROM-based applications through link-time
compression and on-demand runtime decompression of user-specified
functions. The compiler, linker, runtime dispatcher, and compression and
decompression routines cooperate to provide this feature. Code is typically
compressed by a ratio between 1.5 and 1.7. Runtime decompression speed
is about 30 clock cycles per byte of compressed code.
When the CAVE mechanism is used, either through
corresponding compiler driver options, selected functions in the
application are designated to be secondary functions. All other functions
are termed primary functions. The primary set should contain
performance-critical functions, which are not to be affected by the CAVE
mechanisms; the secondary set is subject to compression. Secondary
functions are compressed by the linker and reside in memory in
compressed form. At runtime, calls to secondary functions are intercepted
by the CAVE dispatcher and the functions are decompressed if necessary.
specifies function(s) for the compiler to prepare
for compression. If no function is specified, the
pragma applies to all functions defined following
the pragma.
or the
pragma cave

Advertisement

Table of Contents
loading

Table of Contents