Everything
 

[Library Generate Options] tab


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

 

(1)[Mode]

(2)[Standard Library]

(3)[Object]

(4)[Optimization]

(5)[Others]

Caution

This tab is not displayed for the library project.

[Description of each category]

(1)

[Mode]

The detailed information on modes are displayed and the configuration can be changed.

Generation mode of the standard library

Selects the generation mode of the standard library.

Default

Build a library file (option changed)

How to change

Select from the drop-down list.

Restriction

Build a library file (anytime)

Creates a latest standard library file.

Build a library file (option changed)

Creates a latest standard library file only when an option is changed regardless of whether Build or Rebuild.

Do not add a library file

Does not add a library file.

(2)

[Standard Library]

The detailed information on standard library are displayed and the configuration can be changed.

This category is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Library configuration

Selects which functions are to be usable in the C standard library.

This property corresponds to the -lang option of the library generator.

Default

C(C89) (-lang=c)

How to change

Select from the drop-down list.

Restriction

C(C89) (-lang=c)

Includes only the functions conforming to the C89 standard in the C standard library.

C99 (-lang=c99)

Includes the functions conforming to the C89 standard and the functions conforming to the C99 standard in the C standard library.

Configuration library

Selects the configuration library.

This property corresponds to the -head option of the library generator.

Default

Custom (-head=<SubOption>)

How to change

Select from the drop-down list.

Restriction

Custom
(-head=<SubOption>)

Specifies a configuration library.

All enable
(-head=all)

Specifies all library functions and runtime library.

All disable
(-head=runtime)

Does not specify a configuration library.

Enables runtime library

Selects whether to enable runtime library.

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

Yes (-head=runtime)

How to change

Select from the drop-down list.

Restriction

Yes (-head=runtime)

Enables the runtime library.

No

Disables the runtime library.

Enables ctype.h(C89/C99)

Selects whether to enable ctype.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=ctype)

Enables the ctype.h (C89/C99) and runtime library.

No

Disables the ctype.h (C89/C99).

Enables math.h(C89/C99)

Selects whether to enable math.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=math)

Enables the math.h (C89/C99) and runtime library.

No

Disables the math.h (C89/C99).

Enables mathf.h(C89/C99)

Selects whether to enable mathf.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=mathf)

Enables the mathf.h (C89/C99) and runtime library.

No

Disables the mathf.h (C89/C99).

Enables stdarg.h(C89/C99)

Selects whether to enable stdarg.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=stdarg)

Enables the stdarg.h (C89/C99) and runtime library.

No

Disables the stdarg.h (C89/C99).

Enables stdio.h(C89/C99)

Selects whether to enable stdio.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

Yes (-head=stdio)

How to change

Select from the drop-down list.

Restriction

Yes (-head=stdio)

Enables the stdio.h (C89/C99) and runtime library.

No

Disables the stdio.h (C89/C99).

Enables stdlib.h(C89/C99)

Selects whether to enable stdlib.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

Yes (-head=stdlib)

How to change

Select from the drop-down list.

Restriction

Yes (-head=stdlib)

Enables the stdlib.h (C89/C99) and runtime library.

No

Disables the stdlib.h (C89/C99).

Enables string.h(C89/C99)

Selects whether to enable string.h(C89/C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

Yes (-head=string)

How to change

Select from the drop-down list.

Restriction

Yes (-head=string)

Enables the string.h (C89/C99) and runtime library.

No

Disables the string.h (C89/C99).

Enables ios(EC++)

Selects whether to enable ios(EC++).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=ios)

Enables the ios(EC++) and runtime library.

No

Disables the ios(EC++).

Enables new(EC++)

Selects whether to enable new(EC++).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

Yes (-head=new)

How to change

Select from the drop-down list.

Restriction

Yes (-head=new)

Enables the new(EC++) and runtime library.

No

Disables the new(EC++).

Enables complex(EC++)

Selects whether to enable complex(EC++).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=complex)

Enables the complex(EC++) and runtime library.

No

