Skip to content
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

[mono] The bitcast test fails with exit code 104 on apple mobile platforms #89385

Closed
kotlarmilos opened this issue Jul 24, 2023 · 5 comments · Fixed by #89428
Closed

[mono] The bitcast test fails with exit code 104 on apple mobile platforms #89385

kotlarmilos opened this issue Jul 24, 2023 · 5 comments · Fixed by #89428
Assignees
Labels
area-Codegen-AOT-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' Known Build Error Use this to report build issues in the .NET Helix tab os-ios Apple iOS
Milestone

Comments

@kotlarmilos
Copy link
Member

kotlarmilos commented Jul 24, 2023

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=349474
Build error leg or test failing: JIT_Intrinsics.WorkItemExecution
Pull request: #89296

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "Application has finished with exit code 104 but 100 was expected",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

The BitCast test fails with exit code 104 on the apple mobile platforms. I will try to get more details locally.

/cc: @EgorBo

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=349474
Error message validated: Application has finished with exit code 104 but 100 was expected
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 7/24/2023 1:23:25 PM UTC

Report

Build Definition Test Pull Request
353900 dotnet/runtime JIT_Intrinsics.WorkItemExecution #89555
349967 dotnet/runtime JIT_Intrinsics.WorkItemExecution #88167
349510 dotnet/runtime JIT_Intrinsics.WorkItemExecution
349474 dotnet/runtime JIT_Intrinsics.WorkItemExecution #89296
349328 dotnet/runtime JIT_Intrinsics.WorkItemExecution

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
1 5 5
@kotlarmilos kotlarmilos added blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' area-Codegen-AOT-mono os-ios Apple iOS Known Build Error Use this to report build issues in the .NET Helix tab labels Jul 24, 2023
@kotlarmilos kotlarmilos added this to the 8.0.0 milestone Jul 24, 2023
@ghost
Copy link

ghost commented Jul 24, 2023

Tagging subscribers to 'os-ios': @steveisok, @akoeplinger, @kotlarmilos
See info in area-owners.md if you want to be subscribed.

Issue Details

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=349474
Build error leg or test failing: JIT_Intrinsics.WorkItemExecution
Pull request: #89296

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "Application has finished with exit code 104 but 100 was expected",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

The BitCast test fails with exit code 104 on the apple mobile platforms. I will try to get more details locally.

/cc: @EgorBo

Author: kotlarmilos
Assignees: -
Labels:

blocking-clean-ci, area-Codegen-AOT-mono, os-ios, Known Build Error

Milestone: 8.0.0

@EgorBo
Copy link
Member

EgorBo commented Jul 24, 2023

cc @MichalPetryka

Perhaps, it's already fixed with #89364 (if that was the issue)

@MichalPetryka
Copy link
Contributor

Looks like the 4 tests for implicit floating point casting fail on Mono and instead of casting just reinterpret the bits.
Such implicit conversion of float32 <-> float64 is legal in IL as per the ECMA so this looks like a Mono runtime bug.

@kotlarmilos
Copy link
Member Author

Verify(1065353216L, Unsafe.BitCast<float, int>(1f), 31);
Verify(4607182418800017408L, Unsafe.BitCast<double, long>(1.0), 32);
Verify(1065353216L, Unsafe.BitCast<float, int>((float)NoInline(1.0)), 33);
Verify(4607182418800017408L, Unsafe.BitCast<double, long>((double)NoInline(1f)), 34);
JIT_Intrinsics[2155:332550] Failed at line 31, expected 1065353216, got 0
JIT_Intrinsics[2155:332550] Failed at line 32, expected 4607182418800017408, got 1065353216
JIT_Intrinsics[2155:332550] Failed at line 33, expected 1065353216, got 0
JIT_Intrinsics[2155:332550] Failed at line 34, expected 4607182418800017408, got 1065353216
JIT_Intrinsics[2155:332550] DOTNET.APP_EXIT_CODE: 104

@vargaz vargaz self-assigned this Jul 24, 2023
@kotlarmilos
Copy link
Member Author

kotlarmilos commented Jul 24, 2023

I didn't manage to reproduce it locally with Unsafe.BitCast<float, int>(1f).

IL_006b: ldc.r4 1
IL_0070: call !!1 [System.Runtime]System.Runtime.CompilerServices.Unsafe::BitCast<float32, int32>(!!0)

However, with implicit casting it fails.

IL_00bc:  ldc.r8 1.
IL_00c5:  call !!1 [System.Runtime]System.Runtime.CompilerServices.Unsafe::BitCast<float32,int32>(!!0)

@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Jul 25, 2023
@vargaz vargaz assigned kotlarmilos and unassigned vargaz Jul 27, 2023
@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Jul 28, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Aug 27, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Codegen-AOT-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' Known Build Error Use this to report build issues in the .NET Helix tab os-ios Apple iOS
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants