Re: Pushes, Pops, NOPS

Ken Rose <kenrose@tfb.com>
8 Dec 2003 00:25:34 -0500

          From comp.compilers

Related articles
Pushes, Pops, NOPS vbjohny@yahoo.com (2003-12-03)
Re: Pushes, Pops, NOPS Barak.Zalstein@ParthusCeva.com (Barak Zalstein) (2003-12-08)
Re: Pushes, Pops, NOPS tmk@netvision.net.il (2003-12-08)
Re: Pushes, Pops, NOPS nick.roberts@acm.org (Nick Roberts) (2003-12-08)
Re: Pushes, Pops, NOPS kenrose@tfb.com (Ken Rose) (2003-12-08)
Re: Pushes, Pops, NOPS vbdis@aol.com (2003-12-08)
Re: Pushes, Pops, NOPS lex@cc.gatech.edu (Lex Spoon) (2003-12-13)
| List of all articles for this month |

From: Ken Rose <kenrose@tfb.com>
Newsgroups: comp.compilers
Date: 8 Dec 2003 00:25:34 -0500
Organization: Posted via Supernews, http://www.supernews.com
References: 03-12-032
Keywords: code, optimize
Posted-Date: 08 Dec 2003 00:25:34 EST

Kalyan wrote:


<code snipped>


> If I added some "NOPS" in between each of the instructions above just
> to make the code look bigger, is there any option while compiling with
> GCC which would eliminate all those unnecessary "NOPS" and then
> convert the remaining code to binary?


No. GCC doesn't understand what's inside an asm, beyond the minimum
necessary to substitute operands.


BTW, you should tell it that you've clobbered all those registers. Do
something like


asm("whatever" : : "esi" "eax" "ebx" "ecx" "edx");


so it doesn't fantasize that it knows what's there. (or is the
destination first in x86 GAS? That would remove several of those.)


I may have slightly mangled the syntax, check the manual.


    - ken


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.