Tool News
 
 
 

Tool News

Products Info
Downloads
Tools FAQs
RENESAS TOOL NEWS on September 5, 2007: 070905/tn1

The C/C++ Compiler Package for the H8SX, H8S, and H8 MCU Families
Revised to V.6.02 Release 00


We have revised the C/C++ compiler package for the H8SX, H8S, and H8 MCU families from V.6.01 Release 03 to V.6.02 Release 00.

1. Descriptions of Revision
1.1 High-performance Embedded Workshop Updated
    The High-performance Embedded Workshop included in the package has been
    updated to V.4.03.00. For details of this version, see RENESAS TOOL NEWS
    Document No. 070701/tn3, published on July 1, 2007, at
      http://tool-support.renesas.com/eng/toolnews/070701/tn3.htm

1.2 Functions Introduced in the Compiler
    (1) Option divs_inst introduced: It expands division expressions to
        division instructions without using shift operations and is used
        for MCUs capable of executing division instructions at high
        speed of the H8SX family.
    (2) Option align=4 can be used for the H8S MCU family.
    (3) Reduced has been the object sizes of mathematical functions
        sinf(), cosf(), tanf(), expf(), logf(), sqrtf(), and atanf(),
        which handle single-precision floating-point numbers, in order
        to improve speed and precision in operations.

1.3 Functions Introduced in the Optimizing Linkage Editor
    The following options have been introduced in the optimizing
    linkage editor (hereafter abbreviated as the linker):
    (1) total_size: Outputs the total size of sections to the standard
        output type by type of section listed below.
          - Executable section
          - ROM-allocated data section
          - RAM-allocated data section
    (2) show=total_size: Outputs the above total size of sections to
        the linkage list.

1.4 Problems Fixed
1.4.1 In High-performance Embedded Workshop
      The problem reported in the following item of news has been fixed:
      (1) RENESAS TOOL NEWS Document No. 070701/tn2, published on
          July 1, 2007, at
            http://tool-support.renesas.com/eng/toolnews/070701/tn2.htm

1.4.2 In the Compiler
      The following problems have been fixed:
      (1) Those reported in the following items of news:
          (a) RENESAS TOOL NEWS Document No. RSO-H8C_2-060601D, published
              on June 1, 2006, at
              http://tool-support.renesas.com/eng/toolnews/060601/tn6.htm
          (b) RENESAS TOOL NEWS Document No. 070901/tn4, published
              on September 1, 2007, at
              http://tool-support.renesas.com/eng/toolnews/070901/tn4.htm
      (2) The problem that option cpu=300L or cpu=300 cannot be selected
          with option structreg at the same time
      (3) The problem that the results of execution of standard library
          functions sscanf() and realloc() are incorrect
      (4) The problems that may cause the C4980, C332, C3027, C4633,
          and C4979 errors to arise
      (5) The problem that the debugger may reference incorrect members of
          a structure and union.

1.4.3 In the Linker
      (1) For the message numbers L0300, L1330, L2220, and L3110,
          the method of displaying messages has bee improved as follows:
           If the file causing to dispatch a message of these types is
           a specific library module in the library files, the library
           module's name can be provided in the linker V.9.03.00 or later.
           Example of a message before improved (V.9.02.00 or earlier)
             ** L3110 (F) Illegal cpu type "<CPU type>" in "<library name>"
           Example of a message after improved (V.9.03.00 or later)
             ** L3110 (F) Illegal cpu type "<CPU type>" in "<library name>
                                                          (<module name>)"
          To check for the version number of your linker, use the
          following procedure:
          (a) In High-performance Embedded Workshop, open the Tools menu
              and select Administration. The Tool Administration dialog
              box appears.
          (b) Select the compiler package you are using among Toolchains
              in the Registered Components list of the above dialog box;
              then click the Properties button. The Properties dialog box
              opens.
          (c) In the Information tab of this dialog box, the version
              numbers of your tools will be shown.
              Example of a linker: Optimizing Linkage Editor (V.9.00.02)

      (2) Fixed has been the problem that Call Walker, the stack analyzing
          tool, provides a smaller value of the program's stack usage
          than the actual one.
          This problem may occur if the following conditions are all
          satisfied:
          (a) Optimizing option -optimize=1 is selected at compilation.
          (b) In the C source file exists a function calling another
              one that immediately follows it.
              Example of C source file:
              -----------------------------------------
              void f()
              {
               . . . . . . . . . . . . . . . . . . . .
                  g();  /* Function f calls g, which follows f */
              }
              void g()
              {
               . . . . . . . . . . . . . . . . . . . .
              }
              -----------------------------------------

      (3) Fixed has been the problem that the register to be saved and
          that to be restored are different from each other when an option
          enabling the optimization of saving and restoring registers
          (for example, optimize=register) is used.
          This problem may occur if the following conditions are all
          satisfied:
          (a) Option "goptimize" is selected at compilation.
          (b) Any of the following CPU options is selected at compilation:
                300, 300reg, 300hn, 300ha, 2000n, 2000a, 2600n, and 2600a
              Note that 2000n, 2000a, 2600n, and 2600a are involved if
              each of them is used together with compiler option legacy=v4.
          (c) The version of your linker is V.9.00.01 or later.
          (d) Any option enabling the optimization of saving and restoring
              registers (for example, optimize=register) is used at linking.

      (4) The problems causing the following internal errors have been fixed:
           - L4000 (-) Internal Error : (1153)
           - L4000 (-) Internal Error : (3081)
           - L4000 (-) Internal Error : (8870)
           - L4000 (-) Internal Error : (8957)

2. How to Update Your Product and Purchase the Revised One
2.1 Free-of-Charge Update
    Free-of-charge online update is available. Update yours using
    AutoUpdate Utility or download the update program from the Web site
    at
        http://www.renesas.com/h8c_download
    and execute it (this site will be opened from September 5 on).

2.2 First Ordering
    If you place an order for the product, please supply the following
    items of information to your local Renesas Technology sales office
    or distributor:
     Product Type:    The C/C++ compiler package for the H8SX, H8S, and
                      H8 MCU families
     Version No.:     V.6.02
     Release No.:     Release 00
     Host OS:         Windows XP or Windows 2000

    For the price of the product, also contact the above.

3. Notice when using the MISRA C Rule Checker SQMlint
   V.1.02 Release 00 through V.1.03 Release 00
   Refer to RENESAS TOOL NEWS Document No. 070901/tn2, published on 
   September 3, 2007, if you are using the MISRA C Rule Checker SQMlint
   V.1.02 Release 00 through V.1.03 Release 00
   http://tool-support.renesas.com/eng/toolnews/070901/tn2.htm. 



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