некоторый указатель на понимание исходного кода GCC

Я - студент, работающий над оптимизацией GCC для многоядерного процессора. Я пытался пройти исходный код, трудно выполнить его, так как я должен добавить некоторый код к бэкэнду. Может любой предлагать некоторый хороший ресурс, который объясняет поток кода через различные фазы. Также предложите, чтобы некоторая среда разработки для отладки GCC главным образом ступила через код. Действительно ли это возможно на окнах?

6
задан Greg 29 May 2014 в 16:32
поделиться

2 ответа

В качестве отправной точки см. Ссылки и избранные материалы на сайте GCC. Я думаю, что для вас особый интерес представляют:

Если вы хотите разрабатывать в Windows, вам, вероятно, нужно начать с MinGW (Minimalist GNU for Windows) Compiler Suite (он включает отладчик GNU GDB), который является портом GCC для Windows.

Для создания комфортной среды разработки я мало чем могу помочь, потому что я не занимаюсь разработкой на C ++. Но я полагаю, что хорошая IDE для C / C ++ - это то, что вам нужно: посмотрите это сравнение , есть много бесплатных IDE с открытым исходным кодом для Windows.

Обновление: Думаю, ICI также может вас заинтересовать:

Интерактивный интерфейс компиляции (или для краткости «ICI» ) представляет собой систему плагинов с высокоуровневым независимым от компилятора и низкоуровневым зависимым от компилятора API для преобразования текущих компиляторов в совместные {{1 }} открыть модульные интерактивные наборы инструментов.Структура ICI действует как "промежуточное ПО" интерфейса между компилятором и подключаемыми модулями, определяемыми пользователем. Он открывает и повторно использует инфраструктуру компилятора производственного качества , чтобы обеспечить анализ программ и инструментарий, детальную оптимизацию программ, просто создание прототипов новых разработок и исследовательских идей, избегая создания новых инструментов компиляции с нуля. Например, он используется в MILEPOST GCC для автоматизации проектирования компилятора и архитектуры и оптимизации программ на основе статистического анализа и машинного обучения. Он должен обеспечивать универсальные самонастраивающиеся компиляторы, адаптированные к разнородным, реконфигурируемым многоядерным архитектурам, от суперкомпьютеров до встроенных систем.

.. как и остальные проекты под эгидой Collective TUNING .

Примечание: Написание «компиляторы - одна из самых сложных программ», как писал BlueRaja в комментариях, является преувеличением: есть очень простые компиляторы и очень сложные компиляторы. Но в теории компиляторов (если вы ее изучили) нет ничего эзотерического. GCC - сложная программа, которую можно понять как любую БОЛЬШУЮ , плохо документированную программу 1 . Так что, ризванхудда, не расстраивайтесь: начните изучать доступную документацию, а затем попросите разработчиков GCC (на IRC-канале GCC, как , предложенный nvl или список рассылки разработчиков GCC ), чтобы объяснить, что это такое. плохо (или не задокументирован).

  1. Фактически понимание программ является активной областью исследований.
7
ответ дан 16 December 2019 в 21:37
поделиться

Я бы посоветовал вам использовать GCC irc channel, он предназначен для обсуждения развития GCC.

1
ответ дан 16 December 2019 в 21:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: