0% found this document useful (0 votes)
21 views

E HEWrn 0 B

Uploaded by

Thanh Trụ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

E HEWrn 0 B

Uploaded by

Thanh Trụ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Hitachi Embedded Workshop

Version 1.2
Release Note

HS6400EWIW1SE-RN000901
Rev. 1.2
September 1, 2000
Hitachi Company or Division

Rev. 1.2, 09/00, page 1 of 27


Contents

Section 1 Notes on Using the HEW................................................................... 3


1.1 Notes on network drive issues........................................................................................... 3
1.1.1 Time discrepancies between computers............................................................... 3
1.1.2 Building a project on a network drive.................................................................. 3
1.1.3 Adding a file to a project ..................................................................................... 3
1.2 Note on a race condition on accessing a file ..................................................................... 3
1.3 Note on adding an file extension to a project.................................................................... 4
1.4 Note on workspace name and project name...................................................................... 4
1.5 Notes on comments of the C/C++ language...................................................................... 4
1.5.1 Syntax coloring of the HEW editor...................................................................... 4
1.5.2 File dependencies scanned by the HEW .............................................................. 5
1.6 Note on navigation to a definition of a C function............................................................ 5
1.7 Note on file extensions of C++ source file........................................................................ 6
1.8 Note on use of a relative path on a option dialog box ....................................................... 6
1.9 Scope of a control in the Tools Customize dialog box...................................................... 7
1.10 Scope of a control in the Tools Options dialog box .......................................................... 7
1.11 Note on the Format tab of the Tools Options dialog box .................................................. 7
1.12 Supplement to the Build tab of the Tools Options dialog box .......................................... 8
1.13 Note on opening a file which caused an error ................................................................... 8
1.14 Note on tool uninstallation ................................................................................................ 9
1.15 Note on an old release of Windows® 95 .......................................................................... 9
1.16 The Hitachi Embedded Workshop User’s Manual............................................................ 10

Section 2 Supplement on Hitachi Toolchain ..................................................... 11


2.1 File Extensions.................................................................................................................. 11

Section 3 HIM to HEW Project Conveter........................................................ 12


3.1 Invoking HimToHew.exe.................................................................................................. 12
3.2 Project conversion............................................................................................................. 12
3.2.1 Single tab ............................................................................................................. 13
3.2.2 Multiple tab.......................................................................................................... 16
3.3 Exiting from HimToHew.exe............................................................................................ 19
3.4 Restrictions on the conversion .......................................................................................... 19

Section 4 Upgrading the Tool Chain ............................................................... 25


4.1 Setting the Standard Library Configuration Tool.............................................................. 25
4.2 Setting the Optimizing Linker........................................................................................... 25

Rev. 1.2, 09/00, page 2 of 27


Section 1 Notes on Using the HEW
This section shows notes on using the Hitachi Embedded Workshop (HEW) Version 1.2.

1.1 Notes on network drive issues

1.1.1 Time discrepancies between computers

The time kept by a computer differs between computers. The time when a source file or an
output file is updated differs depending on a computer. It may happen that building a project can
be incorrect because of difference of times kept by computers if a source file or a output file is
shared via network. If such problem occurs, build a project using [Build-> Build All].

1.1.2 Building a project on a network drive

When you build a project on the network an error might occur depending on the conditioin of the
network. For example, a C/C++ compiler might output the following error message

C3019(F) Cannot open source file

If such an error occurs, build the project again.

1.1.3 Adding a file to a project

When you add a file on a remote drive on the network via [Project-> Add Files…] or else, the
HEW might cause an application error depending on the condition of the network. In this case,
try to add the file to the project again. If application errors occur many times, consider copying
the file to a local drive then adding to the project.

1.2 Note on a race condition on accessing a file


Take care of accesses to a single file by multiple users if the file is shared via network or if more
than one instance of the HEW is invoked on a single computer. For example, if a configuration
of a project is build by more than one instance of the HEW, the generated files can be incorrect.

Rev. 1.2, 09/00, page 3 of 27


