Useless %esp manipulation; omitting "l" suffix in assembly output; getting the address of a label from another function.

Mark J Roberts mjr@znex.org
Fri Apr 11 02:00:00 GMT 2003


Richard Henderson:
> I disagree about legibility.  And, you've no idea how this
> affects various legacy assemblers.

Maybe this could be an option? I imagine many people don't use the
suffixes and would naturally prefer to see more familiar output.

If it's too ugly to implement this in gcc, I guess I'll throw a perl
script together and stick that in my compile scripts.

> No thanks.  There are several other solutions you can use here.

Nothing quite as simple though. There's

	goto *(void *[]){&&i0, &&i1, &&i2, &&i3}[n];

which is generic and also the more limited

	goto *(addr ?: &&l0); /* special case */

that I can think of, and I suppose I'll end up doing the latter as
it seems a little quicker.



More information about the Gcc mailing list