Как работает указатель стека

Я пытаюсь сделать многопоточное ядро ​​для Atmega328P Micro и для этого мне нужно знать, как работает указатель стека.

-2

Решение

Скорее всего, ваши функции правильно встроены, так что все на самом деле делается прямо в setup(), без вызовов функций. Если вы хотите принудительно отключить встраивание для них (чтобы увидеть изменение указателя стека), вы можете применить gcc noinline приписывать.

void __attribute__ ((noinline)) func1() {
...
}

Если это все еще не работает, возможно, gcc все равно применяет оптимизацию хвостового вызова. В этом случае простой способ сделать ваши функции не склонными к такой оптимизации — это напечатать SP как до, так и после вызов.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector