-
Notifications
You must be signed in to change notification settings - Fork 5.1k
[mono] Force AOT+interpreter for iOSSimulator arm64 library test local build #76551
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Tagging subscribers to this area: @directhex Issue DetailsWhen building library tests on iOSSimulator arm64, runtime/src/mono/mono/mini/tramp-arm64.c Line 571 in 7e175e6
./build.sh -s mono+libs -os iOSSImulator -arch arm64 -c Debug ./dotnet.sh build /t:Test /p:TargetOS=iOSSimulator /p:TargetArchitecture=arm64 /p:Configuration=Debug src/libraries/System.Buffers/tests
iOSSimulator arm64 doesn't support JIT, so we need to force AOT+interpreter. This PR sets those two properties by default for library test builds.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Do you plan to update the samples and functional tests too?
3092e86
to
2cb3e28
Compare
9ca3960
to
f27b1ae
Compare
/azp run runtime-extra-platforms |
Azure Pipelines successfully started running 1 pipeline(s). |
@mdh1418 can you bring this up to date and if it's all good, merge? |
…noForceInterpreter properties
…OS pipelines" This reverts commit f27b1ae15a6434e95415f30e7e01c74258e3046c.
e6c6c04
to
c3926ed
Compare
/azp run runtime-ioslike,runtime-ioslikesimulator |
Azure Pipelines successfully started running 2 pipeline(s). |
I believe from offline discussion, the functional tests usage of For the samples, I briefly tried to make some of the samples run on arm64 sim for iOS but it seems to need more for them to work. As such, I think keeping the scope of this PR to affect running library tests on iOS Arm64 device/sim locally is better for now to get it in. |
The failing test on iOSlike is filed at #78380 |
When building library tests on iOSSimulator arm64,
Thread 6: EXC_BAD_ACCESS (code=1, address=0x0)
was being hit atruntime/src/mono/mono/mini/tramp-arm64.c
Line 571 in 7e175e6
./build.sh -s mono+libs -os iOSSImulator -arch arm64 -c Debug
./dotnet.sh build /t:Test /p:TargetOS=iOSSimulator /p:TargetArchitecture=arm64 /p:Configuration=Debug src/libraries/System.Buffers/tests
iOSSimulator arm64 doesn't support JIT, so we need to force AOT+interpreter.
This PR does the following to improve local development experience:
Sets
RunAOTCompilation
to true (if unset) automatically for iOS/tvOS device/sims arm64Sets
MonoForceInterpreter
to true (if unset) automatically for iOS/tvOS simulators arm64Sets
MonoAotOption
"Interp"
ifMonoForceInterpreter
is set.Now, contributors can run library tests for iOSlike arm64 platforms without manually specifying
RunAOTCompilation=True
MonoForceInterpreter=True
, making the library testing experience more uniform.