[Compile Options] tab


This tab shows the detailed information on the compile phase categorized by the following and the configuration can be changed.

 

(1) [Debug Information]

(2) [Optimization]

(3) [Optimization(Details)]

(4) [Preprocess]

(5) [Quality Improvement]

(6) [Memory Model]

(7) [C Language]

(8) [Character Encoding]

(9) [Output Code]

(10) [Output File]

(11) [Assemble List]

(12) [MISRA-C Rule Check]

(13) [Others]

Figure A.3

Property Panel: [Compile Options] Tab

[Description of each category]

(1)

[Debug Information]

The detailed information on debug information is displayed and the configuration can be changed.

Add debug information

Select whether to generate the debug information.

It is possible to perform source debugging with the debugger by outputting information for source debugging to the output file.

This corresponds to the -g option of the ccrl command.

Default

Yes(-g)

How to change

Select from the drop-down list.

Restriction

Yes(-g)

Generates the debug information.

No

Does not generate the debug information.

Enhance debug information with optimization

Select whether to enhance debug information at optimization.

This corresponds to the -g_line option of the ccrl command.

This property is displayed in the following cases.

-

When [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.02.00 or higher or when V1.02.00 or higher is selected in the [Using compiler package version] property

-

When [Yes(-g)] in the [Add debug information] property is selected

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-g_line)

Enhances debug information at optimization.

No

Does not enhance debug information at optimization.

(2)

[Optimization]

The detailed information on the optimization is displayed and the configuration can be changed.

Level of optimization

Select the level of the optimization for compiling.

This corresponds to the -O option of the ccrl command.

Default

Perform the default optimization(None)

How to change

Select from the drop-down list.

Restriction

Perform the default optimization(None)

Performs optimization that debugging is not affected (optimization of expressions and register allocation, and the like).

Code size precedence(-Osize)

Performs optimization with the object size precedence.

Regards reducing the ROM/RAM usage as important and performs the maximum optimization that is effective for general programs.

Speed precedence(-Ospeed)

Performs optimization with the execution speed precedence.

Regards shortening the execution speed as important and performs the maximum optimization that is effective for general programs.

Debug precedence(-Onothing)

Performs optimization with the debug precedence.

Regards debugging as important and suppresses all optimization including default optimization.

(3)

[Optimization(Details)]

The detailed information on the optimization is displayed and the configuration can be changed.

Maximum number of loop expansions

Specify the maximum number of times to expand the loops such as "for" and "while".

If 0 or 1 is specified, expansion is suppressed.

If this is blank, it is assumed that "2" has been specified.

This corresponds to the -Ounroll option of the ccrl command.

This property is displayed only when [Perform the default optimization(None)], [Code size precedence(-Osize)] or [Speed precedence(-Ospeed)] in the [Level of optimization] property is selected.

Default

Blank

How to change

Directly enter in the text box.

Restriction

0 to 999 (decimal number) or blank

Remove unused static functions

Select whether to remove the static functions which are not called.

This corresponds to the -Odelete_static_func option of the ccrl command.

Default

Yes(To adjust the level of optimization)(None)

How to change

Select from the drop-down list.

Restriction

Yes(To adjust the level of optimization)(None)

Performs optimization according to the [Level of optimization] property.

Yes(-Odelete_static_func)

Removes the unused static functions which are not called.

No(-Odelete_static_func=off)

Does not remove the unused static functions which are not called.

Perform inline expansion

Specify whether to perform inline expansion at the location calling functions.

This corresponds to the -Oinline_level option of the ccrl command.

This property is displayed only when [Perform the default optimization(None)], [Code size precedence(-Osize)] or [Speed precedence(-Ospeed)] in the [Level of optimization] property is selected.

Default

Yes(To adjust the level of optimization)(None)

How to change

Select from the drop-down list.

Restriction

Yes(To adjust the level of optimization)(None)

Performs optimization according to the [Level of optimization] property.

Yes(Only specified functions)(-Oinline_level=1)

Performs inline expansion at the location calling the function for which #pragma inline is specified.

Yes(Auto-detect)(-Oinline_level=2)

Distinguishes the function that is the target of inline expansion automatically and expands it.

Yes(Auto-detect without code size increase)(-Oinline_level=3)

Distinguishes the function that is the target of inline expansion automatically and expands it, while minimizing the increase in code size.

No(-Oinline_level=0)

Suppresses all inline expansion including the function for which "#pragma inline" is specified.

Maximum increasing rate of inline expansion size

