qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC PATCH 0/4] per-object libraries


From: Richard Henderson
Subject: Re: [Qemu-devel] [RFC PATCH 0/4] per-object libraries
Date: Wed, 19 Jun 2013 12:31:51 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6

On 06/19/2013 11:52 AM, Paolo Bonzini wrote:
>> > Do we really need it for modules?  I'm not sure.  Actually, in a modern
>> > world, I'm not really sure libtool is needed if you only count "major"
>> > operating systems.
> Do you also count one major proprietary operating system?  Unfortunately
> mingw still requires magic to create shared libraries.

Does it?  It sure doesn't seem like it to me:

----

$ cat z.c
int __attribute__((dllexport)) foo(int x)
{
  return x + 1;
}

$ x86_64-w64-mingw32-gcc -shared -o z.dll z.c

$ file z.dll
z.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows

$  x86_64-w64-mingw32-objdump.exe -p z.dll
...
There is an export table in .edata at 0x6788c000

The Export Tables (interpreted .edata section contents)

Export Flags                    0
Time/Date stamp                 51c20613
Major/Minor                     0/0
Name                            000000000000c032 z.dll
Ordinal Base                    1
Number in:
        Export Address Table            00000001
        [Name Pointer/Ordinal] Table    00000001
Table Addresses
        Export Address Table            000000000000c028
        Name Pointer Table              000000000000c02c
        Ordinal Table                   000000000000c030

Export Address Table -- Ordinal Base 1
        [   0] +base[   1] 1470 Export RVA

[Ordinal/Name Pointer] Table
        [   0] foo

----

I didn't happen to happen to have the 32-bit mingw installed in this VM, but I
don't imagine it's much different from the 64-bit version.


r~



reply via email to

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