Skip to content

Commit

Permalink
[introspection] Skip verifying the objc_msgSend[Super]_stret on all p…
Browse files Browse the repository at this point in the history
…latforms. (#12939)

Now that macOS runs on ARM64 (and also the simulators soon), we need to have to same logic for all platforms.

Fixes:

    Introspection.iOSApiPInvokeTest
        [FAIL] Could not find the field 'objc_msgSend_stret' in /usr/lib/libobjc.dylib
        [FAIL] Could not find the field 'objc_msgSendSuper_stret' in /usr/lib/libobjc.dylib
        [FAIL] SymbolExists :   2 errors found in 5300 functions validated: objc_msgSend_stret, objc_msgSendSuper_stret
            Expected: 0
            But was:  2
                at Introspection.ApiPInvokeTest.SymbolExists() in /Users/builder/azdo/_work/1/s/xamarin-macios/tests/introspection/ApiPInvokeTest.cs:line 182
  • Loading branch information
rolfbjarne authored Oct 7, 2021
1 parent 9ebf14e commit b9de02c
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
7 changes: 7 additions & 0 deletions tests/introspection/ApiPInvokeTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,13 @@ protected virtual bool CheckForEnumParameter (MethodInfo mi, ParameterInfo pi)

protected virtual bool Skip (string symbolName)
{
switch (symbolName) {
// it's not needed for ARM64/ARM64_32 and Apple does not have stubs for them in libobjc.dylib
// also the linker normally removes them (unreachable due to other optimizations)
case "objc_msgSend_stret":
case "objc_msgSendSuper_stret":
return true;
}
return false;
}

Expand Down
2 changes: 1 addition & 1 deletion tests/introspection/Mac/MacApiPInvokeTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ protected override bool Skip (string symbolName)
case "SKTerminateForInvalidReceipt": // Only there for API compat
return !IsUnified;
}
return false;
return base.Skip (symbolName);
}

protected override bool SkipAssembly (Assembly a)
Expand Down
4 changes: 0 additions & 4 deletions tests/introspection/iOS/iOSApiPInvokeTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,6 @@ protected override bool Skip (string symbolName)
case "CVPixelBufferGetIOSurface":
case "CVPixelBufferCreateWithIOSurface":
return simulator && !TestRuntime.CheckXcodeVersion (11, 0);
// it's not needed for ARM64/ARM64_32 and Apple does not have stubs for them in libobjc.dylib
case "objc_msgSend_stret":
case "objc_msgSendSuper_stret":
return !simulator;

default:
// MLCompute not available in simulator as of Xcode 12 beta 3
Expand Down

7 comments on commit b9de02c

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 Tests failed catastrophically on Build (no summary found). 🔥

Result file $(TEST_SUMMARY_PATH) not found.

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ [CI Build] Tests passed on Build. ✅

Tests passed on Build.

API diff

✅ API Diff from stable

View API diff

API & Generator diff

API Diff (from PR only) (no change)
Generator Diff (only version changes)

Packages generated

View packages

🎉 All 218 tests passed 🎉

Pipeline on Agent XAMBOT-1025.BigSur
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 Tests failed catastrophically on VSTS: device tests tvOS 🔥

Not enough free space in the host.

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Tests were not ran (VSTS: device tests tvOS). ⚠️

Results were skipped for this run due to provisioning problems Azure Devops. Please contact the bot administrator.

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Tests were not ran (VSTS: device tests iOS). ⚠️

Results were skipped for this run due to provisioning problems Azure Devops. Please contact the bot administrator.

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❌ Tests failed on macOS Mac Mojave (10.14) ❌

Tests failed on Mac Mojave (10.14).

Failed tests are:

  • introspection
  • linksdk

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Tests passed on macOS M1 - Mac Big Sur (11.5) ✅

Tests passed

All tests on macOS X M1 - Mac Big Sur (11.5) passed.

Pipeline on Agent
[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#12939)

Please sign in to comment.