Disables the complex(EC++).

Enables string(EC++)

Selects whether to enable string(EC++).

This property corresponds to the -head option of the library generator.

This property is displayed only when [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=cppstring)

Enables the string(EC++) and runtime library.

No

Disables the string(EC++).

Enables complex.h(C99)

Selects whether to enable complex.h(C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [C99 (-lang=c99)] in the [Library configuration] property and [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=C99_complex)

Enables the complex.h(C99) and runtime library.

No

Disables the complex.h(C99).

Enables fenv.h(C99)

Selects whether to enable fenv.h(C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [C99 (-lang=c99)] in the [Library configuration] property and [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=fenv)

Enables the fenv.h(C99) and runtime library.

No

Disables the fenv.h(C99).

Enables inttypes.h(C99)

Selects whether to enable inttypes.h(C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [C99 (-lang=c99)] in the [Library configuration] property and [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=inttypes)

Enables the inttypes.h(C99) and runtime library.

No

Disables the inttypes.h(C99).

Enables wchar.h(C99)

Selects whether to enable wchar.h(C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [C99 (-lang=c99)] in the [Library configuration] property and [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=wchar)

Enables the wchar.h(C99) and runtime library.

No

Disables the wchar.h(C99).

Enables wctype.h(C99)

Selects whether to enable wctype.h(C99).

This property corresponds to the -head option of the library generator.

This property is displayed only when [C99 (-lang=c99)] in the [Library configuration] property and [Custom (-head=<SubOption>)] in the [Configuration library] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-head=wctype)

Enables the wctype.h(C99) and runtime library.

No

Disables the wctype.h(C99).

(3)

[Object]

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

This category is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Path of the output folder

Specifies path of the output folder.

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.

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

This property corresponds to the -output option of the library generator.

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 file name

Specifies the output file name.

The following placeholders are supported.

%ActiveProjectName%: Replaces with the active project name.

%BuildModeName%: Replaces with the build mode name.

%MainProjectName%: Replaces with the main project name.

%ProjectName%: Replaces with the project name.

The reference point of the path is the project folder.

This property corresponds to the -output option of the library generator.

Default

%ProjectName%.lib

How to change

Directly enter to the text box.

Restriction

Up to 32767 characters

Generation mode of the standard library

Selects whether to create a functional cutdown version of I/O functions.

This property corresponds to the -nofloat and -simple_stdio option of the library generator.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (Functional cutdown version 1) (-nofloat)

Creates simple I/O functions that do not support the conversion of floating-point numbers (%f, %e, %E, %g, %G).

Yes (Functional cutdown version 2) (-simple_stdio)

Does not include the conversion of the floating point numbers, the conversion of long long type, and the conversion of 2-byte code.

No

Does not create a functional cutdown version of I/O functions.

Creates the reentrant library

Selects whether to create the reentrant library.

This property corresponds to the -reent option of the library generator.

This property is displayed when you have selected [Always latest version which was installed] or V2.03.00 or a later version for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where V2.03.00 or a later version of the CC-RX compiler has been installed.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-reent)

Creates the reentrant library.

No

Does not create the reentrant library.

Check memory smashing on releasing memory

Selects whether to check memory smashing on releasing the memory.

This property is usable only in the Professional Edition.

The user-defined __heap_chk_fail() function is called if an illegal address has been specified or an address outside the allocated memory area has been written to when the memory that was dynamically allocated by malloc or another function is released or re-allocated by this function. See "CC-RX Compiler User's Manual" for details.

This property corresponds to the -secure_malloc option of the library generator.

This property is displayed when you have selected [Always latest version which was installed] or V2.05.00 or a later version for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where V2.05.00 or a later version of the CC-RX compiler has been installed.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-secure_malloc)

Checks memory smashing on releasing the memory.

No

Does not check memory smashing on releasing the memory.

Use same object-related settings as Compile Options tab

Selects whether to make the object-related settings match those of the [Compile Options] tab.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes

Makes the object-related settings match those of the [Compile Options] tab.

No

Does not make the object-related settings match those of the [Compile Options] tab.

Section name of program area

Specifies the section name of program area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

P

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Section name of constant area

Specifies the section name of constant area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

C

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Section name of initialized data area

Specifies the section name of initialized data area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

D

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Section name of uninitialized data area

Specifies the section name of uninitialized data area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

B

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Section name of literal area

Specifies the section name of literal area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

L

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Section name of switch statement branch table area

Specifies the section name of switch statement branch table area.

This property corresponds to the -section option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

W

How to change

Directly enter in the text box.

Restriction

Up to 32767 characters

Allocates uninitialized variables to 4-byte boundary alignment sections

Selects whether to allocate uninitialized variables to 4-byte boundary alignment sections.

This property corresponds to the -nostuff option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-nostuff=B)

