Skip to content

[mono] Failing runtime JIT/SIMD/Vector3Interop_r/ro tests on osx-arm64. #96051

@matouskozak

Description

@matouskozak

Failures in JIT/SIMD/Vector3Interop_r/ro on osx-arm64 with miniJIT and interpreter.

Log:

nativeCall_PInvoke_CheckVector3Size: sizeof(Vector3) == 12
nativeCall_PInvoke_Vector3Arg:
    iVal 123
    sumOfEles(1.000000, 2.000000, 3.000000) = 6.000000
    str  abcdefg
    sumOfEles(10.000000, 11.000000, 12.000000) = 33.000000
PInvoke Vector3Arg_Unix test failed
Xunit.Sdk.EqualException: Assert.Equal() Failure: Values differ
Expected: 100
Actual:   101
   at Xunit.Assert.Equal[Int32](Int32 expected, Int32 actual, IEqualityComparer`1 comparer) in /_/src/Microsoft.DotNet.XUnitAssert/src/EqualityAsserts.cs:line 139
   at Xunit.Assert.Equal[Int32](Int32 expected, Int32 actual) in /_/src/Microsoft.DotNet.XUnitAssert/src/EqualityAsserts.cs:line 83
   at __GeneratedMainWrapper.Main()
nativeCall_PInvoke_Vector3Arg_Unix:
    v3f32_xmm0: 1.000000 2.000000 3.000000
    f32_xmm2 - f32_xmm7: 100.000000 101.000000 102.000000 103.000000 104.000000 105.000000
    f32_mem0: 106.000000
    v3f32_mem1: 10.000000 20.000000 30.000000
    f32_mem2-3: 0.000000 107.000000
    sum = 894.000000
Expected: 100
Actual: 101

The same tests are passing on runtime osx-x64 miniJIT/interpreter and linux-arm64 miniJIT CI pipelines.

Could be related to Mono missing support for passing Vectors in SIMD registers (#60068) and/or missing intrinsics support for System.Numerics.Vector3 (#81501).

No longer failing on osx-arm64 miniJIT after #96079.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-Codegen-JIT-monoarea-Interop-monodisabled-testThe test is disabled in source code against the issuein-prThere is an active PR which will close this issue when it is merged

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    No status

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions