Преобразование раздела .data (абсолютная адресация) в раздел .sdata (относительная адресация gp)

Есть ли простой способ указать сценарию компоновщика преобразовать раздел.data в.sdata? И, конечно же, изменение абсолютной адресации на относительную gp-адресацию (в моем случае набор инструментов gcc для MIPS)? У меня много кода и я ставлю __attribute__((section(".sdata"))) рядом с каждым глобальным var не вариант.

Мне известен флаг -Gn, но он пытается поместить КАЖДУЮ глобальную переменную в.sdata (даже те, у которых есть __attribute__((section(".some_sect_name"))) указаны рядом с ними, и я не хочу, чтобы это произошло).

Я хочу сказать сценарию компоновщика что-то вроде этого: "если вы видите глобальную переменную, без __attribute__((section(".some_sect_name"))) рядом - поместить в секцию.sdata (с относительной адресацией gp!), иначе оставить как есть ".

Благодаря!

0 ответов

Другие вопросы по тегам