Встроенный рабочий стол IAR. Где находится __iar_program_start?

#iar #stm8

#iar #stm8

Вопрос:

В коде для приложения STM8 есть строка

 extern void __iar_program_start(void);
  

теперь я искал, и эта функция нигде не найдена.
Что это такое и где находится??

Спасибо

Комментарии:

1. Это точка входа в программу, обычно в cstartup.s . Я предлагаю вам прочитать руководства IAR (как для ide, так и для компилятора).

Ответ №1:

Нашел его в модуле, вызываемом cstartup_M.o внутри библиотеки, которая является частью установки IAR tool.

В моем случае вызывается библиотека rt7M_tl.a , но это, вероятно, зависит от вашего целевого процессора.

Ответ №2:

Эти функции могут генерироваться для C-версии кода, потому что этот тип инструкций вы можете найти в сборке.

 __iar_program_start:
        LDW     X, #CSTACK$$Limit-1     ; Set stackpointer
        LDW     SP, X