diff options
| author | Kirill Smelkov <kirr@navytux.spb.ru> | 2012-11-16 00:04:56 +0400 |
|---|---|---|
| committer | Kirill Smelkov <kirr@navytux.spb.ru> | 2012-11-16 10:22:45 +0400 |
| commit | ab24aaeca303abadd987c2a4ab3a56efe755c37c (patch) | |
| tree | e7b682064790846ebc4203a6d7c54bdf0a2f5428 /tests2/36_array_initialisers.c | |
| parent | b2a02961b4407ca76db5a66ca5ae855cbfba4e8e (diff) | |
| download | tinycc-ab24aaeca303abadd987c2a4ab3a56efe755c37c.tar.gz tinycc-ab24aaeca303abadd987c2a4ab3a56efe755c37c.tar.bz2 | |
i386: We can change 'lea 0(%ebp),r' to 'mov %ebp,r'
Because that mov is 1 byte shorter, look:
int *func()
{
return __builtin_frame_address(0);
}
before patch:
00000000 <func>:
0: 55 push %ebp
1: 89 e5 mov %esp,%ebp
3: 81 ec 00 00 00 00 sub $0x0,%esp
9: 8d 45 00 lea 0x0(%ebp),%eax // <- here
c: e9 00 00 00 00 jmp 11 <func+0x11>
11: c9 leave
12: c3 ret
after patch:
00000000 <func>:
0: 55 push %ebp
1: 89 e5 mov %esp,%ebp
3: 81 ec 00 00 00 00 sub $0x0,%esp
9: 89 e8 mov %ebp,%eax // <- here
b: e9 00 00 00 00 jmp 10 <func+0x10>
10: c9 leave
11: c3 ret
Diffstat (limited to 'tests2/36_array_initialisers.c')
0 files changed, 0 insertions, 0 deletions