1.3 Note on adding an file extension to a project
When you specify a file extension on the “File extension” field of the “Define File Extension”
dialog box, use only alphanumerics and an underscore as characters of a file extension string.
The “Define File Extension” dialog box will be launched when the “Add…” button is clicked on
the File Extensions dialog box which is launched via [Project->File Extensions…].

1.4 Note on workspace name and project name


Use only alphanumerics and an underscore in a project/workspace name specified in the “Name”
field of the “New Project Workspace” dialog box or in a project name specified in the “Name”
field of the “Insert New Project” dialog box. Especially, do not use a minus sign, a space, or
Japanese characters

1.5 Notes on comments of the C/C++ language

1.5.1 Syntax coloring of the HEW editor

With the syntax coloring capability of the HEW, comments and keywords in a source program
file are colored. But the syntax coloring of the HEW editor does not work correctly depending on
the way the source code is written. Disable the syntax coloring if you are not satisfied with the
syntax coloring. To disable it, select [Tools->Options…], uncheck “Enable Syntax Coloring” on
the “Editor” tab of the “Tools Options” dialog box, and click the OK button.

Syntax colouring does not work correctly in the following cases:

Case 1. A comment is nested.

e.g. /* /* */ */ <-the underlined part is colored as comment

Case 2. “/*” or “*/” is placed in a string.

e.g. char A[]=“\”/*”; <-the underlined part is colored as comment


char B[]=“*/”; <-the underlined part is colored as comment

e.g. /* <-the underlined part is colored as comment


char A[]=“*/”; <-the underlined part is colored as comment
*/

Try to avoid using the * characters and the / characters placed adjacent to each other in a C/C++
source file unless you specify a comment.

Rev. 1.2, 09/00, page 4 of 27


1.5.2 File dependencies scanned by the HEW

The HEW scans an include file of a C/C++ source file to show dependencies of source files on
the “Projects” tab of the “Workspace” window and to decide whether to build a file or not. Even
though the source code is syntactically correct, it may happen that a scan error is detected; that
an include file which is not actually included might be shown as a dependent file; or that an
include file which is included might not be shown as a dependent file. In these cases, (a) build all
files by selecting [Build->Build All] or (b) select the source file in the “Projects” tab of the
“Workspace” window and select [Build->Build File].

Dependencies are not scanned correctly in the following cases:


Case 1. Preprocessor directive such as #if, #ifdef, or #define is used.

e.g. #if 0 <- the condition fails


#include “file.h” <- this file is scanned as include file incorrectly
#endif

e.g. #define ABC “inc.h”


#include ABC <- dependency scan error

Case 2. “/*” or “*/” is placed in a string.

e.g. char A[] = “/*”; <- assumed as beginning of comment incorrectly


#include “file.h” <- this file is not scanned as include file
char B[] = “*/”; <- assumed as end of comment incorrectly

1.6 Note on navigation to a definition of a C function


The HEW scans a definition of a C function in a C/C++ source file and display a tag of the
definition on the “Navigation” tab of the “Workspace” window so that double-clicking the tag
will navigate you to the line of the definition in a corresponding file. The HEW ignores
preprocessor directives when it searches a definition of a C function. For example, two
definitions of func() might be displayed on the “Navigation” tab of the “Workspace” window in
the following code.

#define DEF 1
#ifdef DEF
void func(void)
{
}
#else
int func(int a)
{
}

Rev. 1.2, 09/00, page 5 of 27


1.7 Note on file extensions of C++ source file
Basically, use cpp as a file extension of a C++ source file. You need to take care when you add a
new file extension to the C source file or C++ source file group via [Project-> File Extensions…].

cpp is a standard extension for the C++ source file group in the HEW while cpp, cp, and cc are
standard extensions for C++ source file in the C/C++ compiler of the Hitachi toolchain. If you
add cp or cc as a file extension to a file group, the file group must be the C++ source file group.
If cp or cc were added to the C source file group, a file with a file extension of cp or cc would be
compiled as a C++ source file instead of as a C source file. If you specify the “–lang=c” option
in the “User defined options” field of the “Other” tab of an option dialog box of the C/C++
compiler, a file will be compiled as a C source file regardless of its file extension.

