[Bug target/26674] missed optimization / 128-bit arithmetic.

pluto at agmk dot net gcc-bugzilla@gcc.gnu.org
Wed Feb 20 09:48:00 GMT 2008



------- Comment #4 from pluto at agmk dot net  2008-02-20 09:48 -------
4.2.3 produces:

sqr_1:  xorl    %edx, %edx      # 45    *movdi_xor_rex64        [length = 2]
        movq    %rdi, %rax      # 11    *movdi_1_rex64/2        [length = 6]
        movq    %rdx, %rcx      # 40    *movdi_1_rex64/2        [length = 6]
        imulq   %rdi, %rcx      # 15    *muldi3_1_rex64/3       [length = 4]
        mulq    %rdi    # 18    *umulditi3_insn [length = 3]
        addq    %rcx, %rcx      # 17    *ashldi3_1_rex64/1      [length = 4]
        addq    %rdx, %rcx      # 19    *adddi_1_rex64/1        [length = 3]
        movq    %rcx, %rdx      # 20    *movdi_1_rex64/2        [length = 6]
        ret     # 43    return_internal [length = 1]

4.3-svn:

sqr_1:  movq    %rdi, %rax      # 35    *movdi_1_rex64/2        [length = 6]
        mulq    %rdi    # 13    *umulditi3_insn [length = 3]
        ret     # 41    return_internal [length = 1]


-- 

pluto at agmk dot net changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|4.1.2 4.2.0                 |4.1.2 4.2.3
      Known to work|                            |4.3.0


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



More information about the Gcc-bugs mailing list