������
�����
����������
������ ��������� ���������� ����������� ��������� � "toplev.c".
��� ���� ������������ �� �������������, ������������� ����������,
�������� � �������� ������ � ������������������ ��������.
������ ��������������� ������� ���������� ������ ������� ���
������� ����� �����. ������������� ��� RTL ��� ������� ������������,
����� ������� �������������. ��������� ���������� ������������. ������
�������� ����������� ��� �������������� ������ � ����� ������������� �
RTL; ����� ����� ������, ���������� ������ ���������, �������������.
���� (� ��������� ��� �� ��������), ����������, �������������
���������� �������� � ��� ��� ������������ �����������, ���� �������
�� ��������������; ��� ��� ����������, ����� ������� ���������� ��
�������.
������ ���, ����� ��� ������� ��������������� ������� ��������
������ ����������� ������� ��� ���������� �������� ������, ����������
������� " rest_of_compilation " ��� ������� " rest_of_decl_compilation
" � " toplev.c ", ������� ������������ �� ��� ���������� �����������
���������, ��������������� ������� �� ����� ����������. ���������
������� ����������� ���������� ��������������� ������ "
rest_of_compilation ". ����� ��� ������� ������������ �� ����������
����������� �������, ������, ������������ ��� ���������� �����
�����������, ��������� �������������, ���� ��� �� ���������� �������
(��.: ���������� ������� �������� ��� �� ������, ��� ������������:
�����������.).
��� ������ ���� �������� ����������� � �� �������� ������. �����
�������� �������� ����, ��� ��������� ���������� ����� ��� ������
����� " -d ".
- �������������� ������. ���� ������ ������ ���� �����
����������� ������� � ������ ��������� �������������� �������. ��� �
��������� RTL �� �������� ������ ���������� ��������� (��� ������), ��
����� ������ � ��� ��� �� ���������.
������������� ������ �� ������� ��������� ���������� C, ������
��� ��� ������������� ������������ ����� ������ �����.
������������� ��� ����� ������ ���� ������ ����� �������� � ����
�������, � � ������� ���� ������, ������� ������������ ���������,
����������� ��� ��� ������. ���������� �������������� ���
����-����������.
���������� �������� � ��������� �������������� ��������� �����
����������� �� ����� ����� �������.
���������������� �������� ����� ��� ��������������� ������� -
"stor-layout.c", "fold-const.c", � "tree.c". ���� ����� �����
��������� "tree.h" � "tree.def", ������� ���������� ������
������������� ������.
�������� ����� ��� ������� C - "c-parse.in", "c-decl.c",
"c-typeck.c", "c-aux-info.c", "c-convert.c" � "c-lang.c", � �����
����� ��������� "c-lex.h", � "c-tree.h".
�������� ����� ��� ������� C ++ - "cp-parse.y", "cp-class.c",
"cp-cvt.c", "cp-decl.c", "cp-decl2.c", "cp-dem.c", "cp-except.c",
"cp-expr.c", "cp-init.c", "cp-lex.c", "cp-method.c", "cp-ptree.c",
"cp-search.c", "cp-tree.c", "cp-type2.c", � "cp-typeck.c", � �����
����� ��������� "cp-tree.def", "cp-tree.h", � "cp-decl.h".
����������� �������� ����� ��� ��������������� ������� Objective
C "objc-parse.y", "objc-actions.c", "objc-tree.def", �
"objc-actions.h". ��� ����� ������������ ����� ��������� �������������
����� C.
���� "c-common.c" ����� ������������ ��� ���� �������������
������.
- ��������� RTL. ��� �������������� ��������������� ������ � ���
RTL. ���������� ��� ����������� ������������ �� ����� ���������������
�������, �� ��� ����������� ����� � ��� ����� ������ ��� �� ���������
�������.
������ ����� ��������� ������� ����� ����, ���������� �� ������,
��� ��� c�������� ����� ������ ���������� ��������� �� ������ �����,
����� �������� ������������ ����������� ���� ������. ���� ���������
�������� ������ - ���������� ��� ���������� ��� ������� ��������� RTL.
� ���� ������� ��������� ����������� ��� "if"-�������, ����������
�����������, �������� ���������� ��� ��������� �����������.
"���������" �������� ����� ������������ � ��� �����. �����������
������� � ���, ��� ����� ����� ������������� ����� � ��� ��������
��������� "switch".
�������� ����� ��� ��������� RTL �������� "stmt.c", "calls.c",
"expr.c", "explow.c", "expmed.c", "function.c", "optabs.c" �
"emit-rtl.c". ����� � ���� ������� ������������ ���� "insn-emit.c",
��������������� �� ��������� �������� ���������� "genemit". ����
��������� "expr.h" ������������ ��� ����� ������ ����� �������.
����� ��������� "insn-flags.h" � "insn-codes.h", ���������������
�� ��������� �������� ����������� " genflags " � " gencodes ",
�������� ����� �������, ����� ����������� ����� �������� ���
������������� � ����� ������� ������������� ��.
����� ������ ���������� �� �������, �� ���� �� ��������� ��������
�� ���������� � ������������� ��������� ������ ������� (� ������ � ���
��� �����, ������� ���������).
������� � ���, ����� �� � ������ �� ��� ������� ��������
������������ � ��� �������, �� ����������, �������� � ����� ���������
RTL. ������� ������ ������������� ��������� ���������, ������� ������
�������� �� ������� � ����� � ���������� �� ����������. ��������
��������, ��� ��� ������� ����� ��������� �����, ����������� ���������
� ���� (������� � "���������" ��������� ����� ���� �����������!),
��������� ��������, ������ ������, ��� �����������, �������������� GNU
CC.
���� " integrate.c " �������� ��� ��� ���������� RTL ������� ���
����, ����� ����� ��� ���������, � ������� ����� RTL, ����� �������
����������. ���� ��������� " integrate.h " ����� ������������ ��� ����
����.
����� " -dr " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .rtl " � ����� ��������
�����.
- ����������� ���������. ���� ������ �������� �������� � ���������
�������, �������� ����� �������� � �������� � ���������. �� �������
�������������� ����� � ������������ ���, �� ����������� ����, ���
������������ ���, ������� �������� ����, �� ������������ ���
������������ � ���� ������. (����� ����� ��������� ����� ��� �������
������� ������). �� ����� ����������� ��������� ���, �������������
���������� � ����������, � ������������������ ������, �������
��������������� ������������� �������� �� ����������� ���������, ����
������ ����� ����� �������.
����������� ��������� ����������� ��� ��� ��� ����. ������ ���
���������� ����� ����� ��������� RTL. ������ ��� - ����� CSE, ��
������ ���� CSE ��������, ��� ��������� ����������� ��������
����������. ��������� ��� - ����� �������������� ��������. �� ����
������� ������������ �������� � �������� ������ ������ �����������
����������� ������ � �������������, ���������� ����.
�������� ���� ����� ������� - " jump.c ".
����� " -dj " �������� ���� ������� RTL ���� ����� �������
���������� ����� �������. ��� ����� ����� ���������� ����������� "
.jump " � ����� �������� �����.
- �������� ���������. ���� ������ �������, ����� ������ � �����
��������� ��� ������������� ������ �������; ��� ����������� ���
�������� ����� ������������. �������� ��������� � " regclass.c ".
- ������� ���������. ���� ������ ���������� �������� ��������,
����� ������� ����� � ����������� ��� ��������� �����. ����� ��������
����� ���� "�����" ����� ������ �������� ����. �������� ����� �����
������� ��������� � " jump.c ". ��� ����������� �����������, ������
���� ����������� ����� "-fthread-jumps".
- �������� ����� ������������ (CSE). ���� ������ ����� ���������
����������� ���������. �������� ���� - " cse.c ". ���� �����
���������� ����������� ��������� ��������� �������� ��������
���������� ����������� ��� ��������������, �� �� ��������� CSE �����
����������� ����������� ���������.
����� " -ds " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .cse " � ����� ��������
�����.
- ����������� ������. ���� ������ ���������� ���������� ���������
�� ������� ������ � ��������� ��������� ���� ����� ���
��������� �����. �������� ����� - " loop.c " � "unroll.c", � �����
���� ��������� " loop.h ", ������������ ��� ����� ����� ����.
��������� ����� ���������� ��������� ������� � " integrate.c " �
��������� " integrate.h ".
����� " -dL " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .loop " � ����� ��������
�����.
- ���� ���� ����������� ����� " -frerun-cse-after-loop ", ������
������ ������ �������� ������������ ����������� ����� �������
����������� �����. � ���� ������ ������� ��������� ����� �����
����������� � ��� �����.
����� " -dt " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .cse2 " � ����� ��������
�����.
- "������" ������������� ��������� ����������� � ���� ����� ���
���������� ��� �����������. ���� ������ ���������� ��������� ���������
������. ���� ������������ "������" ������������� ���������, ���������
����������� ������ ������������; ��� ������� ����� ���� ������������.
�������� ���� - " stupid.c ".
- ��������� ������ ������ (" flow.c "). ���� ������ �����
��������� �� ������� ����� (� �� ���� ������ ������� ������������
�����); ����� �� ���������, ����� �������������� "�����" � ������
����� ��������� � ������ ������ �������, ������� ���������� ��������,
����������� �� �������, ������� ��������� ��������.
���� ������ ����� ������� ����������, ���������� ������� �������
�� ������������, � ���������� ������ �� ������ � ��������� ��������
��� ��������� ��� ��������� ��������� � ��������������� �
���������������.
����� " -df " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .flow " � ����� ��������
�����. ���� ������������ "������" ������������� ���������, ���� ����
����� �������� ������ ���������� ������ �������������.
- �������������� ������ (" combine.c "). ���� ������ ������
������� ���������� ������ �� ���� ��� ���� ������, ����������� �
������ ������, � ��������� �������. �� ���������� RTL ���������,
������� �� �� �������, �������� ���������, ������������ �������, �
����� �������� ����������� ��������� � �������� ���������.
����� " -dc " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .combine " � ����� ��������
�����.
- ������������ ������ (" sched.c "). ���� ������ ���� �������,
��� ����� �� ����� �������� �� ������� ��� ������������� � �����������
��������. (������� �������� ������ � ������ � ��������� ������ �����
����� ���� ��� �� RISC �������). �� ����������������� ������� ������
�������� �����, ����� ���������� ��������� ����������� � �������������
���������, ������� ����� ������� �� ������������ ������.
������������ ������ ����������� ������. ������ ��� - ����� �����
�������������� ������ � ������ - ����� ����� ������������.
����� " -dS " �������� ���� ������� RTL ���� ����� �������
���������� ����� �������. ��� ����� ����� ���������� ����������� "
.sched " � ����� �������� �����.
- ����� ������ ���������. RTL ��� ���������������, �����
��������, ����� ����� ��������� �������� ����� ������ ��� �������
��������������. �������� ���� - " regclass.c ".
- ��������� ������������� ��������� (" local-alloc.c "). ����
������ ������������ ���������� �������� ���������������, �������
������������ ������ ������ ������ �������� �����. ��������� �������
���� ������, �� ����� ������������ ������� � ������ ������ � ��������
����� ������� ����������.
����� " -dl " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .lreg " � ����� ��������
�����.
- ���������� ������������� ��������� (" global.c "). ���� ������
������������ ���������� �������� ��� ���������� ��������������� (���,
��� ���������� ����� �� ���������� � ����� ������� �����).
- ������������. ���� ������ ���������������� ��������������
�������� ���������� ���������, � ������� ��� ���� ������������.
��������������, �� ���������� ���������� ��������� ���������� �� �����
�����. ����� �� ������� �������, ������� �������� �������������,
������ ��� �������� �� ������ ����������� � �������� ��� ����������� �
�������� ������������� ����. �� ���������� ��� �������, ��������
������������ ��� �������� � ��������. ������������ ��������������
������� ��� �����������.
������ ������������ ����� ����� ��������� ��������� ����� �
��������� ������� ��� ���������� � �������������� ���������,
�������������� ���������� ��������, �� � ����� ������.
�������� ����� - " reload.c " � " reload1.c ", � ����� ���������
" reload.h ", ������������ ��� ����� ����� ����.
����� " -dg " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .greg " � ����� ��������
�����.
- ������������ ������ ����������� �����, ����� ����������
�������� ��������� ������ ������ ��-�� �������� ������,
��������������� ��� "��������" ���������������.
����� " -dR " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .sched2 " � ����� ��������
�����.
- ����������� ��������� �����������, ������� �� ���� ���
������������ �������� � �������� ������ ������ �����������.
����� " -dJ " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .jump2 " � ����� ��������
�����.
- ������������ ����������� ���������. ���� �������������� ������
�������� ����� �������, ������� ����� ����� � ����� �������� ������
������, ������ ��������� � ������� �������. ��� ��������� ����� - "
reorg.c ".
����� " -dd " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .dbr " � ����� ��������
�����.
- �������������� �� ������������� ��������� ���������� ���������
� ������������� ��������� ����� ����� ���� ��������� � ���� �����. �
��������� ����� ��� �������������� ������ ��� ��������� ������������
Intel 80387 � ��������� ������. ��� ��������� ����� - " reg-stack.c ".
����� " -dk " �������� ���� ������� RTL ���� ����� ����� �������.
��� ����� ����� ���������� ����������� " .stack " � ����� ��������
�����.
- �������������� ������. ���� ������ ������� ��� ���������� ���
�������. �� �������� ����� ������������� �� ������������� ������
������ �������� � ���������. ������������� ��� ������ �����������
����������� � ��� �� �����. ������������������ ��� ����� � ������ ��
������� ������������ ��������������� ��� ��� ���������� � ����
�������; ��� ������� �� ���������� ��� RTL.
�������� ����� - " final.c " � " insn-output.c "; ���������
������������ ������������� �� ��������� �������� �������� " genoutput
". ���� ��������� " conditions.h " ������������ ��� ����� ����� �����
�������.
- ����� ���������� �� �������. �� ����������� �����
��������������� �������, ������ ��� �� ������ ������� �������� ������
����� ��� ���������������, ������� �� �������� ���������� ���������.
�������� ����� - " dbxout.c " ��� ������� ������� �������� DBX, "
sdbout.c " ��� ������� ������� �������� SDB, � " dwarfout.c " ���
������� ������� �������� DWARF.
��������� �������������� ����� ������������ ����� ��� �������
���������:
- ������ ������ ���������� " machmode.def " � " machmode.h ",
������� ���������� �������� ����.
- ��������� �������� ���������� " real.h ", ������� ����������
������������� �� ��������� �������� � ��������� ������ � ���
����������� � ���� ��������.
- ��� �������, ������� �������� � RTL, ���������� ����� ���������
" rtl.h " � " rtl.def " � ������������ � ����� " rtl.c ". ������� "
gen* " ����� ���������� ��� �����, ����� ������ �������� �������� RTL
� �������� � ���.
- ��������� �������� ���������� � ����� ���������
"insn-config.h", ������� �������� ��������� ����������
(���������������� C), �������������� ������������� �� ���������
�������� RTL �������� " genconfig ".
- ��������� �������� ���������� �������������� ������, �������
������� �� " recog.c " � " recog.h ", � ����� ����� " insn-recog.c " �
" insn-extract.c ", ������� ������������ ������������� �� ���������
�������� ��������� " genrecog " � " genextract ".
- ��������� �������� ���������� ����� ��������� " regs.h ",
������� ���������� ����������, ���������� �� �������������
���������������, � " basis-block.h ", ������� ���������� ����������,
���������� � ������� ������.
- " hard-reg-set.h " ���������� ��� " HARD_REG_SET ", �������
������ � ����� ��� ������� ����������� ��������, � ���������
������������ ��� ���������� ��. ���� ��� - " int ", ���� ������ �����
���������� ���� ���������; ����� ��� - ������ " int ", � ���������
������������ ����������� �� ������.
- ��������� �������� ���������� �������� ������. �����������
���������, ������������ ��� ���������� ������, ��������� � ����� "
insn-attr.h ", ������� ������������ �� ��������� �������� ���������� "
genattr ". ���� " insn-attrtab.c " �������� ������������ ��� ���������
�������� ��������� ��� insns. ��� ������������ �� ��������� ��������
���������� " genattrtab ".
������
�����
����������