Specify the maximum increasing rate (%) of the code size up to which inline expansion is performed. (Example: When "100" is specified, inline expansion will be applied until the code size increases by 100% (becomes twice the initial size).)

This corresponds to the -Oinline_size option of the ccrl command.

This property is displayed only when [Yes(Auto-detect)(-Oinline=2)] in the [Perform inline expansion] property is selected, or when [Yes(To adjust the level of optimization)] in the [Perform inline expansion] property and [Speed precedence(-Ospeed)] in the [Optimization Level] property are selected.

Default

100

How to change

Directly enter in the text box.

Restriction

0 to 65535 (decimal number)

Perform pipeline optimization

Select whether to improve the program's execution performance by reordering instructions at the machine-language level.

This corresponds to the -Opipeline option of the ccrl command.

This property is displayed when [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.03.00 or higher or when V1.03.00 or higher is selected in the [Using compiler package version] property.

Default

Yes(To adjust the level of optimization)(None)

How to change

Select from the drop-down list.

Restriction

Yes(To adjust the level of optimization)(None)

Performs optimization according to the [Level of optimization] property.

Yes(-Opipeline)

Performs pipeline optimization.

No(-Opipeline=off)

Does not perform pipeline optimization.

Use br instruction to call a function at the end of the function

Select whether to give precedence to using br instructions in the place of call instructions when the function ends with a function call.

This corresponds to the -Otail_call option of the ccrl command.

Default

Yes(To adjust the level of optimization)(None)

How to change

Select from the drop-down list.

Restriction

Yes(To adjust the level of optimization)(None)

Performs optimization according to the [Level of optimization] property.

Yes(-Otail_call)

Gives precedence to using br instructions in the place of call instructions when the function ends with a function call.

The code size can be reduced by removing the ret instruction.

However, some debug functions cannot be used.

No(-Otail_call=off)

Uses call instructions when the function ends with a function call.

Perform inter-module optimization

Specify the level of inter-module optimization (such as function merging).

Only [Yes(Level 1)(Perform)(-Xintermodule)] and [No] are displayed when [No] in the [Build simultaneously] property in the [Build Method] category from the [Common Options] tab is selected.

This corresponds to the -Owhole_program, -Omerge_files, and -Ointermodule options of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(Level 3)(Perform with assuming it the whole program)(-Owhole_program)

Performs inter-module optimization assuming that the source files comprise the entire program.

However, operation is not guaranteed if the preconditions are not met.

See "CC-RL Compiler User’s Manual" for details about the preconditions.

Yes(Level 2)(Perform with merging files)(-Omerge_files, -Ointermodule)

Merges two or more C source files and performs inter-module optimization.

This item is displayed only when two or more source files are added to the project.

Yes(Level 1)(Perform)(-Ointermodule)

Performs inter-module optimization for each file.

No

Does not perform inter-module optimization.

Perform optimization considering type of data indicated by pointer

Select whether to perform optimization with consideration for the type of the data indicated by the pointer, based on the ANSI standard.

This corresponds to the -Oalias option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-Oalias=ansi)

Performs optimization with consideration for the type of the data indicated by the pointer.

In general, this option improves the object performance, but the execution result may differ from the case when [No] is selected.

No

Does not perform optimization with consideration for the type of the data indicated by the pointer.

Create subroutine for same instruction sequence

Select whether to create a subroutine for the same instruction sequence.

This corresponds to the -Osame_code option of the ccrl command.

This property is displayed in the following cases.

-

When [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.02.00 or higher or when V1.02.00 or higher is selected in the [Using compiler package version] property

-

When [Perform the default optimization(None)], [Code size precedence(-Osize)] or [Speed precedence(-Ospeed)] in the [Level of optimization] property is selected

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-Osame_code)

Creates a subroutine for the same instruction sequence.

No

Does not create a subroutine for the same instruction sequence.

Outputs additional information for inter-module optimization

Select whether to output additional information for inter-module optimization.

At linkage, inter-module optimization is applied to files for which this option has been specified.

This corresponds to the -goptimize option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-goptimize)

Outputs additional information for inter-module optimization.

No

Does not outputs additional information for inter-module optimization.

(4)

[Preprocess]

The detailed information on preprocessing is displayed and the configuration can be changed.

Additional include paths

Specify the additional include paths during compiling.

The following placeholders are supported.

%ActiveProjectDir%: Replaces with the absolute path of the active project folder.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%MainProjectDir%: Replaces with the absolute path of the main project folder.

%MainProjectName%: Replaces with the main project name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%ProjectDir%: Replaces with the absolute path of the project folder.

