Open Defects in Release

ID Summary State Reported In Release Target Release Workaround Release Notes
CODEGEN-4089 Documentation of MIRA rule 9.1 does not mention all the limitations Accepted C6000_7.4.23
CODEGEN-1453 Cannot handle parenthesis around string constant Open C6000_7.4.18
SDSCM00052193 register allocation failure for test case with huge function, huge struct Accepted C6000_7.4.14 You should try to break the struct into smaller pieces, and break the function into smaller functions. You can also try using the option -mu to disable software pipelining, or the option --use_g3 to use the G3 backend.
SDSCM00051804 vscanf test fails with loadcgem, passes with kelvin Accepted C6000_7.4.9
SDSCM00051730 Compiler incorrectly accepts code that uses copy constructor, even though copy constructor is private Accepted C6000_7.4.11 Either remove the NonCopyableBase class or upgrade to C6000 8.0.x compiler tools.
SDSCM00051669 Compiler issues advice to use MUST_ITERATE for loop with constant bounds on iteration count. It doesn't help performance. Accepted C6000_7.4.12
SDSCM00051125 Linker should emit warning that .c6xabi.exidx cannot be split across output sections Accepted C6000_7.4.8
SDSCM00050703 Compiler auto-generates identical global symbol definition in different modules, which causes link to fail Accepted C6000_7.4.8
SDSCM00050657 Unused label causes INTERNAL ERROR with optimizer off, -g, and --optimize_with_debug=on Accepted C6000_7.4.8 Comment out the unused label OUT.
SDSCM00050135 wchar.h should not include stdio.h Accepted C6000_7.4.7
SDSCM00050131 Local struct with non-constant initializer treated as static scope variable Accepted C6000_7.4.7
SDSCM00050004 Compiler mistakenly issues MISRA diagnostic 9.1 regarding local variables being initialized Accepted C6000_7.4.7
SDSCM00050003 Compiler mistakenly issues MISRA diagnostic 16.7, related to pointer function parameters Accepted C6000_7.4.7
SDSCM00049680 Need to add a _lldotp2 intrinsic to the compiler to avoid EXT instruction when using DOTP2 that writes a register pair Accepted C6000_7.4.5 There is no workaround to prevent an extra EXT instruction from occurring. There is no correctness issue.
SDSCM00049545 Compiler mishandles near address operation under EABI Accepted C6000_7.4.6
SDSCM00049282 Compiler misreports Misra warning 10.1 Open C6000_7.4.0B1
SDSCM00049280 Ill advised enum scalar usage gets MISRA diagnostic, but similar usage of enum array does not Open C6000_7.4.0B1
SDSCM00049278 Array that is correctly initialized erroneously gets a MISRA diagnostic about size not being specified Open C6000_7.4.0B1
SDSCM00049238 Use of -mh=auto can cause link to fail Accepted C6000_7.4.6
SDSCM00048041 Should reject certain unitless instructions in parallel with certain other instructions Open C6000_7.4.0B1
SDSCM00047907 Compiler not generating error message when #pragma omp parallel is placed before a variable declaration Accepted C6000_7.4.0 Enclose the code after the #pragma omp parallel directive in a block.
SDSCM00047840 omp for loop with unsigned short loop counter generates error message Accepted C6000_7.4.0 Change to int the type of loop counter variables in for loops that are the target of '#pragma omp for' directives.
SDSCM00047403 Compiler generates segmentation fault when double-quotes are used within C6X_C_OPTION Accepted C6000_7.4.1
SDSCM00047245 C99 math.h macros not supported Accepted C6000_7.4.4
SDSCM00047244 C99 header file fenv.h not supported Accepted C6000_7.4.4
SDSCM00047243 isunordered not supported Accepted C6000_7.4.4
SDSCM00047237 Openmp build does not honor C6600 intrinsic Accepted C6000_7.4.2 #include c6x.h after .
SDSCM00047204 C6000 CGT: bit field updated incorrectly when optimizer is turned on and volatile attribute is used. Accepted C6000_7.4.2
SDSCM00046931 Hex converter map file does not list all sections for RAM model program with initialized sections with .cinit records Accepted C6000_7.4.4
SDSCM00046929 Hex converter fails to process RAM model .cinit records for initialized sections Accepted C6000_7.4.4
SDSCM00046784 extract_h should return a signed 16-bit value Accepted C6000_7.4.1 Change the gsm.h file so that the cast for extract_h is signed instead of unsigned.
SDSCM00046695 Floating point addition rounding error Accepted C6000_7.4.0B1
SDSCM00046690 pow(min, max) and pow(max, max) incorrect Accepted C6000_7.4.4
SDSCM00046659 global labels defined in .cproc region are discarded Accepted C6000_7.4.4
SDSCM00046391 When failing to place a section, include size of trampolines in error message Accepted C6000_7.4.4
SDSCM00046114 RTS float arithmetic functions rounding error Open C6000_7.4.4 The expression 1+DBL_EPSILON/2 should be rounded DOWN to 1.0 for only mode the TI compiler supports: "round to even".
SDSCM00044972 openMP default clause is ignored Accepted C6000_7.4.0
SDSCM00042559 modf(-Inf, 1.0) with -mv6740 enters infinite loop Accepted C6000_7.4.0B1
SDSCM00040934 Structure is not initialized correctly when using -o2 or -o3 optimization Accepted C6000_7.4.0B1 The initialization will have to be done at run-time, through a __sti initialization routine. You can see this routine when compiling without optimization. To workaround the compiler removing this initialization routine, initialize the object at the beginning of main: Info2.mSize = ((unsigned)_end_isr_stack - (unsigned)_start_isr_stack);
SDSCM00039264 When building with -o2, compiler sometimes fails to complete compilation Accepted C6000_7.4.0B1
SDSCM00023977 compiler is scheduling use of A8 too early causing an incorrect branch Accepted C6000_7.4.0B1 Reduce the SPeed optimization Level. Use the -ms0, -ms1 switches.
SDSCM00018691 Linker gives misleading warning when dot expressions used in SECTION directive for .stack section Accepted C6000_7.4.0B1
SDSCM00014430 calloc doesn't check arguments to make sure the requested size is reasonable Accepted C6000_7.4.0B1
SDSCM00008928 Extern inline functions are not supported in the C/C++ Compiler with COFF ABI Accepted C6000_7.4.0B1 This bug only affects COFF ABI. If a function is declared as inline and there are no references to it in the same file, the function is eliminated and can't be called from another file.
SDSCM00008685 DWARF does not correctly represent variables stored in register pairs Accepted C6000_7.4.0B1 Although 'var1' and 'var2' are shown to be in single registers, a debugger could determine that they are actually stored in register pairs by looking at the type of the variables: [00000113] DW_TAG_base_type DW_AT_name long long DW_AT_encoding 0x5 DW_AT_byte_size 0x8 The base type indicates that the size of the variables is 0x8 bytes. Since a single register can only store 0x4 bytes of information, it would take two registers to hold this values. On TI architectures, values stored in multiple registers are always stored in consecutive registers. Thus, the debugger would know that if the entire value could not fit in A4, the rest of the value must be in A5. A5 would contain the upper 32 bits of the value.
SDSCM00008543 Forward reference in .space generates an internal error Accepted C6000_7.4.0B1 none
SDSCM00008248 Compilers on PC will not work without TMP set Accepted C6000_7.4.0B1 Set the TMP environment variable, even if just set to . (current directory)

Generated on Tue Feb 20 17:11:43 2018