Skip to content

Conversation

@jkoritzinsky
Copy link
Member

When I changed how we do HWIntrinsic support for platforms that don't have JIT, I missed that crossgen2 explicitly skips pre-jitting the fallback methods. Adjust crossgen2 to not skip them when the target can't JIT.

When I changed how we do HWIntrinsic support for platforms that don't have JIT, I missed that crossgen2 explicitly skips pre-jitting the fallback methods. Adjust crossgen2 to not skip them when the target can't JIT.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes a bug in crossgen2 where hardware intrinsic fallback methods were incorrectly being skipped during AOT compilation for platforms that don't support runtime JIT compilation (iOS, tvOS, MacCatalyst, WebAssembly). The fix ensures that fallback implementations are compiled when the target platform cannot generate code at runtime, making them available to the interpreter.

Key changes:

  • Modified the ShouldSkipCompilation method to check if the target allows runtime code generation before skipping hardware intrinsic methods
  • Hardware intrinsic methods are now only skipped if they are hardware intrinsics and the target platform supports runtime JIT

@jkoritzinsky
Copy link
Member Author

/ba-g networking problems in unrelated legs

@jkoritzinsky jkoritzinsky merged commit b63089a into dotnet:main Dec 12, 2025
91 of 98 checks passed
@jkoritzinsky jkoritzinsky deleted the noskip-intrinsic-fallback branch December 12, 2025 03:35
@github-actions github-actions bot locked and limited conversation to collaborators Jan 11, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants