Tool News
 
 
 

Tool News

Products Info
Downloads
Tools FAQs
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


  1. 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)

  2. 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


  3. 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 */
    }
    ------------------------------------------------------------------------

  4. 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."


  5. Schedule of Fixing the Problem
    We plan to fix this problem in the next release of the product.





© 2008. Renesas Technology Corp., All rights reserved. Privacy | Legal