Комментарии 3
у них ассемблер проще и понятнее, чем у ARM
Ну как сказать…
AVR
mov r18,r24
mov r19,r25
subi r18,lo8(-(1))
sbci r19,hi8(-(1))
cp r24,r18
cpc r25,r19
ARM:
adds r3, r0, #1
cmp r3, r0
Опять же, если взять нормальный компилятор, а не времён мезозоя, получим 3 инструкции вместо 5.
alwaysTrue_unsigned(unsigned int):
subs.w r0, r0, #-1
it ne
movne r0, #1
+4
))) тоже игрался арифмометром таким же образом
0
А вот если реально нашел баг например в clang, куда писать? На bugs.llvm.org без регистрации писать не дают, на письмо на адрес, куда предлагают писать для получения аккаунта, что-то не отвечают. В почтовый список рассылки написал lists.llvm.org/pipermail/llvm-dev/2020-October/146148.html и никакой реакции.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
К вопросу о сложении или как я нашел ошибку в gcc (на самом деле нет)