C/C++ Compiler Language Extensions
the generated code; the return register will not be saved and restored.
Only the return register used by the particular function return type is spe-
cial. Return registers used by different return types will be treated in the
clobbered list in the convention way.
For example,
typedef struct { int x, int y } Point;
typedef struct { int x[10] } Big;
int f();
Point g(); // Result in SR1 and SR0. AX1 and I0 may be
Big f();
#pragma result_alignment (n)
The
#pragma result_alignment (n)
returned by the function has a value that is a multiple of
This pragma is often used in conjunction with the
tom allocation functions that return pointers that are more strictly aligned
than be deduced from their type.
Template Instantiation Pragmas
The template instantiation pragmas give fine grain control over where
(that is, in which object file) the individual instances of template func-
tions, and member functions and static members of template classes are
created. The creation of these instances from a template is known in C++
speak as instantiation. As templates are a feature of C++ these pragmas are
only allowed in
These pragmas take the name of an instance as a parameter, as shown in
Table 1-11
1-134
// Result in AX1. SR1, SR0 and I0 may be preserved
across call.
preserved across call.
// Result pointer in I0. AX1, SR1 and SR0 may be
preserved across call
mode.
-c++
VisualDSP++ 3.5 C/C++ Compiler and Library Manual
asserts that the pointer or integer
#pragma alloc
for ADSP-219x DSPs
.
n
of cus-
Need help?
Do you have a question about the VISUALDSP++ 3.5 and is the answer not in the manual?
Questions and answers