1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| Dump of assembler code for function main(): 0x00401531 <+0>: lea 0x4(%esp),%ecx 0x00401535 <+4>: and $0xfffffff0,%esp 0x00401538 <+7>: pushl -0x4(%ecx) 0x0040153b <+10>: push %ebp 0x0040153c <+11>: mov %esp,%ebp 0x0040153e <+13>: push %ebx 0x0040153f <+14>: push %ecx 0x00401540 <+15>: sub $0x10,%esp 0x00401543 <+18>: call 0x402180 <__main> => 0x00401548 <+23>: movl $0x406071,0x4(%esp) 0x00401550 <+31>: movl $0x6ff03a20,(%esp) 0x00401557 <+38>: call 0x401c24 <std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)> 0x0040155c <+43>: mov %eax,%ebx 0x0040155e <+45>: call 0x4014c7 <test()> 0x00401563 <+50>: mov %eax,(%esp) 0x00401566 <+53>: mov %ebx,%ecx 0x00401568 <+55>: call 0x401c4c <std::ostream::operator<<(int)> 0x0040156d <+60>: sub $0x4,%esp 0x00401570 <+63>: movl $0x401c2c,(%esp) 0x00401577 <+70>: mov %eax,%ecx 0x00401579 <+72>: call 0x401c54 <std::ostream::operator<<(std::ostream& (*)(std::ostream&))> 0x0040157e <+77>: sub $0x4,%esp 0x00401581 <+80>: movl $0x40607a,0x4(%esp) 0x00401589 <+88>: movl $0x6ff03a20,(%esp) 0x00401590 <+95>: call 0x401c24 <std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)> 0x00401595 <+100>: movl $0x401c2c,(%esp) 0x0040159c <+107>: mov %eax,%ecx 0x0040159e <+109>: call 0x401c54 <std::ostream::operator<<(std::ostream& (*)(std::ostream&))> 0x004015a3 <+114>: sub $0x4,%esp 0x004015a6 <+117>: mov $0x0,%eax 0x004015ab <+122>: lea -0x8(%ebp),%esp 0x004015ae <+125>: pop %ecx 0x004015af <+126>: pop %ebx 0x004015b0 <+127>: pop %ebp 0x004015b1 <+128>: lea -0x4(%ecx),%esp 0x004015b4 <+131>: ret End of assembler dump.
Dump of assembler code for function test(): 0x004014c7 <+0>: push %ebp 0x004014c8 <+1>: mov %esp,%ebp 0x004014ca <+3>: sub $0x28,%esp 0x004014cd <+6>: movl $0xa,-0x10(%ebp) 0x004014d4 <+13>: lea -0x18(%ebp),%eax 0x004014d7 <+16>: mov %dl,0x4(%esp) 0x004014db <+20>: lea -0x10(%ebp),%edx 0x004014de <+23>: mov %edx,(%esp) 0x004014e1 <+26>: mov %eax,%ecx 0x004014e3 <+28>: call 0x4015b6 <std::shared_ptr<int>::shared_ptr<int, test()::<lambda(int*)> >(int *, <lambda(int*)>)> 0x004014e8 <+33>: sub $0x8,%esp 0x004014eb <+36>: lea -0x18(%ebp),%eax 0x004014ee <+39>: mov %eax,%ecx 0x004014f0 <+41>: call 0x4043c8 <std::shared_ptr<int>::~shared_ptr()> 0x004014f5 <+46>: movl $0x40606a,0x4(%esp) 0x004014fd <+54>: movl $0x6ff03a20,(%esp) 0x00401504 <+61>: call 0x401c24 <std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)> 0x00401509 <+66>: mov %eax,%edx 0x0040150b <+68>: mov -0x10(%ebp),%eax 0x0040150e <+71>: mov %eax,(%esp) 0x00401511 <+74>: mov %edx,%ecx 0x00401513 <+76>: call 0x401c4c <std::ostream::operator<<(int)> 0x00401518 <+81>: sub $0x4,%esp 0x0040151b <+84>: movl $0x401c2c,(%esp) 0x00401522 <+91>: mov %eax,%ecx 0x00401524 <+93>: call 0x401c54 <std::ostream::operator<<(std::ostream& (*)(std::ostream&))> 0x00401529 <+98>: sub $0x4,%esp 0x0040152c <+101>: mov -0x10(%ebp),%eax 0x0040152f <+104>: leave 0x00401530 <+105>: ret End of assembler dump.
|