If you add an extension other than cpp, cp, or cc to the C++ source file group, the HEW
regards a file with such an extension as C source file. For example, if cxx were added to the
C++ source file group, a file with the extension would be compiled as a C source file. If you
specify the “–lang=cpp” option in the “User defined options” field of the “Other” tab of an
option dialog box of a C/C++ compiler, a file will be compiled as a C++ source file regardless of
its file extension.

1.8 Note on use of a relative path on a option dialog box


Using the [Options] menu of the HEW, you can launch an option dialog box on which you can
specify options to a tool such as a compiler. Do NOT specify a relative path when you specify a
path on an option dialog box. Especially, when “Custom directory” is selected in the “Relative
to” field on a dialog box as shown in figure 1.8.1, do specify an absolute path in the “Directory”
field.

Figure 1.8.1 Dialog Box to Specify a Directory Path

Rev. 1.2, 09/00, page 6 of 27


1.9 Scope of a control in the Tools Customize dialog box
Scope of each control of each tab of the “Tools Customize” dialog box, which is launched via
[Tools-> Customize…], differs. Table 1.9.1 below shows the scope of each control on each tab
of the dialog box.

Table 1.9.1 Scope of a control in the Tools Customize dialog box

Tab Control Scope


Toolbar All The whole system
Command All The whole system
Menu All Each project
Debugger HDI location Each workspace
Session file Each project
Download module Each project
Log All Each workspace
Help All Each workspace

1.10 Scope of a control in the Tools Options dialog box


Scope of each control of each tab of the “Tools Options” dialog box, which is launched via
[Tools -> Options…], differs. Table 1.10.1 below shows the scope of each control on each tab of
the dialog box.

Table 1.10.1 Scope of a control in the Tools Options dialog box

Tab Control Scope


Build All The whole system
Editor All The whole system
Format Text categories: Each project
Colors: Each project
Text: The whole system
Workspace All The whole system

1.11 Note on the Format tab of the Tools Options dialog box
This is a note on the “Define Keywords” dialog box, which is launched when the “Add…”
button or the “Keywords…” button is clicked on the “Format” tab of the “Tools Options” dialog
box launched via [Tools->Options…]. On the “Keyword” field of the “Add Keyword” dialog
box launched by clicking the “Add…” button on the “Define Keywords” dialog box, specify a

Rev. 1.2, 09/00, page 7 of 27


keyword which consists of only alphanumerics, an underscore, and the # character. Especially,
do not use Japanese characters and other characters in a keyword.

1.12 Supplement to the Build tab of the Tools Options dialog box
This is a note on the “Stop build if no. of errors exceed” controls on the “Build” tab of the “Tools
Options” dialog box launched via [Tools-> Options…]. Note the following descriptions when
you check the check box and specify a number to the controls.

(1) “Stop build if no. of errors exceed” is not applied to a custom phase defined by a user. This
is applied only to system phases such as the C/C++ Compiler, the Assembler, the IM
OptLinker and the Stype Converter supplied from Hitachi.

(2) “no. of errors” in the statement means the number of errors output from an execution of a
tool. The total number of errors in more than one execution of a tool is irrelevant to “Stop
build if no. of errors exceed”. For example, the build stops when one execution of the
C/C++ Compiler outputs more than the number specified. If the number of errors output
from each compilation is no more than the specified number, the build does not stop even
though the total number of errors in more than one compilation exceeds the specified
number.

(3) The build stops after the whole phase is done. For example, suppose you compile more than
one file in a build. Even though the number of errors in the first compilation exceeds the
specified number, the HEW continues compilation of the other files and stops the build after
finishing the whole compiler phase.

(4) When the number of errors in one execution of a tool exceeds the specified number, the
number of error messages displayed on the “Output” window is the specified number plus
one. A message saying that the number of error has exceeded the specified number is NOT
displayed on the “Output” window.

The same things as “Stop build if no. of errors exceed” shown above hold also in “Stop build if
no. of warnings exceed”. There is no correlation between “Stop build if no. of errors exceed” and
“Stop build if no. of warnings exceed”. They are independent.

1.13 Note on opening a file which caused an error


