 |
|
 |
RENESAS TOOL NEWS on December 1, 2005: RSO-M3T-NC308WA-051201D
A Note on Using the C Compiler Packages
M3T-NC308WA and M3T-NC30WA |
Please take note of the following problem in using the C compiler packages M3T-NC308WA and M3T-NC30WA, which are used for the M16C MCU family:
- On using the "-JOPT" option at linking
- Products and Versions Concerned
M3T-NC308WA V.5.20 Release 1 and V.5.20 Release 02
(for the M32C/90, M32C/80, and M16C/80 series)
M3T-NC30WA V.5.30 Release 1 and V.5.30 Release 02
(for the M16C/60, M16C/30, M16C/20, M16C/10, M16C/Tiny, and R8C/Tiny series)
- Description
If the "-JOPT" option is used at linking, either of the following warning messages may be displayed, which tells duplication of a directive command ".ID," ".PROTECT," or ".OFSREG" even though the directive command is not duplicated.
In M3T-NC308WA
Warning (ln308): Directive command '.ID' is duplicated
Warning (ln308): Directive command '.PROTECT' is duplicated
In M3T-NC30WA
Warning (ln30): Directive command '.ID' is duplicated
Warning (ln30): Directive command '.PROTECT' or '.OFSREG' is duplicated
- Conditions
This problem occurs if the following conditions are all satisfied:
| (1) |
|
Assembler directive command, ".ID," ".PROTECT," or ".OFSREG," is used. |
| (2) |
|
In the program exists a jump instruction that can optimize the jump distance at linking |
| (3) |
|
The "-Oglb_jmp [-OGJ]" option of the compiler or the "-JOPT" of the assembler is selected. |
| (4) |
|
The "-JOPT" option is selected in the linker. |
Example:
-----------------------------------------------------------------------
_asm(" .protect 0FFH"); /* Condition (1) */
extern void func2(void);
void func1(void)
{
func2(); /* Condition (2); Code jsr _func2 generated */
}
------------------------------------------------------------------------
- Workaround
This problem can be circumvented either of the following ways:
| (1) |
|
Use load module converter option "-ID," "-protectx," or "-ofsregx" instead of assembler directive command ".ID," ".PROTECT," or".OFSREG" respectively. |
| (2) |
|
When ".ID," ".PROTECT," or ".OFSREG" is selected, don't use link option "-JOPT." |
- Schedule of Fixing the Problem
We plan to fix this problem in the next release of the product.
|
 |