On 03/12/15 15:26, Jakub Jelinek wrote:
On Thu, Mar 12, 2015 at 02:02:37PM -0700, David Wohlferd wrote:
To wrap this up:

Like Ian said, the order of registers here apparently never changes.  I read
more into that comment than I should have.  For good luck, I experimented
with -fomit-frame-pointer, -ffixed-, etc, and nothing has any impact here.
The list is the list.

In fact, it turns out you can use this same format with register variables:

     register int x asm("3"); // i386: ebx

On some architectures, like e.g. powerpc, people often just use numbers
instead of say r<number> at least for the general purpose registers and
usually the internal register numbering matches it.
So, while using asm ("3") on x86 is something very unusual, on other targets
it can be quite common.
Yup. And as common as it may be, I find it makes reading the resulting assembly code far more difficult than it ought to be :(

But I won't start a rant on that issue right now ;-)

Jeff

Reply via email to