This is a note when you double click an error/warning message of the C/C++ Compiler or the
Assembler on the “Output” window and open the corresponding line of the corresponding file. If
the corresponding file window, however, has been minimized in the editor window area, the file
is not opened on double clicking the error/warning message. In this case, restore the file window
or maximize it.

Rev. 1.2, 09/00, page 8 of 27


1.14 Note on tool uninstallation
If a file or a subdirectory which has not been installed exists in a directory to be uninstalled by
TUninst.EXE, it displays an error message shown in figure 1.14.1. In this case, click the
“Ignore” button and delete the file or subdirectory and the directory later.

Figure 1.14.1 Error Message from TUninst.EXE

1.15 Note on an old release of Windows® 95


If you use an old release of Windows® 95 (e.g. 4.00.950a), an application error occurs or an
option dialog will be corrupted as shown in figure 1.15.1 on your opening an option window of
the C/C++ Compiler, the Assembler or the OptLinker. This problem occurs if COMCTL32.DLL
in the System directory in the Windows directory is out of date. To avoid this problem, upgrade
Windows® 95.

Figure 1.15.1 Corrupted Option Window of the C/C++ Compiler

Rev. 1.2, 09/00, page 9 of 27


1.16 The Hitachi Embedded Workshop User’s Manual
Table 1.16.1 shows the errata of the Hitachi Embedded Workshop User’s Manual.

Table 1.16.1 Er rata of Hitachi Embedded Workshop User’s Manual

Page Changed part Change


All the title Icon of the HEW on the HEW title The icon is changed from to .
bar of bar
HEW
106 Uninstalling Components Change “ToolUninstaller.EXE” to
“TUninst.EXE”.
118 Figure 6.10 Workspace Properties Add a title, “Workspace Properties”, to
Dialog the title bar.

Rev. 1.2, 09/00, page 10 of 27


Section 2 Supplement on Hitachi Toolchain

2.1 File Extensions


When the HEW executes a tool of the Hitachi toolchains in a build, the HEW leaves a
subcommand file in a configuration directory. A subcommand file of the C/C++ Compiler or the
Assembler uses a file extension shown in table 2.1.1 with the same filename as the input file. the
C/C++ Library Generator or the OptLinker uses a file extension shown in table 2.1.1 with a
project name as a filename. The subcommand file has an attribute of a hidden file. If you want to
see a hidden file, change the properties of a directory window so that it can display hidden files.

Table 2.1.1 File Extensions of Subcommand Files of the Hitachi Toolchains

File File group Remark


extension
SHG Hitachi SuperH RISC engine C/C++ Library
Generator

SHC Hitachi SuperH RISC engine C/C++ Compiler

SHA Hitachi SuperH RISC engine Assembler

H8G Hitachi H8S,H8/300 C/C++ Library Generator

H8C Hitachi H8S,H8/300 C/C++ Compiler

H8A Hitachi H8S,H8/300 Assembler

HLK Hitachi OptLinker

Rev. 1.2, 09/00, page 11 of 27


Section 3 HIM to HEW Project Conveter
In this section, how to convert a project of the Hitachi Integration Manager (HIM) into a
workspace and a project of the HEW using HimToHew.exe is described. The following explains
the usage of HimToHew.exe, a converter to convert a project created by Hitachi Integration
Manager (HIM) to a workspace and a project of HEW. HimToHew.exe converts a project to the
HEW workspace for the SuperH RISC engine C/C++ Compiler Ver. 5.1x tool chain or the H8S,
H8/300 C/C++ Compiler Ver. 3.0x tool chain. The converted HEW work space can be
converted to another HEW workspace for the SuperH RISC engine C/C++ Compiler Ver. 6.0
tool chain or the H8S, H8/300 C/C++ Compiler Ver. 4.0 tool chain at workspace open or with
[Tools -> Upgrade...] in the HEW.

3.1 Invoking HimToHew.exe


You have two ways in invoking the HIM to HEW Project Converter, HimToHew.exe.

(1) Open the “Start” menu of Windows®, select “Program”, select “Hitachi Embedded
Workshop” and select “HIM to HEW Project Converter”.

(2) Double click HimToHew.exe which is installed in the same directory as HEW.EXE.

3.2 Project conversion


HimToHew.exe has two tabs, “Single” and “Multiple”. Select the “Single” tab (figure 3.2.1.1) to
convert one HIM project into a HEW workspace and a HEW project. Usually, choose the
“Single” tab. But if you want to convert more than one project under a directory into HEW
projects and put them in a HEW workspace, select the “Multiple” tab (figure 3.2.2.1). Especially,
if you want to convert HIM projects of HIOS into a HEW workspace and projects, choose the
“Multiple” tab.

Rev. 1.2, 09/00, page 12 of 27


3.2.1 Single tab

This section will describe how to convert a single HIM project into a HEW workspace and
a HEW project using the “Single” tab (figure 3.2.1.1)

Figure 3.2.1.1 HIM to HEW Project Converter, Single Tab

(1) In the “HIM Project filename” field, specify a path of a HIM project database file, whose file
extension is “*.him”. You have two ways to specify the path. One is to type the path
manually into the “HIM Project filename” field. The other is to use the “Browse…” button.
When you click the “Browse…” button, the “Select project filename” dialog box (figure
3.2.1.2) will be displayed. Open the directory in which a HIM project database file exists, and
double click the project database file or select the file and click the “Select” button.

Rev. 1.2, 09/00, page 13 of 27


Figure 3.2.1.2 “Select project name” Dialog Box

(2) In the “HEW workspace name” field on the “Single” tab, specify a workspace name. Use
only alphanumerics or an underscore (‘_’) in a workspace name.

(3) Click the “Convert” button, then conversion will start. The “Total complete” meter shows the
progress of the conversion. When the conversion finishes, “Project converted successfully”
will be shown in the “Results” field (figure 3.2.1.3).

Rev. 1.2, 09/00, page 14 of 27


Figure 3.2.13 HIM to HEW Project Converter, Single Tab (After Conversion)

HimToHew.exe will create a HEW workspace file whose directory path is the same as the file
specified in the “HEW Project filename” field, whose file name is the name specified in the
“HEW workspace name” field, and whose file extension is “*.hws”. Also HimToHew.exe
creates a HEW project database file which has the same file path as the HIM project database file
except that the extension is changed from “*.him” to “*.hws”.

Rev. 1.2, 09/00, page 15 of 27


3.2.2 Multiple tab

This section will describe how to use the “Multiple” tab (figure 3.2.2.1). Using the “Multiple”
tab, you can convert multiple HIM projects in a directory and in its subdirectories into HEW
projects at a time and register them into a HEW workspace.

Figure 3.2.2.1 HIM to HEW Project Converter, Multiple Tab

(1) In the “Workspace directory” field, specify a directory path under which one or more HIM
project database files (“*.him”) exist. When you choose the directory, note that all the HIM
project database files in this directory and its subdirectories will be converted at a time and
will be registered to a HEW workspace.
You have two ways to specify the directory path. One is to type the directory path manually
into the “Workspace directory” field. The other is to use the “Browse…” button. When you
click the “Browse…” button, the “Select workspace directory” dialog box (figure 3.2.2.2)

Rev. 1.2, 09/00, page 16 of 27


will be displayed. On this dialog box, open a directory and click the “Select” button, then the
opened directory path will be input to the “Workspace directory” field.

Figure 3.2.2.2 Select Workspace Directory Dialog Box

(2) In the “HEW workspace name” field on the “Multiple” tab, specify a workspace name. Use
only alphanumerics or an underscore (‘_’) in a workspace name.

(3) In the “CPU family” field, select a CPU family of the projects to be converted. Select one of
“SuperH RISC engine” or “H8S,H8/300” from the drop-down list.

(4) Click the “Convert” button, then the conversion will start. The “Current project” meter shows
the progress of conversion of a current project database file. “Total complete” meter shows
the overall progress of the conversion. The “Status” field shows a temporary status of the
conversion. The “Results” field shows a HIM project database file being converted. When
the conversion finishes, “XX project(s) converted successfully” will be displayed in the
“Results” field (figure 3.2.2.3).

