[introspection] Skip verifying the objc_msgSend[Super]_stret on all platforms. (#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
This commit is contained in:
Rolf Bjarne Kvinge 2021-10-07 20:15:54 +02:00 коммит произвёл GitHub
Родитель 9ebf14e85b
Коммит b9de02c457
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
3 изменённых файлов: 8 добавлений и 5 удалений

Просмотреть файл

@ -124,6 +124,13 @@ namespace Introspection
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;
}

Просмотреть файл

@ -63,7 +63,7 @@ namespace Introspection {
case "SKTerminateForInvalidReceipt": // Only there for API compat
return !IsUnified;
}
return false;
return base.Skip (symbolName);
}
protected override bool SkipAssembly (Assembly a)

Просмотреть файл

@ -59,10 +59,6 @@ namespace Introspection {
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