GCC: извращения с вращением

А компилятор сделает лучше

Неоднократно встречаю такие объявления в заголовочных файлах (это особенно характерно для всяких «домашних» криптографических библиотек): inline uint32_t rol(uint32_t x, uint8_t shift) { #if defined(__GNUC__) && defined(__i386__) __asm__("roll %%cl,%0" :"=r" (x) :"0" (x),"c" (shift)); return x; #else return (x << shift) | (x >> (32 – shift)); #endif } Так вот: так делать не надо. GCC [...]

← Вернуться к полной версии записи «GCC: извращения с вращением»…

Автор: ; опубликовано в: C/C++; метки: C/C++, gcc, оптимизация
22
Мар
2009

RSS Комментарии к статье «GCC: извращения с вращением» (1)  »

  1. йцукен

    Привет :)

    У тебя интересный блог – “аффтар, пеши исчо” и не смотри на малое количество комментов %)

Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.

Оставить комментарий к записи «GCC: извращения с вращением»

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя

गते गते पारगते पारसंगते बोधि स्वाहा