Rev. 1.2, 09/00, page 17 of 27


Figure 3.2.2.3 HIM to HEW Project Converter, Multiple Tab (After Conversion)

HimToHew.exe will create a HEW workspace file whose directory path is the directory path file
specified in the “Workspace directory” field, whose file name is the name in the “HEW
workspace name” field, and whose file extension is “*.hws”. Also HimToHew.exe creates a
HEW project database file which has the same file path as each HIM project database file except
that the extension is changed from “*.him” to “*.hws”.

Rev. 1.2, 09/00, page 18 of 27


3.3 Exiting from HimToHew.exe
To exit from HimToHew.exe, click the close button or click the cancel button located at the
upper left corner of the title bar.

3.4 Restrictions on the conversion


Note the following restrictions on converting HIM projects into HEW workspaces and HEW
projects.

(1) External tools shown on the HIM toolbar will not be converted into the HEW.

(2) A build phase which is not shown on the “Build Order” tab of the “Phase Order” dialog box
of the HIM project builder will not be converted into the HEW. To launch the “Phase Order”
dialog box, select [Options->Build Phases…] on the HIM project builder and click the
“Phase Order…” button on the “Build Phases” dialog box.

(3) The output filename is unchangeable in the HEW. The filename here means a filename
excluding a directory path and a file extension. In the HIM, you can change a filename. In
HEW, however, you cannot change a filename. In table 3.4.1, output file groups whose
filenames are unchangeable by a user are shown.

Rev. 1.2, 09/00, page 19 of 27


Table 3.4.1 Output files whose filenames are unchangeable in the HEW

Phase name in the HEW Output file group Filename after


conversion
SH C/C++ Compiler Object file $(FILELEAF)
Preprocessed C source file $(FILELEAF)
Preprocessed C++ source file $(FILELEAF)
C list file $(FILELEAF)
C++ list file $(FILELEAF)
H8S,H8/300 C/C++ Compiler Object file $(FILELEAF)
Preprocessed C source file $(FILELEAF)
Preprocessed C++ source file $(FILELEAF)
C list file $(FILELEAF)
C++ list file $(FILELEAF)
SH Assembler Object file $(FILELEAF)
Assembly list file $(FILELEAF)
Expanded assembly source file $(FILELEAF)
H8S,H8/300 Assembler Object file $(FILELEAF)
Assembly list file $(FILELEAF)
Expanded assembly source file $(FILELEAF)
SH IM OptLinker Absolute file $(PROJECTNAME)
Relocatable file $(PROJECTNAME)
Linkage map file $(PROJECTNAME)
Linkage symbol file $(PROJECTNAME)
H8S,H8/300 IM OptLinker Absolute file $(PROJECTNAME)
Relocatable file $(PROJECTNAME)
Linkage map file $(PROJECTNAME)
Linkage symbol file $(PROJECTNAME)
H Series Librarian Library file $(PROJECTNAME)
Library list file $(PROJECTNAME)
Library section file $(PROJECTNAME)
H Series Stype Converter S-Record file $(PROJECTNAME)

(4) Furthermore, the output directory of some files will be fixed to $(CONFIGDIR) after
conversion into the HEW. In table 3.4.2, output file groups whose output directories are
unchangeable by a user are shown.

Rev. 1.2, 09/00, page 20 of 27


Table 3.4.2 Output files whose output directory are unchangeable in the HEW

Phase name in the HEW Output file group Output directory


after conversion
SH C/C++ Compiler C list file $(CONFIGDIR)
C++ list file $(CONFIGDIR)
H8S,H8/300 C/C++ Compiler C list file $(CONFIGDIR)
C++ list file $(CONFIGDIR)
SH Assembler Assembly list file $(CONFIGDIR)
H8S,H8/300 Assembler Assembly list file $(CONFIGDIR)
SH IM OptLinker Linkage map file $(CONFIGDIR)
H8S,H8/300 IM OptLinker Linkage map file $(CONFIGDIR)
H Series Librarian Library list file $(CONFIGDIR)
Library section file $(CONFIGDIR)