Allocates uninitialized variables to 4-byte boundary alignment sections.

No

Does not allocate uninitialized variables to 4-byte boundary alignment sections.

Allocates initialized variables to 4-byte boundary alignment sections

Selects whether to allocate initialized variables to 4-byte boundary alignment sections.

This property corresponds to the -nostuff option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-nostuff=D)

Allocates initialized variables to 4-byte boundary alignment sections.

No

Does not allocates initialized variables to 4-byte boundary alignment sections.

Allocates const qualified variables to 4-byte boundary alignment sections

Selects whether to allocate const qualified variables to 4-byte boundary alignment sections.

This property corresponds to the -nostuff option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-nostuff=C)

Allocates const qualified variables to 4-byte boundary alignment sections.

No

Does not allocate const qualified variables to 4-byte boundary alignment sections.

Allocates switch statement branch tables to 4-byte boundary alignment sections

Selects whether to allocate switch statement branch tables to 4-byte boundary alignment sections.

This property corresponds to the -nostuff option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-nostuff=W)

Allocates switch statement branch tables to 4-byte boundary alignment sections.

No

Does not allocate switch statement branch tables to 4-byte boundary alignment sections.

Adjustment for instruction in branch

Selects adjustment for instruction in branch.

This property corresponds to the -noinstalign, -instalign4, and -instalign8 option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

None (-noinstalign)

How to change

Select from the drop-down list.

Restriction

None (-noinstalign)

Does not align instructions at branch destinations.

Execution in 4 bytes (-instalign4)

Aligns instructions at branch destinations to 4-byte boundaries.

Execution in 4 bytes(Contains each loop head) (-instalign4=loop)

Aligns instructions at branch destinations to 4-byte boundaries (Contains head of each loop).

Execution in 4 bytes(Contains each inmost loop head) (-instalign4=inmostloop)

Aligns instructions at branch destinations to 4-byte boundaries (Contains head of each inmost loop).

Execution in 8 bytes (-instalign8)

Aligns instructions at branch destinations to 8-byte boundaries.

Execution in 8 bytes (Contains each loop head) (-instalign8=loop)

Aligns instructions at branch destinations to 8-byte boundaries (Contains head of each loop).

Execution in 8 bytes (Contains each inmost loop head) (-instalign8=inmostloop)

Aligns instructions at branch destinations to 8-byte boundaries (Contains head of each inmost loop).

Align fetch address of string manipulation instructions

Select whether to align addresses where string manipulation instructions start reading data. Selecting [Yes] prevents the reading of data across 4-byte boundaries in prefetching by string manipulation instructions.

This property corresponds to the -avoid_cross_boundary_prefetch option of the compiler.

This property is displayed when you have selected [Always latest version which was installed] or V2.07.00 or a later version for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where V2.07.00 or a later version of the CC-RX compiler has been installed.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes(-avoid_cross_boundary_prefetch)

Aligns addresses where string manipulation instructions start reading data.

No

Does not align addresses where string manipulation instructions start reading data.

Generates divisions and residues with DIV, DIVU, and the FDIV instruction

Selects whether to generate divisions and residues with DIV, DIVU, and the FDIV instruction.

This property corresponds to the -nouse_div_inst option of the compiler.

