iOS natively supports JIT (by which we mean writable and executable memory) but Apple locks it down to only two use cases:
The JavaScript engine in Safari
Support for running a debugger
AltStore launches a debugger and connects it to your phone. Even though it’s not actually doing anything with a debugger, that’s enough to convince iOS to let your app use memory that’s both writable and executable (the key feature needed for JIT).
Without JIT you need to either resort to a slower form of emulation or do something creative.
I was just pointing out that OPs list was incomplete. Also theoretically someone could include altjit in their app because the App Store guidelines don’t explicitly say you can’t (ofc this would most likely not work).
So you mean iOS doesn’t natively support JIT for App Store apps and requires hacky workarounds?
iOS natively supports JIT (by which we mean writable and executable memory) but Apple locks it down to only two use cases:
AltStore launches a debugger and connects it to your phone. Even though it’s not actually doing anything with a debugger, that’s enough to convince iOS to let your app use memory that’s both writable and executable (the key feature needed for JIT).
Without JIT you need to either resort to a slower form of emulation or do something creative.
I was just pointing out that OPs list was incomplete. Also theoretically someone could include altjit in their app because the App Store guidelines don’t explicitly say you can’t (ofc this would most likely not work).