(5) You have a restriction regarding the “-speed=inline” option of H8S,H8/300 C Compiler
Version 2.x in the HIM. In this version of the compiler, you can not specify a number to the
“inline” sub-option. In version 3.0 or greater, however, you can do so. When options of
version 2.x of H8S,H8/300 C Compiler of the HIM are converted to those of version 3.0A of
H8S,H8/300 C/C++ Compiler of the HEW, the “speed=inline” options will be converted as
shown in table 3.4.3.

Table 3.4.3 Conversion of –speed=inline option from ver. 2.x of H8S,H8/300 C Compiler

HIM HEW
H8S,H8/300 C Compiler option window H8S,H8/300 C/C++ Compiler option window
Optimize tab Optimize tab
Speed Sub-options group Speed sub-options group
Inline Expansion check box Maximum nodes of inline function
checked 105
unchecked 0 (same as without –speed=inline)

(6) You will have a restriction regarding the “-optimize” option of the H8S,H8/300 Inter-Module
Optimizer. On the “Optimize” tab of SH IM OptLinker in the HEW, selecting “All” from the
“Optimize” drop-down list has the same result as selecting “Customize” from the drop-down
list and checking all the sub-options. But graphical representations of the selections are
different. In H8S,H8/300 IM Optimizer Ver. 1.x in the HIM, the “Optimize” tab does not
have a drop-down list as the HEW does, and sub-options are specified only though check
boxes. If all the sub-options are checked in H8S,H8/300 IM Optimizer Ver. 1.x, they will be
converted into “All” in HEW. The same conversion method holds in the “Safe” and “Speed”
options.

Rev. 1.2, 09/00, page 21 of 27


(7) This is a note about an output file of a custom build phase (hereafter, custom phase). In a
HIM project, if the two conditions (a) and (b) below are satisfied simultaneously, an output
file from a custom phase defined by a user will be input to SH IM OptLinker, H8S,H8/300
IM Optimizer or H Series Linkage Editor automatically in build.

(a) The custom phase is a multiple phase;


(b) An output file path is specified on the “Output Files” tab on the option dialog box
of the custom phase. And the file extension of the output file is OBJ, REL or LIB.

After you convert the HIM project into the HEW, the output file from the custom phase will
not be input to SH IM OptLinker or H8S,H8/300 IM OptLinker automatically. To solve this
problem, add a file mapping to a HEW project in the way shown below.

How to add a file mapping:


Open the “Build Phases” dialog box via [Options->Build Phases…] on the HEW. Select the
“File Mappings” tab on this dialog box and click the “Add…” button. Then the “Define File
Mapping” dialog box will be displayed. On this dialog box, specify the following in the three
fields.

File group:
“Object file” (if OBJ is an extension of an output file of the custom phase.)
“Relocatable file” (if REL is an extension of an output file of the custom phase.)
“Library file” (if LIB is an extension of an output file of the custom phase.)
Source phase:
The name of the custom phase
Destination phase:
SH IM OptLinker or H8S,H8/300 IM OptLinker

For example, suppose you have added a file group, “aaa source file”, to a HIM project and
have defined a multiple phase “aaa phase”, which takes the “aaa source file” file group as
input, as a custom phase in the project. Also suppose that you have specified a file path,
whose file extension is OBJ, on the “Output Files” tab of the “aaa phase Options” dialog box
via [Options->aaa phase]. After you convert this HIM project into the HEW, define a file
mapping as shown in figure 3.4.1 on the “Define File Mapping” dialog box. Thus an OBJ file
generated from the “aaa phase” will be input to SH IM OptLinker or H8S,H8/300 IM
OptLinker automatically in build.

Rev. 1.2, 09/00, page 22 of 27


Figure 3.4.1 Definition of a File Mapping (example)

(8) A HIM project cannot be converted into the HEW if a user has added to the project an
extension which is the same as an extension already defined in the HEW and the file group
the extension belongs to differs from the file group of the extension in the HEW. In this case,
open the project with the HIM, remove that extension from the HIM project, and then convert
the project into the HEW again.

