This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/46076] [4.6 regression] constant propagation and compile-time math no longer happening versus 4.4 and 4.5
- From: "hubicka at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 19 Oct 2010 03:25:39 +0000
- Subject: [Bug middle-end/46076] [4.6 regression] constant propagation and compile-time math no longer happening versus 4.4 and 4.5
- Auto-submitted: auto-generated
- References: <bug-46076-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46076
--- Comment #5 from Jan Hubicka <hubicka at gcc dot gnu.org> 2010-10-19 03:25:37 UTC ---
Also renaming main() to main2() so GCC no longer can track the runtime
behaviour leads to:
0: 53 push %rbx
1: bb 00 00 00 00 mov $0x0,%ebx
6: ff d3 callq *%rbx
8: bf 00 00 00 00 mov $0x0,%edi
d: 0f b6 f0 movzbl %al,%esi
10: 31 c0 xor %eax,%eax
12: e8 00 00 00 00 callq 17 <main2+0x17>
17: ff d3 callq *%rbx
19: 0f b6 f0 movzbl %al,%esi
1c: bf 00 00 00 00 mov $0x0,%edi
21: 31 c0 xor %eax,%eax
23: 83 c6 01 add $0x1,%esi
26: bb 00 00 00 00 mov $0x0,%ebx
2b: e8 00 00 00 00 callq 30 <main2+0x30>
30: ff d3 callq *%rbx
32: bf 00 00 00 00 mov $0x0,%edi
37: 0f b6 f0 movzbl %al,%esi
3a: 31 c0 xor %eax,%eax
3c: e8 00 00 00 00 callq 41 <main2+0x41>
41: ff d3 callq *%rbx
43: 0f b6 f0 movzbl %al,%esi
46: bf 00 00 00 00 mov $0x0,%edi
4b: 31 c0 xor %eax,%eax
4d: 83 c6 01 add $0x1,%esi
50: e8 00 00 00 00 callq 55 <main2+0x55>
55: 31 c0 xor %eax,%eax
57: 5b pop %rbx
58: c3 retq
59: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
that is 89 bytes.
What is the problem with the proprietary and complex code?