[EMAIL PROTECTED] tmp]$ cat jump.s
        call    *(%ebx)
        lcallw  *(%ebx)
        jmp     *(%ebx)
        ljmpw   *(%ebx)
[EMAIL PROTECTED] tmp]$ gcc -c -m32 jump.s
[EMAIL PROTECTED] tmp]$ objdump -dw -Mintel jump.o

jump.o:     file format elf32-i386


Disassembly of section .text:

00000000 <.text>:
   0:   ff 13                   call   DWORD PTR [ebx]
   2:   66 ff 1b                call   DWORD PTR [ebx]
   5:   ff 23                   jmp    DWORD PTR [ebx]
   7:   66 ff 2b                jmp    DWORD PTR [ebx]
[EMAIL PROTECTED] tmp]$

There are 2 problems:

1. Disassembler treats near/far call/jump the same.
2. Assembler doesn't support far call/jump. I don't think assembler supports
far address at all.

-- 
           Summary: Far call/jump aren't supported in Intel mode
           Product: binutils
           Version: 2.20 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gas
        AssignedTo: unassigned at sources dot redhat dot com
        ReportedBy: hjl dot tools at gmail dot com
                CC: bug-binutils at gnu dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=6993

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to