For example, assume that, to a HIM project, a user has added an extension, “INC”, in a
“ASM header file” file group, which is defined by a user. In the HEW, the extension, “INC”,
is defined as an extension in the “Assembly include file” file group instead of the “ASM
header file” file group. When you convert the HIM project into the HEW with
HimToHew.exe, an error message shown in figure 3.4.2 will be displayed. In this case, open
the HIM project with the HIM and remove the extension, “INC”, from the project. Then
convert it into the HEW again.

For another example, assume that, to a HIM project, a user has added an extension, “INC”,
in the “Assembly source file” file group, which is already defined by the HEW. But in the
HEW, the extension, “INC”, is defined as an extension in the “Assembly include file” file
group instead of the “Assembly include file” file group. When you convert the HIM project
into the HEW with HimToHew.exe, an error message shown in figure 3.4.3 will be displayed.
In this case, open the HIM project with the HIM and remove the extension, “INC”, from the
project. Then convert it into the HEW again.

Rev. 1.2, 09/00, page 23 of 27


Figure 3.4.2 Error during conversion from HIM to HEW (1)

Figure 3.4.3 Error during conversion from HIM to HEW (2)

(9) If you have added a custom phase whose input file group is the “Preprocessed C Source file”
or “Preprocessed C++ Source file” file group of the HIM to a HIM project, you need to
modify the project after conversion into the HEW. You need to remove that custom phase
from the HEW project. Then add the phase again as a custom phase whose input file group is
“Preprocessed C source file” or “Preprocessed C++ source file” if necessary.

(10) If you have added a file group whose name is the same as one of file groups shown in
table 2.2.1, “Standard File Extensions of the Hitachi Toolchains” EXCEPT for the cases of
the letters, you need to modify the project converted into the HEW. You need to remove all
the file extensions of that file group from the converted HEW project. (To do so, you might
need to remove a custom phase whose input file group is that file group and a project file in
that file group.) Then reconstruct your settings if necessary.

Rev. 1.2, 09/00, page 24 of 27


Section 4 Upgrading the Tool Chain
When the SuperH RISC engine C/C++ Compiler Ver. 5.1x tool chain is upgraded to
Ver. 6.0 or H8S, H8/300 C/C++ Compiler Ver. 3.0x tool chain to Ver. 4.0, the
configuration of the build phase or an option of a part of tools will be converted.

4.1 Setting the Standard Library Configuration Tool


A standard library configuration tool was newly added. The HEW checks the optional
information on the IM Optlnker at upgrade. When there is a specification to enter the
standard library, an option that generates a library is set (Mode -> Build a library file),
and when there is no specification, an option that does not generate a library is set
(Mode -> Do not add a library file).

4.2 Setting the Optimizing Linker


The IM Optlnker, Librarian, and Stype Converter were integrated and became
OptLinker. According to the registered states of each tool before upgrade, the optional
setting of OptLinker differs after upgrade. Table 4.1.1 shows the succession of the
option at upgrade.

Rev. 1.2, 09/00, page 25 of 27


Table 4.1.1 Succession of Option at Upgrade

Before Upgrade After Upgrade

Stype IM OptLinker Librarian Stype Converter


No.
IM OptLinker Librarian Converter Optlnker
state optional Optional optional
state state state information information information

1 ― X X X

2 X X O

3 ■ ■ X X O

4 X O X

5 X O X

6 ■ ■ X X O

7 ■ ■ X O X

8 ■ ■ X O X

9 ■ ■ ■ X O X

10 O X X

11 O X O

12 ■ ■ X X O

13 O X X

14 O X O

15 ■ ■ X X O

16 ■ ■ X O X

17 ■ ■ X O X

18 ■ ■ ■ X O X

19 ■ ■ O X X

Rev. 1.2, 09/00, page 26 of 27


20 ■ ■ O X X

21 ■ ■ ■ O X O

22 ■ ■ O X X

23 ■ ■ O X X

24 ■ ■ ■ O X O

25 ■ ■ ■ O X X

26 ■ ■ ■ O X X

27 ■ ■ ■ ■ O X O

: Unregistered, : Registration not checked, : Registration checked, O: Succeeded, X:


Not succeeded

Rev. 1.2, 09/00, page 27 of 27

You might also like