Author: Armin Rigo <[email protected]> Branch: arm64 Changeset: r96920:b9d8f82099f7 Date: 2019-07-02 14:30 +0200 http://bitbucket.org/pypy/pypy/changeset/b9d8f82099f7/
Log: more missing optimizations diff --git a/rpython/jit/backend/aarch64/TODO b/rpython/jit/backend/aarch64/TODO --- a/rpython/jit/backend/aarch64/TODO +++ b/rpython/jit/backend/aarch64/TODO @@ -5,11 +5,15 @@ * stack check -We can try to make generate_quick_failure() emit two instructions less: -the two store_reg() [one in generate_quick_failure and the other in -push_gcmap]. Instead we'd load the values in known unused registers, -and the store_regs would occur inside self.failure_recovery_code -(which 'target' points to). +* We can try to make generate_quick_failure() emit two instructions less: + the two store_reg() [one in generate_quick_failure and the other in + push_gcmap]. Instead we'd load the values in ip2 and ip3, and the + store_regs would occur inside self.failure_recovery_code + (which 'target' points to). + + +* use STP instead of STR in all long sequences of STR. Same with LDR + * here's what gcc uses to acquire and release a lock, instead of mc.DMB in callbuilder.py. It would make the control flow mess easier, too, _______________________________________________ pypy-commit mailing list [email protected] https://mail.python.org/mailman/listinfo/pypy-commit