%ProjectName%: Replaces with the project name.

%TempDir%: Replaces with the absolute path of the temporary folder.

%WinDir%: Replaces with the absolute path of the Windows system folder.

The specified include path is searched with higher priority than the standard include file folder of CC-RL.

The reference point of the path is the project folder.

When this property is omitted, only the standard folder of CC-RL is searched.

This corresponds to the -I option of the ccrl command.

The specified include path is displayed as the subproperty.

When the include path is added to the project tree, the path is added to the top of the subproperties.

Uppercase characters and lowercase characters are not distinguished for the include paths.

Default

Additional include paths[number of defined items]

How to change

Edit by the Path Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 247 characters

Up to 256 items can be specified.

System include paths

Change the specified order of the include paths which the system set during compiling.

The following placeholders are supported.

%ActiveProjectDir%: Replaces with the absolute path of the active project folder.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%MainProjectDir%: Replaces with the absolute path of the main project folder.

%MainProjectName%: Replaces with the main project name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%ProjectDir%: Replaces with the absolute path of the project folder.

%ProjectName%: Replaces with the project name.

%TempDir%: Replaces with the absolute path of the temporary folder.

%WinDir%: Replaces with the absolute path of the Windows system folder.

The system include path is searched with lower priority than the additional include path.

The reference point of the path is the project folder.

This corresponds to the -I option of the ccrl command.

The include path is displayed as the subproperty.

Default

System include paths[number of defined items]

How to change

Edit by the System Include Path Order dialog box which appears when clicking the [...] button.

Restriction

Changes not allowed (Only the specified order of the include paths can be changed.)

Include files at head of compiling units

Specify the file that is included at the top of the compilation unit.

The following placeholders are supported.

%ActiveProjectDir%: Replaces with the absolute path of the active project folder.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%MainProjectDir%: Replaces with the absolute path of the main project folder.

%MainProjectName%: Replaces with the main project name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%ProjectDir%: Replaces with the absolute path of the project folder.

%ProjectName%: Replaces with the project name.

%TempDir%: Replaces with the absolute path of the temporary folder.

%WinDir%: Replaces with the absolute path of the Windows system folder.

The reference point of the path is the project folder.

This corresponds to the -preinclude option of the ccrl command.

The specified include file name is displayed as the subproperty.

Default

Include files at head of compiling units[number of defined items]

How to change

Edit by the Text Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 247 characters

Up to 256 items can be specified.

Macro definition

Specify the name of the macro to be defined.

Specify in the format of "macro name=defined value", with one macro name per line.

The "=defined value" part can be omitted, and in this case, "1" is used as the defined value.

This corresponds to the -D option of the ccrl command.

The specified macro is displayed as the subproperty.

Default

Macro definition[number of defined items]

How to change

Edit by the Text Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 256 characters

Up to 256 items can be specified.

Macro undefinition

Specify the macro name to be undefined.

Specify in the format of "macro name", with one macro name per line.

This corresponds to the -U option of the ccrl command.

The specified macro is displayed as the subproperty.

Default

Macro undefinition[number of defined items]

How to change

Edit by the Text Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 256 characters

Up to 256 items can be specified.

Output C source comments to preprocessed file

Select whether to output the comments of the C source to the preprocessed file.

This corresponds to the -preprocess option of the ccrl command.

This property is displayed only when [Yes(-P)] in the [Output preprocessed source file] property in the [Output File] category is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-preprocess=comment)

Outputs the comments of the C source to the preprocessed file.

No

Does not output the comments of the C source to the preprocessed file.

Output line number information to preprocessed file

Select whether to output the line number information of the C source to the preprocessed file.

This corresponds to the -preprocess option of the ccrl command.

This property is displayed only when [Yes(-P)] in the [Output preprocessed source file] property in the [Output File] category is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-preprocess=line)

Outputs the line number information of the C source to the preprocessed file.

No

Does not output the line number information of the C source to the preprocessed file.

(5)

[Quality Improvement]

The detailed information on the quality improvement is displayed and the configuration can be changed.

Detect stack smashing

Select whether to detect the stack smashing.

This property is usable only in the Professional Edition.

Detection of stack smashing is a feature for writing a value outside the valid stack area before entering a function and checking whether that value is rewritten before exiting the function. Upon detection, the user-defined __stack_chk_fail() function is called.

See "CC-RL Compiler User's Manual" about the difference between [Yes(-stack_protector)] and [Yes(All)(-stack_protector_all)].

This corresponds to the -stack_protector and -stack_protector_all options of the ccrl command.

