32ptr-on-64bit

View source
32ptr-on-64bit
  • Contributors
    1. Loading...
Author Commit Message Date Builds
142 commits behind default.
Armin Rigo
hg merge default
Armin Rigo
hg merge default
Armin Rigo
Fix test_mapdict.
Armin Rigo
merge default. Untested.
Armin Rigo
Merge default.
Armin Rigo
Write a test.
Armin Rigo
Fix.
Armin Rigo
This test used to pass probably by chance only. There is no way that a global list can grow during one call to self.interpret(), and then continue to be usable from there during an unrelated call to self.interpret().
Armin Rigo
Initially clearing the nursery: this was lost during the merge.
Armin Rigo
Fix.
Armin Rigo
Add "immortal=True" here.
Armin Rigo
Merge default into this branch. There are some test failures still.
Armin Rigo
Perform a dummy merge to update mercurial's view of this branch, corresponding to the real merge that was done in a874ba0b58e5 with svn.
Armin Rigo
Change the value of DEBUGFLAGS in non-asmgcc builds to remove -O1. This is fine with the extra stack that we get by the recent change to c/src/stack.h.
Armin Rigo
Merge r77941 from trunk.
Armin Rigo
When compiling on gcc with -O0, we really need more stack. Thanks antocuni for finding out the proper #ifdefs.
Armin Rigo
Flow graph fix.
Armin Rigo
Revert this part of the change. ObjectMixin is needed by interpreter/typedef.py.
Armin Rigo
Upgrade the previous hack by not using 'rerased' at all in the compressptr case. Instead, point to a small W_Root subclass that itself contains the pointer to the list.
Armin Rigo
Update mapdicts to only use rerased for the last field, which allows all other fields to be compressed.
Armin Rigo
Update the limit to a recently-useful number.
Armin Rigo
Test and fix: GCREF may point to a var-sized object, so it cannot be compressed.
Armin Rigo
Documentation.
Armin Rigo
Fix test.
Armin Rigo
Fix for jit.metainterp.test.test_dict. Reverts the signature of ll_kvi() in rdict.py to what it was, and in case of 'dict.items()', fish for the correct tuple type manually from inside the function.
Armin Rigo
More fixes.
Armin Rigo
Fix.
Armin Rigo
Fix.
Armin Rigo
Enable --compressptr in -Omem translations.
Armin Rigo
Merge trunk up to r77829.
Armin Rigo
Tests and fixes.
Armin Rigo
Test and fix.
Armin Rigo
Tweaks.
Armin Rigo
Merge r77716 from trunk.
Armin Rigo
Add an _annenforcearg_.
Armin Rigo
Add a comment.
Armin Rigo
Progress.
Armin Rigo
Hack goes on.
Armin Rigo
Fix fix fix...
Armin Rigo
Bah.
Armin Rigo
Rename {hide_into,show_from}_adr32 into *_ptr32, which matches the current implementation better.
Armin Rigo
Fix: confusion between addresses and pointers.
Armin Rigo
Fix this test, now that we can (slowly) run test_transformed_gc with the gc flag DEBUG=True.
Armin Rigo
Figured that I don't need "addr.hiddengcref32[0]" after all.
Armin Rigo
Intermediate check-in.
Armin Rigo
Whack whack whack until test_transformed_gc starts to run.
Armin Rigo
Fix test_gc.
Armin Rigo
Still random progress.
Armin Rigo
In-progress: make HiddenGcRef32 a Ptr(GcOpaque), like GCREF.
Armin Rigo
Check-in before I think about changing the approach.
Armin Rigo
In case of compressptr, complain (crash with FixedSizeObjectTooLarge) if allocating a fixed-size object that is too large to fit in the ArenaCollection. The default limit should probably be increased quite a bit.
Armin Rigo
Finish the basic version. test_newgc starts to pass.
Armin Rigo
Random progress.
Armin Rigo
In-progress.
Armin Rigo
A branch in which I play around with the idea of compressing 64-bit pointers into 32-bit integers. The "compression" is simply taking the pointer value and shifting it 3 bits, so it is limited to a 32GB heap.