Компилятор делает это автоматически. После предложения Джестера я посмотрел на hexdump и обнаружил, что он был изменен с 0x0800 0020
на 0x0800 0021
Однако, если глобальный символ не был определен как .tpye foo, %function
или .thumb_func
, компилятор не изменит его значение, и он приведет к серьезной ошибке, так как Cortex M7 поддерживает только набор команд большого пальца.