This property is displayed when [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.02.00 or higher or when V1.02.00 or higher is selected in the [Using compiler package version] property.

Default

No(None)

How to change

Select from the drop-down list.

Restriction

Yes(-stack_protector)

Detects the stack smashing.

Yes(All)(-stack_protector_all)

Detects the stack smashing for all functions.

No(None)

Does not detect the stack smashing.

Value to be embedded for detecting stack smashing

Specify the value to be embedded for detecting the stack smashing.

This property is usable only in the Professional Edition.

This corresponds to the -stack_protector and -stack_protector_all options of the ccrl command.

This property is displayed in the following cases.

-

When [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.02.00 or higher or when V1.02.00 or higher is selected in the [Using compiler package version] property

-

When other than [No(None)] in the [Detect stack smashing] property is selected

Default

Blank

How to change

Directly enter in the text box.

Restriction

0 to 65535 (decimal number)

(6)

[Memory Model]

The detailed information on the memory model is displayed and the configuration can be changed.

Memory model

Specify the type of memory model.

This corresponds to the -memory_model option of the ccrl command.

Default

Auto(None)

How to change

Select from the drop-down list.

Restriction

Auto(None)

Automatically interprets the value of the [Specify CPU core] property in the [CPU] category in the [Common Options] tab (small when -cpu=S1 is selected, medium when -cpu=S2 or -cpu=S3 is selected).

Small model(-memory_model=small)

Specifies the small model(Code 64 K bytes/Data 64 K bytes) as the memory model.

Medium model(-memory_model=medium)

Specifies the medium model(Code 1 M bytes/Data 64 K bytes) as the memory model.

Locate ROM data to far area

Specify the allocation destination of ROM data.

This corresponds to the -far_rom option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

No

Allocates ROM data depending on the value of the [Memory Model] property.

Yes(-far_rom)

Allocates ROM data to the far area.

(7)

[C Language]

The detailed information on C language is displayed and the configuration can be changed.

Compile strictly according to ANSI standards

Select whether to process as making C source program comply strictly with the ANSI standard and output an error or warning for a specification that violates the standard.

This corresponds to the -ansi option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-ansi)

Processes as making C source program comply strictly with the ANSI standard and outputs an error or warning for a specification that violates the standard.

No

Compatibility with the conventional C language specifications is conferred and processing continues after warning is output.

Check function without prototype declaration

Select whether to generate an error when using a function whose prototype declaration was not made in advance or a function without a prototype declaration.

This corresponds to the -refs_without_declaration option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-refs_without_declaration)

Checks functions without prototype declarations.

No

Does not check functions without prototype declarations.

Set 0xffff bytes to maximum variable size

Select whether to increase the maximum variable size from 0x7fff to 0xffff.

This corresponds to the -large_variable option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-large_variable)

Increases the maximum variable size.

No

Does not increase the maximum variable size.

Allow nested comments

Select whether to allow the nest use of comments ("/* ... */").

This corresponds to the -nest_comment option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-nest_comment)

Allows the nest use of comments.

No

Does not allow the nest use of comments.

(8)

[Character Encoding]

The detailed information on character encoding is displayed and the configuration can be changed.

Character encoding

Select the character code to be used for Japanese/Chinese comments and character strings in the source file.

This corresponds to the -character_set option of the ccrl command.

Default

Auto(None)

How to change

Select from the drop-down list.

Restriction

Auto(None)

Interprets the Japanese character code in the source file as SJIS on Japanese OS.

On other than Japanese OS, does not interpret the character code in the source file.

SJIS(-character_set=sjis)

Interprets the Japanese character code in the source file as SJIS.

EUC(-character_set=euc_jp)

Interprets the Japanese character code in the source file as EUC.

UTF-8(-character_set=utf8)

Interprets the Japanese character code in the source file as UTF-8.

Big5(-character_set=big5)

Interprets the Chinese character code in the source file as Traditional Chinese.

GBK(-character_set=gbk)

Interprets the Chinese character code in the source file as Simplified Chinese.

No-process(-character_set=none)

Does not interpret the Japanese/Chinese character code in the source file.

(9)

[Output Code]

The detailed information on output codes is displayed and the configuration can be changed.

Process double type / long double type as float type

Select whether to handle the double or long double type as the float type.

This corresponds to the -dbl_size option of the ccrl command.

Default

Yes

How to change

Select from the drop-down list.

Restriction

Yes

Processes the double or long double type as the float type.

No(-dbl_size=8)

Does not process the double or long double type as the float type.

