bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/23854] -no-pie -export-dynamic corrupts binary


From: stsp at users dot sourceforge.net
Subject: [Bug ld/23854] -no-pie -export-dynamic corrupts binary
Date: Sun, 04 Nov 2018 21:40:35 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=23854

--- Comment #2 from Stas Sergeev <stsp at users dot sourceforge.net> ---
(In reply to H.J. Lu from comment #1)
> dpmi.o has:
> 
>     8f69:       8b 83 00 00 00 00       mov    0x0(%ebx),%eax   8f6b:
> R_386_GOT32X      DPMI_return_from_realmode
>     8f6f:       66 05 00 48             add    $0x4800,%ax
>     8f73:       66 2b 83 00 00 00 00    sub    0x0(%ebx),%ax    8f76:
> R_386_GOT32X      DPMI_dummy_start
>     8f7a:       66 89 46 30             mov    %ax,0x30(%esi)
These functions are not from dpmi.c, they
are from another translation unit. The function
of interest is "do_dpmi_int" - it gets corrupted,
as my test-case shows.

> Does dpmi.o contain normal i386 code?
Yes, but not the ones you pointed to.
These should be undefined in dpmi.c, and
are actually written in 16bit asm.
Please inspect "do_dpmi_int" instead - it
is a valid C func from dpmi.o.
You can see from my .gdbinit script where
the corruption actually happens.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

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