Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Четверг
21 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры AVR
1015058
Топик полностью
maleon
(30.06.2020 11:09, просмотров: 458)
ответил
fk0
на
Не угадал. Там оптимизация -- без операции с LOC_CONTR получается два раза подряд AND с одной константой, который оптимизируется до одного раз. При наличии LOC_CONTR константы разные и есть два AND. Но common subexpression elimination явно не дорабатывает, потому, что во втором случае можно объединить два AND в один и выкинуть STD/LDD. Возможно, автор отключил оптимизацию...
Пробовал заменить на PultFlags &=0xE6; в результате та же фигня, один в один. Откуда второй ANDI R16, 0xE7 непонятно
Ответить