Sign of the char type

Select sign of the char type with no sign specification.

This corresponds to the -signed_char option of the ccrl command.

Default

Handles as unsigned char(None)

How to change

Select from the drop-down list.

Restriction

Handles as signed char(-signed_char)

Handles the char type as signed char.

Handles as unsigned char(None)

Handles the char type as unsigned char.

Sign of the bit-field type

Select sign of the bit-field type with no sign specification.

This corresponds to the -signed_bitfield option of the ccrl command.

Default

Handles as unsigned(None)

How to change

Select from the drop-down list.

Restriction

Handles as signed(-signed_bitfield)

Handles the bit-field type as signed.

Handles as unsigned(None)

Handles the bit-field type as unsigned.

Structure packing

Select whether to perform structure packing.

This corresponds to the -pack option of the ccrl command.

This property is displayed when [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.01.00 or higher or when V1.01.00 or higher is selected in the [Using compiler package version] property.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-pack)

Performs alignment of members in a structure in 1-byte units instead of performing alignment according to the member type.

No

Performs alignment of members in a structure according to the member type.

Handle external variables as if they are volatile qualified

Select whether to handle all external variables and variables specified with #pragma address as if they are volatile qualified.

This corresponds to the -volatile option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-volatile)

Handles all external variables and variables specified with #pragma address as if they are volatile qualified.

No

Optimizes external variables that are not volatile qualified.

Output code of switch statement

Select the code output mode for switch statements in programs.

This corresponds to the -switch option of the ccrl command.

Default

Auto(None)

How to change

Select from the drop-down list.

Restriction

Auto(None)

The ccrl selects the optimum output format.

if-else(-switch=ifelse)

Outputs the switch statements in the same format as the if-else statement along a string of case statements in programs.

Select this item if the case statements are written in the order of frequency or if only a few labels are used.

Because the case statements are compared starting from the top, unnecessary comparison can be reduced and the execution speed can be increased if the case statement that most often matches is written first.

Binary search(-switch=binary)

Outputs the code in the binary search format for switch statements in programs.

Searches for a matching case statement by using a binary search algorithm.

If this item is selected when many labels are used, any case statement can be found at almost the same speed.

Table jump(absolute)(-switch=abs_table)

Outputs the code in the table jump format (absolute branch) for switch statements in programs.

References a table indexed on the values in the case statements, and selects and processes case labels from the switch statement values.

The code will branch to all the case statements with about the same speed.

However, if case values are not used in succession, an unnecessary area will be created.

Table jump(relative)(-switch=rel_table)

Outputs the code in the table jump format (relative branch) for switch statements in programs.

References a table indexed on the values in the case statements, and selects and processes case labels from the switch statement values.

The code will branch to all the case statements with about the same speed.

However, if case values are not used in succession, an unnecessary area will be created.

Output comment to assembly source file

Select whether to output a C source program as a comment to the assembly source file to be output.

This corresponds to the -pass_source option of the ccrl command.

This property is displayed only when [Yes(-asm_path)] in the [Output assembly source file] property in the [Output File] category is selected or when [Yes(-asmopt=-prn_path)] in the [Output assemble list file] property in the [Assemble List] category is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-pass_source)

Outputs a C source program as a comment to the assembly source file.

No

Does not output a C source program as a comment to the assembly source file.

Merge string literals

When the same string literals exist in the source file, specify whether to merge them and allocate to the one area.

This corresponds to the -merge_string option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-merge_string)

Merges the same string literals exist in the source file and allocates to the one area.

No

Each allocates the same string literals exist in the source file to separate areas.

(10)

[Output File]

The detailed information on output files is displayed and the configuration can be changed.

Output assembly source file

Select whether to output the assembly source file of the compile result for the C source.

This corresponds to the -asm_path option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-asm_path)

Outputs the assembly source file of the compile result for the C source.

No

Does not output the assembly source file of the compile result for the C source.

Output folder for assembly source file

Specify the folder which the assembly source file is output.

If a relative path is specified, the reference point of the path is the main project or subproject folder.

If an absolute path is specified, the reference point of the path is the main project or subproject folder (unless the drives are different).

The following placeholder is supported.

%BuildModeName%: Replaces with the build mode name.

The assembly source file is saved under the C source file name with the extension replaced by ".asm".

If this is blank, it is assumed that the project folder has been specified.

This corresponds to the -asm_path option of the ccrl command.

This property is displayed only when [Yes(-asm_path)] in the [Output assembly source file] property is selected.

Default

%BuildModeName%

