Я портирую программу для микросхемы ARM из компилятора IAR в gcc.
В исходном коде специальные операторы IAR, такие как __ segment_begin
и __ segment_size
, используются для получения соответственно начала и размера определенных сегментов памяти.
Есть ли способ сделать то же самое с GCC? Я просмотрел руководство GCC, но не смог найти ничего подходящего.
Дополнительные сведения:
Рассматриваемые сегменты памяти должны находиться в фиксированных местах, чтобы программа могла правильно взаимодействовать с определенными периферийными устройствами на микросхеме. Исходный код использует оператор __ segment_begin
для получения адреса этой памяти и __ segment_size
, чтобы гарантировать, что он не переполняет эту память.
Я могу достичь той же функциональности, добавляя переменные для обозначения начала и конца этих сегментов памяти, но если бы в GCC были аналогичные операторы, которые помогли бы минимизировать количество кода, зависящего от компилятора, мне пришлось бы писать и поддерживать.