1. Pypy
  2. Untitled project
  3. pypy

Branches

shadowstack-perf

View source
shadowstack-perf
  • Contributors
    1. Loading...
Author Commit Message Date Builds
250+ commits behind default.
Armin Rigo
Tweaks.
Armin Rigo
Start to integrate the r15-for-exception branch...
Armin Rigo
hg merge r15-for-exception
Armin Rigo
Fix.
Armin Rigo
Tentative tweak. Will measure.
Armin Rigo
Improve the generated code somewhat.
Armin Rigo
Found and fixed the bug.
Armin Rigo
Temporarily add debugging aids. Should either be reverted or made more official...
Armin Rigo
Starts to look good, but tests are still failing.
Armin Rigo
hg merge default
Armin Rigo
Revert the last 4 commits, up to c292d7b6630f. It should be done with a proper merge of the branch r15-for-exception, at some point.
Armin Rigo
Fix trackgcroot for ignoring r15 in case it is used by rlib/register.py.
Armin Rigo
Hopefully fix all remaining places that are involved in C callbacks (including multi-threading). Simplify a bit the approach, with an explicit 'saved' value to carry around the callback's code.
Armin Rigo
No-op: make the code more regular.
Armin Rigo
Fix the x86 backend to not touch r15 for normal usage, but handle it as the exception marker.
Armin Rigo
Disable usage of the register for non-standalone translations.
Armin Rigo
In-progress: try to use r15 for signalling exceptions.
Armin Rigo
Complete pypy.rlib.register.
Armin Rigo
Mostly comments for now, describing the goal.
Armin Rigo
Disable usage of the register for non-standalone translations.
Armin Rigo
In-progress: try to use r15 for signalling exceptions.
Armin Rigo
Complete pypy.rlib.register.
Armin Rigo
Mostly comments for now, describing the goal.
Armin Rigo
Backed out changeset 31d4b032dd61, for now. It's subtly incorrect, at least because the JIT backend uses two consecutive entries to mean something special and doesn't clear them at function exit (see _call_footer_shadowstack).
Armin Rigo
Tentative: remove the clears at the start of every function. Needs careful tweaks to ensure that old, invalid pointers are not left behind after a collection.
Armin Rigo
Fix.
Armin Rigo
Fix.
Armin Rigo
Seems to give better performance this way.
Armin Rigo
Fix.
Armin Rigo
Fix.
Armin Rigo
Avoid useless stores. Not really unit-tested :-/ At least it seems that test_transformed_gc passes.
Armin Rigo
Rewrite the gc_push_roots/gc_pop_roots logic, first version. This acquires a bunch of locations at the start of the function, and releases them only at the end.