How to change

Directly enter in the text box or edit by the Browse For Folder dialog box which appears when clicking the [...] button.

Restriction

Up to 247 characters

Output preprocessed source file

Select whether to output the execution result of preprocessing for the source file to a file.

This corresponds to the -P option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-P)

Outputs the execution result of preprocessing for the source file to a file.

No

Does not output the execution result of preprocessing for the source file to a file.

Output folder for preprocessed source file

Specify the folder which the preprocessed source file is output.

The file is output under the source file name with the extension replaced by ".i".

If a relative path is specified, the reference point of the path is the main project or subproject folder.

If an absolute path is specified, the reference point of the path is the main project or subproject folder (unless the drives are different).

The following placeholder is supported.

%BuildModeName%: Replaces with the build mode name.

If this is blank, it is assumed that the project folder has been specified.

This corresponds to the -prep_path option of the ccrl command.

This property is displayed only when [Yes(-P)] in the [Output preprocessed source file] property is selected.

Default

%BuildModeName%

How to change

Directly enter in the text box or edit by the Browse For Folder dialog box which appears when clicking the [...] button.

Restriction

Up to 247 characters

(11)

[Assemble List]

The detailed information on the assemble list is displayed and the configuration can be changed.

Output assemble list file

Select whether to output the assemble list file.

This corresponds to the -asmopt=-prn_path option of the ccrl command.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-asmopt=-prn_path)

Outputs the assemble list file.

No

Does not output the assemble list file.

Output folder for assemble list file

Specify the folder which the assemble list file is output.

The assemble list file is output under the source file name with the extension replaced by ".prn".

If a relative path is specified, the reference point of the path is the main project or subproject folder.

If an absolute path is specified, the reference point of the path is the main project or subproject folder (unless the drives are different).

The following placeholder is supported.

%BuildModeName%: Replaces with the build mode name.

If this is blank, it is assumed that the project folder has been specified.

This corresponds to the -asmopt=-prn_path option of the ccrl command.

This property is displayed only when [Yes(-asmopt=-prn_path)] in the [Output assemble list file] property is selected.

Default

%BuildModeName%

How to change

Directly enter in the text box or edit by the Browse For Folder dialog box which appears when clicking the [...] button.

Restriction

Up to 247 characters

(12)

[MISRA-C Rule Check]

The detailed information on the MISRA-C rule check are displayed and the configuration can be changed.

20XX in the following table corresponds to 2012 or 2004 in particular.

MISRA-C specification

Select the MISRA-C specification.

This property is usable only in the Professional Edition.

