2.1 Overview

The RX family C/C++ compiler generates a file executable in the target system from the source program written in C language, C99 language, C++ language, or assembly language.

In this compiler, a single driver controls multiple phases from preprocessing to linkage.

The following describes processing in each phase.

(1)

Compiler

This processes preprocessing directives, comments, and optimization for the C source program and generates an assembly-language source file.

(2)

Preprocessor

This processes the preprocessing directives in the source program.

Only when the -P option is specified, it outputs the preprocessed file.

(3)

Parsing section

This parses the C source program and then converts it to the internal data representation for the compiler.

(4)

Optimizing section

This optimizes the internal data representation converted from the C source program.

(5)

Code generating section

This converts the internal data representation to an assembly-language source program.

(6)

Assembler

This converts the assembly-language source program to machine-language instructions and generates a relocatable object module file.

(7)

Optimizing linkage editor

This links object module files, link directive files, and library files and generates an object file (load module file) executable in the target system.