[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Stack Overflow question about jmp

From: grischka
Subject: Re: [Tinycc-devel] Stack Overflow question about jmp
Date: Sun, 22 Sep 2013 18:16:06 +0200
User-agent: Thunderbird (Windows/20090812)

Thomas Preud'homme wrote:
So I looked at it and the reason it works on x86_64 but not on i386 target is that for i386 target it only works when I386_ASM_16 is defined (16-bit support). It seems from (i386|x86_64)-asm.h that jmp can take a register (such as %eax) instead of an address (*%eax). I guess in one case (register) it does a jump relative to the beginning of the segment while for the address case it's an absolute jump at the address stored in the register.

I have no idea what the '*' means with "jmp *%eax" but according
to gcc it doesn't make a difference whether or not it is there.
(both emit FFE0).

Beyond that

    error: unknown opcode 'jmp'

is just a rather bad message.  Maybe it could say something like

    error: bad operand '%eax' with opcode 'jmp'

--- grischka

reply via email to

[Prev in Thread] Current Thread [Next in Thread]