Data Sheet Errata
Documentation Errata for VisualDSP++® 5.0 C/C++ Compiler and Library Manual for TigerSHARC Processors
Doc ID: DOC-762
Change
The following text is added at the end of the "-W{error|remark|suppress|warn} number[, number...]" section.
As shown in the Output window and in Help, error codes sometimes begin with a leading zero (for example, cc0025). If you try to suppress error codes with -W{error|remark|suppress|warn} or #pragma diag() and supply the code with a leading zero, it will not work. This is because the compiler reads the number as an octal value, and will suppress a different warning or error.
Doc ID: DOC-909
Change
The prototype of "__builtin_compose_64" in the section "Composition and Decomposition" is incorrect. Change from:
long long int __builtin_compose_64(int hi, int lo);
Change to: long long int __builtin_compose_64(int lo, int hi);
Doc ID: DOC-752
Change
Change:
const char __argv_string[] = "-in x.gif -out y.jpeg";
To:
extern const char __argv_string[] = "-in x.gif -out y.jpeg";
Doc ID: DOC-728
Change
The example for argv and argc should change from:
const char __argv_string[] = "-in x.gif –out y.jpeg";
Change to:
const char __argv_string[] = "prog_name -in x.gif –out y.jpeg";
This change is needed because, typically,
argv[0]
is the command that has just been executed.
Doc ID: DOC-729
Change
A series of heap related changes are needed.
On page 1-280, change from:
The default heap, seg_heap, is always 0 and the primary heap IDs of user-defined heaps are 1 with any additional user-defined heaps being 2, 3, and so on, with each heap index being an increment of one from the previous heap index.
Change to:
The default heap, seg_heap, is always 0 and the alternate heap is always 1 with any additional user-defined heaps being 2, 3, and so on, with each heap index being an increment of one from the previous heap index.
On page 1-286, in the code comments, correct the spelling from Initailiase to Initialize.
On page 3-215, add the following note at the end of the description:
You should not initialize a heap at runtime with the same id as a statically defined heap, including the default heap and alternate heap (with ids 0 and 1, respectively) if they are present.
Doc ID: DOC-765
Change
Replace the following sentence in the fir_interp
section:
Each filter should have its own delay line which is a vector of type float and whose length is equal to the number of coefficients.with
Each filter should have its own delay line which is a vector of type float and whose length is equal to the number of coefficients per polyphase filter.In the Example section for
fir_interp
replace the following line:
float delay[NCOEFFS];
with:
float delay[NCOEFFS/NPOLY];
In addition, change the code in this section from
/* Initialize the delay line */
for (i = 0; i < NCOEFFS; i++)
      delay[i] = 0;
to:
/* Initialize the delay line */
for (i = 0; i < NCOEFFS/NPOLY; i++)
      delay[i] = 0;
Doc ID: DOC-731
Change
The reference page for fscanf does not describe all the length modifiers that are supported by the function. Under the heading "Description", do the following to correct the problem:
- In the 5th paragraph (The length modifier can be used to specify ...), remove the character sequence
e, f, g,
from the 2nd sentence (The length modifiers should only precede ...). - Following the 5th paragraph (The length modifier can be used to specify the size of the ...) Table 3-29. (Length Modifier for fscanf) documents the length modifiers
h
andl
andll
andL
. Replace this table with the corresponding table in the Blackfin manual (on page 3-163). - Insert the following paragraph immediately after the above-mentioned table:
Note that the hh, j, t, and z size specifiers are defined in the C99 (ISO/IEC 9899:1999) standard.
- The following symbols in the new paragraph should be in Letter Gothic font:
hh, j, t, z
Doc ID: DOC-727
Change
Change the description of the heap_switch() from:
If the heap_index is the current heap then heap_index is returned, otherwise a value of -1 is returned.
Change to:
If the current heap was previously set then the index of the previous heap is returned, otherwise -1 is returned.
Doc ID: DOC-805
Change
The example for heap_switch
is not correct. Change from:
int heap1[256]; /* memory for heap 1*/
int main()
{
char *buf;
heap_install(heap1, sizeof(heap1), 1);
heap_switch(1); /* make heap 1 the default heap */
Change to:
int heap2[256]; /* memory for heap 2*/
int main()
{
char *buf;
heap_install(heap2, sizeof(heap2), 2);
heap_switch(2); /* make heap 2 the default heap */
Doc ID: DOC-712
Change
Change the first parameter in the reference page for qsort
from void base
to void *base
(insert the asterisk).
Last Update Date: May 8 2017