Install guide

System LSI Division, Semiconductor Business
Property of Samsung Electronics Co., Ltd. 19
V1.05r
Dec 20 2012
- [FIX] Binary code of compiler is builds by newest version of IDE
- [FIX] Reduce the amount of memory used by the compiler
- [FIX] Fix bug of compilation built-in asm with 'CLD' instruction
- [FIX] Fix bug of supporting #pragma section
- [FIX] Fix bug that leads to compiler fail in rare cases
- [FIX] Fix bug with conversion pointers to functions
- [FIX] Fix bug with invalid DWARF generation in case of multi-source codes
compilation by one pass
- [FIX] Problem with negative constants is fixed for some optimization of
constants in code
- [FIX] Processing of DelaySlot instructions (e.g. BRAD) in high level
assembler is improved
- [FIX] Problem with some jumps outside the __asm{} block is fixed
- [NEW] (SecuCalm) Syntax of LDB instruction is extended in high level
assembler. Any general register is allowed to be index register
- [FIX] Fix invalid warning in case of multi-source compilation
- [FIX] Optimization of array initialization works more effective
V1.05q
Aug 17 2012
- [FIX] Non-zero code will be returned for wrong command line arguments
(for example for -LCB instead of -Ospeed(-LCB)). The compilation will be
interrupted for wrong parameters
- [FIX] (SecuCalm) The effect of operations like “x = 5; y = 32; x <<= y;” is
modified from “x is not changed” to “x = 0”. Both variants are possible
according to C Standard
- [FIX] Optimization of built-in assembler with jumps and labels works
correctly
V1.05p
May 28 2012
- [FIX] Optimization of logical operations works correctly
V1.05o
May 11 2012
- [FIX] The issue with complex nested function calls in parameters of printf
was resolved (printf("%f = %f", X, ((X)*180/(4*atan(1))));)
- [FIX] The issue with reordering of arguments of floating point arithmetic
operations is resolved. The result of calculation will not be changed after
the optimization of expression
V1.05n
Mar 26 2012
- [FIX] Bug with optimization of string array initialization is fixed (char
strs[4][3] = { {0, 0}, "str", {0, 0} , {0} } ;)
- [FIX] new switch +INITLDLLDW is added for size increasing cases of LDL
optimization of array initialization
- [FIX] LDL optimization of array initialization is switched off by default for
Osize and Osizedebug optimization sets to prevent increasing of code size
- [FIX] The bug with tail initialization of non-aligned arrays is fixed
- [FIX] Some optimizations work correctly (for example,
EvaluateValueRange)
V1.05m
Mar 14 2012
- [FIX] Optimization of addition negative constant works correctly
- [FIX] Memory usage is decreased for partial initialization of local arrays
(e.g. “int M[200] = {1, 2, 3};”)
- [FIX] Memory usage is decreased for dynamic initialization of local arrays
(e.g. “int M[] = {x, y, z};”)
- [FIX] Memory usage is decreased for mostly zero initialization of local
arrays (e.g. “int M[] = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0};”)
V1.05l
Mar 06 2012
- [FIX] Optimization of built-in assembler in string-form works correctly
- [FIX] Unresolved external of __agg_0 is resolved for -Ospeed optimization
- [FIX] The algorithm of generation of CMP_PD instructions is improved
- [FIX] The code generation is now invariant to the names of variables
V1.05k
Feb 28 2012
- [FIX] The initialization of arrays with zero values is optimized. LDL and
LDW instructions will be used whenever it is possible
- [FIX] EvaluateValueRange optimization works correctly and efficiently