This property is displayed only when [No] in the [Use same object-related settings as Compile Options tab] property is selected.

Default

Yes

How to change

Select from the drop-down list.

Restriction

Yes

Generates code in which DIV, DIVU, or FDIV instructions are used.

No (-nouse_div_inst)

Generates code in which no DIV, DIVU, or FDIV instructions are used.

(4)

[Optimization]

The detailed information on optimizations are displayed and the configuration can be changed.

This category is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Use same optimization-related settings as Compile Options tab

Selects whether to make the optimization-related settings match those of the [Compile Options] tab.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes

Makes the optimization-related settings match those of the [Compile Options] tab.

No

Does not make the optimization-related settings match those of the [Compile Options] tab.

Optimization level

Selects optimization level.

This property corresponds to the -optimize option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

2 (-optimize=2)

How to change

Select from the drop-down list.

Restriction

0 (-optimize=0)

Does not optimize the program.

1 (-optimize=1)

Partially optimizes the program by automatically allocating variables to registers, integrating the function exit blocks, integrating multiple instructions which can be integrated, etc.

2 (-optimize=2)

Performs overall optimization.

Max (-optimize=max)

Performs optimization as much as possible.

Outputs additional information for inter-module optimization

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

This property corresponds to the -goptimize option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

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.

Optimization type

Selects optimization type.

This property corresponds to the -speed and -size option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Optimizes with emphasis on code size (-size)

How to change

Select from the drop-down list.

Restriction

Optimizes with emphasis on execution performance (-speed)

Optimizes with emphasis on execution performance.

Optimizes with emphasis on code size (-size)

Optimizes with emphasis on code size.

Loop expansion

Selects whether to optimize the loop expansion (for, while, and do-while).

This property corresponds to the -loop option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization level and optimization type options

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level and optimization type options

Depends on the [Optimization level] and [Optimization type] properties.

Expansion (-loop=<numeric value>)

Expands loop statements (for, while, and do-while).

Expansion maximum number

Specifies expansion maximum number.

This property corresponds to the suboption of -loop option of the library generator.

This property is displayed only in the following cases.

-

When [Expansion (-loop=<numeric value>)] in the [Loop expansion] property is selected

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected

Default

2 (decimal number)

How to change

Directly enter in the text box.

Restriction

1 to 32 (decimal number)

Performs inline expansion automatically

Selects whether to perform inline expansion automatically.

This option corresponds to the -inline and -noinline option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization level and optimization type options

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level and optimization type options

Depends on the [Optimization level] and [Optimization type] properties.

Yes (-inline=<numeric value>)

Performs inline expansion automatically.

No (-noinline)

Does not perform inline expansion automatically.

Maximum increasing rate of function size

Specifies maximum increasing rate of function size.

This option corresponds to the -inline option of the library generator.

This property is displayed only in the following cases.

-

When [Yes (-inline=<numeric value>)] in the [Performs inline expansion automatically] property is selected

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected

Default

100 (decimal number)

How to change

Select from the drop-down list.

Restriction

1 to 65535 (decimal number)

Files for inter-file inline expansion

Specifies files for inter-file inline expansion.

This option is valid only when the inline option or #pragma inline has been specified.

The following placeholders are supported.

%BuildModeName%: Replaces with the build mode name.

%ProjectName%: Replaces with the project name.

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

This option corresponds to the -file_inline option of the compiler.

The file name is displayed as the subproperty.

This property is displayed only in the following cases.

-

When [Always latest version which was installed] or a version number earlier than V2.00.00 is selected for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where a version of the CC-RX compiler earlier than V2.00.00 has been installed

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected

Default

Files for inter-file inline expansion[number of defined items]

How to change

Click the [...] button to open the Path Edit dialog box.

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

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

Restriction

Up to 259 characters

Up to 65536 items can be specified.

Expansion method of the switch statement

Selects expansion method of the switch statement.

This property corresponds to the -case option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Compiler automatically selects (-case=auto)

How to change

Select from the drop-down list.

Restriction

if_then method (-case=ifthen)

Expands the switch statement using the if_then method.

Jumping to a table method (-case=table)

Expands the switch statement by using the table method.

Compiler automatically selects (-case=auto)

Automatically selects the if_then method or table method.

Handles external variables as if they are volatile qualified

Selects whether to handle all external variables as if they are volatile qualified.

This property corresponds to the -volatile and -novolatile option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

No (-novolatile)

How to change

Select from the drop-down list.

Restriction

Yes (-volatile)

Handles all external variables as if they were volatile qualified.

No (-novolatile)

Does not handle external variables as if they were volatile qualified.

Accesses to volatile qualified variables with the sizes of the variable types

Selects whether to access to volatile qualified variables with the sizes of the variable

types.

This option corresponds to the -type_size_access_to_volatile option of the compiler.

This property is displayed only in the following cases.

-

When [Always latest version which was installed] or a version number earlier than V3.04.00 is selected for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where a version of the CC-RX compiler earlier than V3.04.00 has been installed.

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-type_size_access_to_volatile)

Accesses to volatile qualified variables with the sizes of the variable types

No

Does not access to volatile qualified variables with the sizes of the variable types

Performs the constant propagation of const qualified external variables

Selects whether to perform the constant propagation of const qualified external variables.

This property corresponds to the -const_copy and -noconst_copy option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization level options

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level options

Depends on the [Optimization level] property.

Yes (-const_copy)

Enables constant propagation of const qualified external variables.

No (-noconst_copy)

Disables constant propagation of const qualified external variables.

Conversion method of the divisions and residues of integer constants

Selects conversion method of the divisions and residues of integer constants.

This property corresponds to the -const_div and -noconst_div option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization type option

How to change

Select from the drop-down list.

Restriction

Depends on the optimization type option

Depends on the [Optimization type] property

Instruction sequence using multiplication (-const_div)

Performs constant division (residue) by an instruction sequence using multiplication.

Instruction sequence using division (-noconst_div)

Performs constant division (residue) by an instruction sequence using division.

Execution method of library function that can be expanded to RX instructions

Selects the method of execution for library functions that can be expanded as RX instructions.

This property corresponds to the -library option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Performs expansion to RX instructions(-library=intrinsic)

How to change

Select from the drop-down list.

Restriction

Calls library functions (-library=function)

Calls library functions.

Performs expansion to RX instructions(-library=intrinsic)

Replaces library functions with RX instructions having the corresponding facilities. For example, replaces abs() with an ABS instruction.

Divides the optimizing ranges into many sections before compilation

Selects whether to divide the optimizing ranges of the large-size function into many sections

before compilation.

This property corresponds to the -scope and -noscope option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization level option

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level option

Depends on the [Optimization level] property.

Yes (-scope)

Divides the optimizing ranges of the large-size function into many sections before compilation.

No (-noscope)

Does not divide the optimizing ranges before compilation.

Schedules the instruction taking into consideration pipeline processing

Selects whether to schedule the instruction taking into consideration pipeline processing.

This property corresponds to the -schedule and -noschedule option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

Depends on the optimization level option

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level option

Depends on the [Optimization level] property.

Yes (-schedule)

Schedules instructions taking into consideration pipeline processing.

No (-noschedule)

Does not schedule instructions.

Converts floating-point constant division into multiplication

Selects whether to convert floating-point constant division into multiplication of the corresponding reciprocals as constants.

This property corresponds to the -approxdiv option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-approxdiv)

Converts floating-point constant division into multiplication.

No

Does not convert floating-point constant division into multiplication.

Allocates preferentially the variables with register storage class specification to registers

Selects whether to allocate preferentially the variables with register storage class specification to registers.

This property corresponds to the -enable_register option of the compiler.

This property is displayed only in the following cases.

-

When [Always latest version which was installed] or a version number earlier than V2.00.00 is selected for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where a version of the CC-RX compiler earlier than V2.00.00 has been installed

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-enable_register)

Allocates preferentially the variables with register storage class specification to registers.

No

Does not allocate preferentially the variables with register storage class specification to registers.

Omits a check of the range for conversion between the floating type and unsigned integer type

Selects whether to omit a check of the range for conversion between the floating type and unsigned integer type.

This property corresponds to the -simple_float_conv option of the library generator.

This property is displayed only when [No] in the [Use same optimization-related settings as Compile Options tab] property is selected.

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-simple_float_conv)

Omits part of the type conversion processing for the floating type.

No

Does not omit part of the type conversion processing for the floating type.

Optimizes modification of the operation order of a floating-point expression

Selects whether to optimize modification of the operation order of a floating-point expression.

This property corresponds to the -float_order option of the library generator.

This property is displayed only in the following cases.

-

When [Always latest version which was installed] or a version number earlier than V2.00.00 is selected for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where a version of the CC-RX compiler earlier than V2.00.00 has been installed

-

When [2 (-optimize=2)] or [Max (-optimize=max)] in the [Optimization level] property is selected

-

When [No] in the [Use same optimization-related settings as Compile Options tab] property is selected

Default

No

How to change

Select from the drop-down list.

Restriction

Yes (-float_order)

Optimizes modification of the operation order in a floating-point expression.

No

Does not optimize modification of the operation order in a floating-point expression.

Reduces code size of relative branch instructions

Selects whether to reduce the code size of the relative branch instructions.

This property corresponds to the -branch_chaining, -nobranch_chaining option of the compiler.

This property is displayed only in the following cases.

-

When [Always latest version which was installed] or a version number earlier than V3.03.00 is selected for the [Using compiler package version] property under the [Version Select] category on the [Common Options] tab in an environment where a version of the CC-RX compiler earlier than V3.03.00 has been installed

-

When [2 (-optimize=2)] or [Max (-optimize=max)] in the [Level of optimization] property is selected

-

When [Optimizes with emphasis on code size (-size)] in the [Optimization type] property is selected

Default

Depends on the optimization level and optimization type option

How to change

Select from the drop-down list.

Restriction

Depends on the optimization level and optimization type option

Depends on the [Optimization level] and [Optimization type] properties.

Yes(-branch_chaining)

Reduces the code size of the relative branch instructions.

No(-nobranch_chaining)

Does not reduce the code size of the relative branch instructions.

(5)

[Others]

Other detailed information on library generators are displayed and the configuration can be changed.

Outputs the copyright

Selects whether to output the copyright.

This property corresponds to the -nologo option of the library generator.

This property is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Default

No (-nologo)

How to change

Select from the drop-down list.

Restriction

Yes(-logo)

Outputs the copyright.

No (-nologo)

Disables output of the copyright.

Commands executed before library generate processing

Specifies the command to be executed before library generator 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.

%LibraryFile%: Replaces with the absolute path of the output file under the library generator processing.

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

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

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

%Program%: Replaces with the file name of the running program.

%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 library generator processing.

The placeholders can be described in the script.

The specified command is displayed as the subproperty.

Default

Commands executed before library generate 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 use the text box directly enter the text.

Restriction

Up to 1023 characters

Up to 64 items can be specified.

Commands executed after library generate processing

Specifies the command to be executed after library generator 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.

%LibraryFile%: Replaces with the absolute path of the output file under the library generator processing.

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

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

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

%Program%: Replaces with the file name of the running program.

%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 library generator processing.

The placeholders can be described in the script.

The specified command is displayed as the subproperty.

Default

Commands executed after library generate 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 use the text box directly enter the text.

Restriction

Up to 1023 characters

Up to 64 items can be specified.

Other additional options

Inputs the library generator options to be added additionally.

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

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.

This property is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Default

Blank

How to change

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

Restriction

Up to 259 characters

Command line

The specified option is displayed.

This property is not displayed when [Do not add a library file] in the [Generation mode of the standard library] property in the [Mode] category.

Default

Command line[number of defined items]

How to change

Changes not allowed