The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"В компиляторе G++ обеспечена поддержка C++17"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для контроля за появлением новых сообщений - перед выходом жмите "Пометить прочитанным".
. "В компиляторе G++ обеспечена поддержка C++17" –1 +/
Сообщение от Аноним (-), 14-Янв-17, 02:51 
Для С++ существуют статические анализаторы, например http://clang-analyzer.llvm.org .

g++ векторизирует эту функцию, вот код сгенерированный для тела цикла:

// void square(int* const dest, const int* const source, size_t lenght)
//{
//  for (size_t i = 0; i < lenght; ++i)
//    dest[i] = source[i] * source[i];
//}

<square(int*, int const*, unsigned long)>:
               ...
start:
    movdqu (%rsi,%rax,1),%xmm1
    add    $0x1,%rcx
    movdqa %xmm1,%xmm2
    pmuludq %xmm1,%xmm2
    psrlq  $0x20,%xmm1
    pshufd $0x8,%xmm2,%xmm0
    pmuludq %xmm1,%xmm1
    pshufd $0x8,%xmm1,%xmm1
    punpckldq %xmm1,%xmm0
    movdqu %xmm0,(%rdi,%rax,1)
    add    $0x10,%rax
    cmp    %rcx,%r9
    ja     start
    ...

И распараллелить автоматически тоже может, см. OpenMP.

>> И весь stl построен на указателях, оптимизация тоже не возможна.

Ты или неуч или провокатор.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
В компиляторе G++ обеспечена поддержка C++17, opennews, 13-Янв-17, 09:58  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру