CODEGEN-5174 |
Error in workaround for CODEGEN-3721 |
Fixed |
|
C2000_18.9.0.STS |
Rewrite the code to avoid "<=" or ">=" integer comparisons.
This may not always be possible, because the optimizer may rearrange other
integer comparisons to create "<=" or ">=" comparisons. |
Integer <= and >= comparisons may falsely return "true" for some
inputs. This will only happen for inputs that have more than 24
significant binary digits but vary in the lowest bits. The more
significant binary digits the values have, the more bits may vary in the
lowest end of the values and still falsely compare equal. |
CODEGEN-4721 |
Linker crashes with INTERNAL ERROR: lnk2000 experienced a segmentation
fault |
Fixed |
C2000_18.9.0.STS |
C2000_18.9.0.STS |
None. |
In the right (or wrong) circumstances, the linker may crash or print
an error message and exit. The immediate reason is memory corruption
caused by an errant data structure, which means that it's very hard to
specify exactly how to reproduce or avoid it. There is no known
workaround. |
CODEGEN-4668 |
Macro with temp label causes assembler to crash |
Fixed |
|
C2000_18.9.0.STS |
The problem will not occur without macro labels. If labels are
required, no workaround is known. |
The assembler may crash or report a memory misuse when using an
assembly macro containing a label, if the label appears in an instruction
in a position that requires extra lookahead to parse. The original example
is a register name followed by a comma and a label use; for that
assembler, the thing following the comma might be a shift specifier, so it
requires expanding the macro label. That extra step frees some memory
that it shouldn't, causing the problem. |
CODEGEN-4600 |
Warning when using pragma RETAIN with attribute((noinit)) |
Fixed |
C2000_18.9.0.STS |
C2000_18.9.0.STS |
|
When using pragma RETAIN with attribute((noinit)) on the same symbol
for an EABI target, a .clink directive is erroneously emitted in the
assembly file, leading to a warning that the .CLINK directive is being
ignored because the symbol already has .RETAIN specified. |
CODEGEN-4496 |
CLA compiler passes function arguments incorrectly and issues linker
error |
Fixed |
C2000_18.9.0.STS |
C2000_18.9.0.STS |
None |
The CLA linker issues an undefined symbol error for a CLA math library
function's scratchpad (__cla_CLAsincos_sp). The fundamental bug is that
the CLA code generator is erroneously passing a function argument on the
function's scratchpad even though it should be passed in a register, and
then zeroing out the register. Additionally, the function is a CLA math
library function which has defined an incorrect scratchpad name, so once
the function's scratchpad is referenced, the linker issues an undefined
symbol error because there is no definition for the legitimate function
scratchpad name. However, the function's scratchpad should not be
referenced to begin with. The bug was introduced in C2000 CGT
v17.3.0.STS. |
CODEGEN-3595 |
Stack usage under reports stack amount used because it fails to handle
function aliases |
Fixed |
|
C2000_18.9.0.STS |
|
CCS Stack Assistant did not accurately track aliased functions--
functions whose definitions are represented by a different symbol name.
Now, the alias function will be used to determine stack size correctly,
and the aliased function call name will be replaced with its alias.
Currently, the Stack Assistant GUI is not capable of showing both the
aliased and alias function names for calls to aliased functions-- this
will require a future update. |
SDSCM00014430 |
calloc doesn't check arguments to make sure the requested size is
reasonable |
Fixed |
|
C2000_18.9.0.STS |
|
|