| commit | 8d521bb16efec6f5f28139bfdeb8d4ac9a76224e | [log] [tgz] |
|---|---|---|
| author | Chris Lattner <sabre@nondot.org> | Sat Nov 13 20:03:48 2004 +0000 |
| committer | Chris Lattner <sabre@nondot.org> | Sat Nov 13 20:03:48 2004 +0000 |
| tree | 7d9d0540717483ee2a24044e7b2b8e759d56d6ff | |
| parent | 8c3e7b92af1647d9f21a13745040cf3a0bb38e45 [diff] |
Compile:
long long X3_2(long long Y) { return Y+Y; }
int X(int Y) { return Y+Y; }
into:
X3_2:
movl 4(%esp), %eax
movl 8(%esp), %edx
addl %eax, %eax
adcl %edx, %edx
ret
X:
movl 4(%esp), %eax
addl %eax, %eax
ret
instead of:
X3_2:
movl 4(%esp), %eax
movl 8(%esp), %edx
shldl $1, %eax, %edx
shll $1, %eax
ret
X:
movl 4(%esp), %eax
shll $1, %eax
ret
llvm-svn: 17705