lkml.org 
[lkml]   [2007]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 7/8] i386: bitops: Kill needless usage of __asm__ __volatile__
On Mon, 23 Jul 2007, Jeremy Fitzhardinge wrote:
> Trent Piepho wrote:
> > gcc also tries to count the number of instructions, to guess how large in
> > bytes the asm block is, as it could make a difference for near vs short
> > jumps, etc.
> >
>
> How does it do that? By looking for \n, ';', etc?

Yes:

Some targets require that GCC track the size of each instruction used in
order to generate correct code. Because the final length of an `asm' is
only known by the assembler, GCC must make an estimate as to how big it
will be. The estimate is formed by counting the number of statements in
the pattern of the `asm' and multiplying that by the length of the longest
instruction on that processor. Statements in the `asm' are identified by
newline characters and whatever statement separator characters are
supported by the assembler; on most processors this is the ``;''
character.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-07-23 23:09    [W:0.247 / U:0.556 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site