This property is displayed when [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.02.00 or higher or when V1.02.00 or higher is selected in the [Using compiler package version] property.

Default

MISRA-C 2012

How to change

Select from the drop-down list.

Restriction

MISRA-C 2012

Settings for MISRA-C 2012 are made in the subsequent properties.

MISRA-C 2004

Settings for MISRA-C 2004 are made in the subsequent properties.

Apply rule

Select the MISRA-C rules to be applied.

This property is usable only in the Professional Edition.

This corresponds to the -misra20XX option of the ccrl command.

Default

Not apply rule(None)

How to change

Select from the drop-down list.

Restriction

Apply all rules(-misra20XX=all)

Checks the source code against all of the rules which are supported.

Apply specified rule number(-misra20XX=apply)

Checks the source code against the rules with the specified numbers among the rules which are supported.

Ignore specified rule number(-misra20XX=ignore)

Checks the source code against the rules that do not match the specified numbers among the rules which are supported.

Apply rules that are classified as "required"(-misra20XX=required)

Checks the source code against the rules of the "required" type.

Apply rules that are classified as "required" and specified rule number(-misra20XX=required_add)

Checks the source code against the rules of the "required" type and the rules with the specified numbers among the rules which are supported.

Ignore specified rule number from rules that are classified as "required"(-misra20XX=required_remove)

Checks the source code against the rules of the "required" type except for the rules with the specified numbers among the rules which are supported.

Apply rules that are described in the specified file(-misra20XX=<file name>)

Checks the source code against the rules with the numbers described in specified file among the rules which are supported.

Not apply rule(None)

Does not apply the MISRA-C rules.

Rule number description file

Specify the rule number description file (MISRA-C rule file).

This property is usable only in the Professional Edition.

In case of misra2012, the mandatory rule number (13.6 17.3 17.4, in addition to them, 9.1 in case of CC-RL V1.04.00 or later) are always checked regardless of whether they are specified.

The following placeholders are supported.

%BuildModeName%: Replaces with the build mode name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%ProjectName%: Replaces with the project name.

This corresponds to the -misra20XX option of the ccrl command.

This property is displayed only when [Apply rules that are described in the specified file(-misra20XX=<file name>)] in the [Apply rule] property is selected.

Default

Blank

How to change

Directly enter in the text box or edit by the Specify MISRA-C Rule File dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters

Rule number

Specify the rule number to be checked.

This property is usable only in the Professional Edition.

In case of misra2012, the mandatory rule number (13.6 17.3 17.4, in addition to them, 9.1 in case of CC-RL V1.04.00 or later) are always checked regardless of whether they are specified.

Specify at least one rule number in decimal.

This corresponds to the -misra20XX option of the ccrl command.

This property is displayed only when [Apply specified rule number(-misra20XX=apply)] in the [Apply rule] property is selected.

Default

Blank

How to change

Directly enter in the text box or edit by the Specify Rule Number dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters

Exclusion rule number

Specify the rule number to be excluded from the check.

This property is usable only in the Professional Edition.

In case of misra2012, the mandatory rule number (13.6 17.3 17.4, in addition to them, 9.1 in case of CC-RL V1.04.00 or later) are always checked regardless of whether they are specified.

Specify at least one rule number in decimal.

This corresponds to the -misra20XX option of the ccrl command.

This property is displayed only when [Ignore specified rule number(-misra20XX=ignore)] in the [Apply rule] property is selected.

Default

Blank

How to change

Directly enter in the text box or edit by the Specify Rule Number dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters

Check rule number besides required rule

Specify the rule number to be checked besides the required rules.

This property is usable only in the Professional Edition.

In case of misra2012, the mandatory rule number (13.6 17.3 17.4, in addition to them, 9.1 in case of CC-RL V1.04.00 or later) are always checked regardless of whether they are specified.

Specify at least one rule number in decimal.

This corresponds to the -misra20XX option of the ccrl command.

This property is displayed only when [Apply rules that are classified as "required" and specified rule number(-misra20XX=required_add)] in the [Apply rule] property is selected.

Default

Blank

How to change

Directly enter in the text box or edit by the Specify Rule Number dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters

Exclusion rule number from required rule

Specify the required rule number to be excluded from the check.

This property is usable only in the Professional Edition.

In case of misra2012, the mandatory rule number (13.6 17.3 17.4, in addition to them, 9.1 in case of CC-RL V1.04.00 or later) are always checked regardless of whether they are specified.

Specify at least one rule number in decimal.

This corresponds to the -misra20XX option of the ccrl command.

This property is displayed only when [Ignore specified rule number from rules that are classified as "required"(-misra20XX=required_remove)] in the [Apply rule] property is selected.

Default

Blank

How to change

Directly enter in the text box or edit by the Specify Rule Number dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters

Rule check exclusion file

Specify files that will not be checked against the MISRA-C rules.

This property is usable only in the Professional Edition.

The following placeholders are supported.

%BuildModeName%: Replaces with the build mode name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%ProjectName%: Replaces with the project name.

This corresponds to the -ignore_files_misra option of the ccrl command.

This property is displayed only in the following cases.

-

When [Apply all rules] is selected in the [Apply rule] property

-

When [Apply rules that are classified as "required"] is selected in the [Apply rule] property

-

When [Apply specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Rule number] property

-

When [Ignore specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Rule number] property

-

When [Apply rules that are classified as "required" and specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Check rule number besides required rule] property

-

When [Ignore specified rule number from rules that are classified as "required"] is selected in the [Apply rule] property and a rule number is specified in the [Exclusion rule number from required rule] property

-

When [Apply rules that are described in the specified file] is selected in the [Apply rule] property and a rule number description file is specified in the [Rule number description file] property

Default

Rule check exclusion file[number of defined items]

How to change

Edit by the Path Edit dialog box which appears when clicking the [...] button.

-> Edit by the Add Excluding File dialog box which appears when clicking the [Browse...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 259 characters

Output message of the enhanced key word and extended specifications

Select whether to output the message of the enhanced key word and extended specifications.

This property is usable only in the Professional Edition.

This corresponds to the -check_language_extention option of the ccrl command.

This property is displayed only in the following cases.

-

When [Apply all rules] is selected in the [Apply rule] property

-

When [Apply rules that are classified as "required"] is selected in the [Apply rule] property

-

When [Apply specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Rule number] property

-

When [Ignore specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Rule number] property

-

When [Apply rules that are classified as "required" and specified rule number] is selected in the [Apply rule] property and a rule number is specified in the [Check rule number besides required rule] property

-

When [Ignore specified rule number from rules that are classified as "required"] is selected in the [Apply rule] property and a rule number is specified in the [Exclusion rule number from required rule] property

-

When [Apply rules that are described in the specified file] is selected in the [Apply rule] property and a rule number description file is specified in the [Rule number description file] property

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-check_language_extension)

Enables MISRA-C rule check and outputs messages when the rule check is partially suppressed by the unique language specifications extended from the C language standard.

No

Disables MISRA-C rule check is disabled, which are partially suppressed by the extended language specifications.

(13)

[Others]

Other detailed information on compilation is displayed and the configuration can be changed.

Use support for porting from other compiler

Select whether to use support for porting from other compilers.

This corresponds to the -convert_cc option of the ccrl command.

This property is displayed when [Always latest version which was installed] in the [Using compiler package version] property in the [Version Select] category from the [Common Options] tab is selected and the latest version is V1.01.00 or higher or when V1.01.00 or higher is selected in the [Using compiler package version] property.

Default

No(None)

How to change

Select from the drop-down list.

Restriction

Yes(CA78K0R)(-convert_cc=ca78k0r)

Uses support for porting from the CA78K0R compiler.

Yes(NC30)(-convert_cc=nc30)

Uses support for porting from the NC30 compiler.

Yes(IAR)(-convert_cc=iar)

Uses support for porting from the IAR compiler.

No(None)

Uses support for porting from other compiler.

Commands executed before compile processing

Specify the command to be executed before compile processing.

Use the call instruction to specify a batch file (example: call a.bat).

The following placeholders are supported.

%ActiveProjectDir%: Replaces with the absolute path of the active project folder.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%CompiledFile%: Replaces with the absolute path of the output file under compiling.

%InputFile%: Replaces with the absolute path of the file to be compiled.

%MainProjectDir%: Replaces with the absolute path of the main project folder.

%MainProjectName%: Replaces with the main project name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%Options%: Replaces with the command line option under build execution.

%OutputDir%: Replaces with the absolute path of the output folder.

%OutputFile%: Replaces with the absolute path of the output file.

%Program%: Replaces with the program name under execution.

%ProjectDir%: Replaces with the absolute path of the project folder.

%ProjectName%: Replaces with the project name.

%TempDir%: Replaces with the absolute path of the temporary folder.

%WinDir%: Replaces with the absolute path of the Windows system folder.

When "#!python" is described in the first line, the contents from the second line to the last line are regarded as the script of the Python console, and then executed before compile processing.

The placeholders can be described in the script.

The specified command is displayed as the subproperty.

Default

Commands executed before compile processing[number of defined items]

How to change

Edit by the Text Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 1023 characters

Up to 64 items can be specified.

Commands executed after compile processing

Specify the command to be executed after compile processing.

Use the call instruction to specify a batch file (example: call a.bat).

The following placeholders are supported.

%ActiveProjectDir%: Replaces with the absolute path of the active project folder.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%CompiledFile%: Replaces with the absolute path of the output file under compiling.

%InputFile%: Replaces with the absolute path of the file to be compiled.

%MainProjectDir%: Replaces with the absolute path of the main project folder.

%MainProjectName%: Replaces with the main project name.

%MicomToolPath%: Replaces with the absolute path of the install folder of this product.

%Options%: Replaces with the command line option under build execution.

%OutputDir%: Replaces with the absolute path of the output folder.

%OutputFile%: Replaces with the absolute path of the output file.

%Program%: Replaces with the program name under execution.

%ProjectDir%: Replaces with the absolute path of the project folder.

%ProjectName%: Replaces with the project name.

%TempDir%: Replaces with the absolute path of the temporary folder.

%WinDir%: Replaces with the absolute path of the Windows system folder.

When "#!python" is described in the first line, the contents from the second line to the last line are regarded as the script of the Python console, and then executed after compile processing.

The placeholders can be described in the script.

The specified command is displayed as the subproperty.

Default

Commands executed after compile processing[number of defined items]

How to change

Edit by the Text Edit dialog box which appears when clicking the [...] button.

For the subproperty, you can enter directly in the text box.

Restriction

Up to 1023 characters

Up to 64 items can be specified.

Other additional options

Input the compile option to be added additionally.

The options set here are added at the end of the compile options group.

Default

Blank

How to change

Directly enter in the text box or edit by the Character String Input dialog box which appears when clicking the [...] button.

Restriction

Up to 259 characters