Amaury wrote:
>Well, not C only code. There are 140 occurrences of "cast_adr_to_int" in 
>RPython code...

OK, this is really helpful.  It's exactly the kind of info I was hoping to hear 
when starting this thread, and what I was looking for on the web site before 
that.

I the spirit of getting all this info accessible on the web site, I'm going to 
try and summarize it.  I originally went looking for this at 
http://doc.pypy.org/en/latest/windows.html so maybe you can add this there.  I 
also suggest, since you want Windows volunteers, you add a greyed out win 64 
entry to http://pypy.org/download.html#default-with-a-jit-compiler like you did 
for the Linux ARM version, but add a link titled "Needs your help" to this info 
as well.  The curious will click.

This took more emails than I expected to figure this out, so thanks to everyone 
who spent the time and provided the needed details.


-Roger


Windows 64

The Windows 64 build is not working because of a couple of issues.

1. The size of long is different on Linux versus Windows, and that affects code 
that moves eight byte pointers to longs or back (see 
http://en.wikipedia.org/wiki/64_bit#64-bit_data_models).  Most of the C code 
has been reviewed and fixed by replacing the affected longs with ptrdiff_t.  

The RPython code has the same issue.  If you search *py files for 
cast_adr_to_int and cast_ptr_to_int, and their inverses cast_int_to_add, 
cast_int_to_ptr, there are over a hundred cases, although half are in test 
code.  There are even more cast_int* matches, some of which might need 
changing.  You'll need to run the tests, make some changes, and then run the 
tests again to verify the change .  You'll want to start with rpython before 
doing pypy.

2. rpython/jit/backend/x86: this jit code might need some adjustment to how 
win64 handles frames.


Running tests will be something like "~/pypy$ py.test rpython" 
(http://doc.pypy.org/en/latest/getting-started-dev.html#running-pypy-s-unit-tests).

So it's download, get the dependencies (including pytest), translate (build), 
test, and then you're on your way.



If you'd like something simpler to get started, have a look at 
http://buildbot.pypy.org/summary?builder=own-win-x86-32.  Fixing these helps 
both the win32 and the win64 builds!
_______________________________________________
pypy-dev mailing list
pypy-dev@python.org
http://mail.python.org/mailman/listinfo/pypy-dev

Reply via email to