--- Comment #5 from ubizjak at gmail dot com 2008-04-21 07:26 ---
Not a regression, so the fix won't be backported on release branches.
--
ubizjak at gmail dot com changed:
What|Removed |Added
---
--- 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
--- Comment #3 from pluto at agmk dot net 2006-10-22 17:44 ---
recent 4.2 produces worse %rcx setup code.
previously:
xorl%edx, %edx
movq%rdx, %rcx
now:
movq%rdi, %rax
sarq$63, %rax
movq%rax, %rcx
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26674
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-03-14 14:00 ---
Testcase:
typedef int __int128 __attribute__((mode(TI)));
__int128 foo(long x)
{
return x*(__int128)x;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26674
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-03-14 13:58 ---
Confirmed. The asm matches what we get from expand unfortunately.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
--
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
Severity|normal |enhancement
Component|other |target