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

Added support for net70. #894

Merged
merged 9 commits into from
Dec 3, 2022
Merged

Added support for net70. #894

merged 9 commits into from
Dec 3, 2022

Conversation

MoFtZ
Copy link
Collaborator

@MoFtZ MoFtZ commented Dec 2, 2022

This PR adds support for compiling ILGPU using the .NET 7.0 SDK.

The CI pipeline has been modified to use the newer SDK. The dotnet tool appears to have swapped the order of some arguments, so this has been adjusted.

Updated the C# language version to 9, to fix an issue with IntPtr - it is now treated as a nint, which only became available in C# 9.

Fixed various compiler warnings. In particular, our custom DisposeAcceleratorObject function is not recognised by the Dispose pattern.

Fixed issues with the in parameter modifier. The mean appears to have changed. Previously, it behaved more like "here is a read-only struct". We would copy the struct when it was used. Now, the "this is passed by reference" is being enforced. So we have modified ILGPU to remove the in parameter modified, and to copy the struct as the argument.

Fixed an issue with the ref parameter modifier. This appears to be more strictly enforced. We used to return a reference to a local variable, but now that is no longer permitted.

Finally, fixed an issue with Unsafe.As. This has become a .NET intrinsic, and no longer provides MSIL code. We have had to replicate it's behavior within ILGPU.

Copy link
Owner

@m4rs-mt m4rs-mt left a comment

Choose a reason for hiding this comment

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

Thank you for this brilliant work 🥇.

@m4rs-mt m4rs-mt merged commit 5b7e23f into m4rs-mt:master Dec 3, 2022
@m4rs-mt m4rs-mt added this to the v1.4 milestone Dec 3, 2022
@MoFtZ MoFtZ deleted the feature/net70 branch December 5, 2022 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants