This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/16978] Inefficient 32x32=>64 multiply and add on x86-32


------- Additional Comments From tomstdenis at iahu dot ca  2004-08-11 13:52 -------
Note that GCC 3.4.1 doesn't share this bug... it produces 
 
.L5: 
        movl    (%ebp), %eax 
        mull    (%edi) 
        addl    %eax, %ebx 
        movl    -4(%ebp), %eax 
        adcl    %edx, %esi 
        mull    4(%edi) 
        addl    %eax, %ebx 
        movl    -8(%ebp), %eax 
        adcl    %edx, %esi 
        mull    8(%edi) 
... 
 
So it's just a problem in the 3.3.x tree. 
 
Also note in both cases I'm using 
 
gcc -I./ -Wall -W -Wshadow -Wsign-compare -O3 -funroll-loops 
-fomit-frame-pointer -S test.c 
 
 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Inefficient 32x32=>64       |Inefficient 32x32=>64
                   |multiply and add on x86-32  |multiply and add on x86-32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16978


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]