Быстрый обзор всех модулей
 
(Частично отсортировано)
fbc
Интерфейс: основной модуль, точка входа, обработка командной строки, assembling/linking/etc.

fb-objinfo
Объект/библиотека информация раздел чтения/записи, используемый fbc.

bfd-wrapper
Маленький враппер C над bfd.h (нативный libbfd), чтобы не было необходимости использовать точные заголовки FB. (Заголовки FB для некоторых libbfd версий существуют, таким образом эта обертка не требуется, но это - значение по умолчанию, чтобы сделать компиляцию fbc более приятной).

fb
Интерфейс FB парсера , запускает парсер для каждого входного/включаемого файла.

parser
Рекурсивный парсер, опрашивает lex для маркеров, создает ast.

lex, pp
Лексер/Маркировщик и директива препроцессора парсинга.

error
Функции отчетов об ошибках, используемые многими частями FBC, в основном парсером.

rtl
Помощник функций, для создания ast узлов, используемых для rtlib/gfxlib вызовов функций. Декларации должны соответствовать фактическим функциям в rtlib/gfxlib2 исходном коде.

symb
Поиск символов и хранение (информация о переменных/функциях), обработка областей видимости/пространств имен, искажение имени; используется parser/ast/emitters.

ast
Дерево абстрактного синтаксиса: поток кода посредством функций + выражения.
astNew* (): Создания узла/построение дерева, используемое парсером.
astLoad* (): Первый шаг в издании, ir вызовов, вызванном после того, как каждая функция проанализирована.

ir, ir-hlc, ir-tac
Промежуточный интерфейс представления (использование виртуальных регистров) раньше издавал ast.
hlc: Высокоуровневый C эмиттер (gcc бэкэнд).
tac: модуль с тремя адресными кодами (asm бэкэнд), вызовы эмиттера.

reg
Средство выделения регистра для ir-tac.

emit, emit_SSE, emit_x86
Ассемблерная эмиттерная абстракция и эмиттеры SSE/x86.

edbg_stab
Stabs отладки, испуская формат для emit_x86.

dstr
Динамические z/wstrings, используемые в основном lex.

hash
Универсальная хэш-таблица, используемая symb/fbc.

hlp, hlp-str
Вспомогательные функции для всех частей компилятора, плюс другая реализация динамических z/wstrings.

list
Универсальный связанный список со встроенным пулом памяти. Это часто используется в качестве чистого объединенного средства выделения, например для узлов AST или символов.

flist
основанный на списке без удалений.

pool
Основанное на списке средство выделения, используя многократные списки с размерами узла в пределах от малого и большого, позволяя ему хранить строки в следующем оптимальном блоке, чтобы тратить как можно меньше памяти. Используется, чтобы хранить идентификаторы символа.

stack
Общий список на основе стека.