https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80817

--- Comment #3 from Joost VandeVondele <Joost.VandeVondele at mat dot ethz.ch> 
---
If I compile with -m32

gcc -std=c++11 -m32 -S -O3  test.cpp

I get 

        .cfi_startproc
        subl    $12, %esp
        .cfi_def_cfa_offset 16
        movl    16(%esp), %ecx
        fildq   (%ecx)
        fistpq  (%esp)
        movl    (%esp), %eax
        movl    4(%esp), %edx
        addl    $1, %eax
        adcl    $0, %edx
        movl    %eax, (%esp)
        movl    %edx, 4(%esp)
        fildq   (%esp)
        fistpq  (%ecx)
        addl    $12, %esp
        .cfi_def_cfa_offset 4
        ret
        .cfi_endproc


Is the above expected ? This causes a measurable slowdown in the piece of code
I'm looking at.

Reply via email to