Wine 64 bit

Josh DuBois duboisj at codeweavers.com
Tue May 5 13:44:21 CDT 2015


On 4/29/15 1:08 PM, Charles Davis wrote:
> I’m tempted to say that your fix will reduce the performance of the relays slightly (since we’re loading the XMM registers from memory instead of from registers), but then it occurred to me that since we loaded that chunk of memory recently anyway, it should be cached.
>
> My other concern is that as(1) is basically in maintenance mode now that we have Clang. (That’s why we still have bugs in it like the issue with ‘movq’ from registers.) I think Apple at some point wants to kill it off—or at least make -q the default.
I imagine that the performance hit will not be a major problem.  If it 
is important to preserve the current relay code in situations where the 
change is not necessary for compilation, I suppose it could be made 
conditional on gcc, or even on the version of as being used.  I agree 
that Apple's old as is probably on its last legs, but it's still in use 
and at present it still seems to be the easiest route to building 64-bit 
wine on OS X.  (Otherwise you need to use both GCC (for compilation) and 
Clang (for assembly), and also to modify the build to both use Clang as 
an assembler and make sure -gstabs+ is not present so that Clang's 
assembler won't choke on the unrecognized directives.)
> All right. But even with AJ’s suggestion (using separate wine32/wine64 directories for our DLLs), libwine itself still needs to be built fat, because it’s installed directly to $(libdir). For now, I think I’ll submit my patch to configure.
I was able to follow the WoW64 instructions on the winehq wiki and build 
a 32/64 wine install by just a sudo make install on OS X. Wine's 32-bit 
stuff went in /usr/local/lib and the 64-bit stuff in /usr/local/lib64 
(that latter dir had nothing but wine libs).  In your prior post you 
attached a configure patch that checked for __builtin_ms_va_list support 
as well as adding -pagezero_size,0x1000 to LDEXECFLAGS.  I've still only 
been using the last hunk of that patch - the pagezero stuff.  I didn't 
see the configure patch come across wine-patches.  If you're concerned 
the rest might not be accepted, maybe a patch with the pagezero stuff 
alone would make it now?

The prefix I created ran at least one 64-bit Windows application without 
apparent errors: I ran a 64-bit version of PilotEdit ( 
http://www.pilotedit.com/Download.html ).  The other things I tried 
crashed, but at least the installation allowed for some testing.

Since I've gotten an OS X wine install that runs a 64-bit windows app 
without using a patched set of build tools, I guess I'll submit the movq 
patch and see whether that gets in.  Maybe then it will be easier to 
tell how many 64-bit apps will actually run on OS X.



More information about the wine-devel mailing list