iOS JIT/AOT

Xamarin states that JIT compilation is disallowed on iOS (http://docs.xamarin.com/guides/ios/advanced_topics/limitations/); however, the iOS agreement (to the best of my knowledge) does not say this. Perhaps it's because I only scanned the agreement; or perhaps the agreement was recently updated.

"An Application may not download or install executable code. Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple's built- in WebKit framework, provided that such scripts and code do not change the primary purpose of the Application by providing features or functionality that are inconsistent with the intended and advertised purpose of the Application as submitted to the App Store."

It seems to explicitly prohibit interpreting/compiling downloaded code (with the exception being JS).

Can anyone clarify this?

Posts

  • RolfBjarneKvingeRolfBjarneKvinge USXamarin Team Xamurai

    Apple disallows it on a hardware level - it's not possible to write to executable memory (which a JIT has to do) from user code.

Sign In or Register to comment.