ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
29 марта
722799 Топик полностью
VLLV (25.12.2016 00:05, просмотров: 172) ответил SciFi на Нормальный компилятор много чего выкинет без всяких инлайнов. А вот эта возня с макросами с целью якобы что-то там ускорить - это трэш, угар и преждевременная оптимизация.
что он там выкинет, если функция ногодрыга окажется в другой файле? Недавно порезвился с макросами ST M0, вылезло предупреждение о сдвиге на отрицательную величину :)  #define SET_AFR(PORT, IO, AFR) do { \ if (IO<=7) GPIO##PORT->AFRL= \ (GPIO##PORT->AFRL &~(0xfUL<<(IO*4))) | \ AFR<<(IO*4); \ else GPIO##PORT->AFRH= \ (GPIO##PORT->AFRH&~(0xfUL<<((IO-8)*4)))|\ AFR<<((IO-8)*4); } while (0)