Итак, я создаю собственный бэкэнд для GCC для процессора. Этот процессор имеет 4 адресных пространства: локальное, глобальное, ммм и ммр. Я хочу сделать так, чтобы при написании кода на c вы могли сделать это:
int global x = 5;
, что приведет к тому, что компилятор выплюнет инструкцию, подобную этой:
ldi.g %reg, 5
Я знаю, что некоторые процессоры, такие как blackfin и MeP, делают что-то похожее на это, поэтому я думаю, что это возможно, однако я понятия не имею, как это сделать. Техника, которая должна позволять мне это делать, - это переменный атрибут .
Любые предложения о том, как я мог бы сделать это?