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

Make the static registrar work with NativeAOT #17324

Closed
Tracked by #17339 ...
rolfbjarne opened this issue Jan 20, 2023 · 0 comments · Fixed by #18268
Closed
Tracked by #17339 ...

Make the static registrar work with NativeAOT #17324

rolfbjarne opened this issue Jan 20, 2023 · 0 comments · Fixed by #18268
Labels
dotnet An issue or pull request related to .NET (6) feature A feature to be implemented
Milestone

Comments

@rolfbjarne
Copy link
Member

This is a mirror/tracking issue for dotnet/runtime#80912.

@rolfbjarne rolfbjarne added dotnet An issue or pull request related to .NET (6) feature A feature to be implemented labels Jan 20, 2023
@rolfbjarne rolfbjarne added this to the .NET 8 milestone Jan 20, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 3, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 14, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 16, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 17, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 23, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 28, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Mar 30, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 12, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 13, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 14, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 20, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 20, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 26, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue Apr 28, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 3, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 4, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 4, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 5, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 5, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 5, 2023
filipnavara pushed a commit to filipnavara/xamarin-macios that referenced this issue May 7, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 8, 2023
rolfbjarne added a commit to rolfbjarne/xamarin-macios that referenced this issue May 9, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
filipnavara pushed a commit to filipnavara/xamarin-macios that referenced this issue May 9, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne pushed a commit to rolfbjarne/xamarin-macios that referenced this issue May 9, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne pushed a commit to rolfbjarne/xamarin-macios that referenced this issue May 10, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne pushed a commit to rolfbjarne/xamarin-macios that referenced this issue May 11, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne pushed a commit to rolfbjarne/xamarin-macios that referenced this issue May 11, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne pushed a commit to rolfbjarne/xamarin-macios that referenced this issue May 11, 2023
This adds a managed static registrar, which is a variation of the static registrar
that takes advantage of a few new features in C# and the runtime, as well as avoiding
metadata tokens, which NativeAOT doesn't support.

This registrar will generate most of the trampoline/interop code as managed code
using Cecil, and the Objective-C part is as small as possible.

Fixes dotnet#17324.
rolfbjarne added a commit that referenced this issue May 19, 2023
Add a new version of the static registrar (called the managed static
registrar), which most notably doesn't use metadata tokens (because NativeAOT
doesn't support metadata tokens). In addition, the new registrar also takes
advantage of new features in both C# and the runtime, in order to be more
performant.

I won't go into detail about everything here, because it would be rather long,
but I've added documentation for the new registrar (the first commit, so start
reviewing there).

Fixes #17324.
@ghost ghost locked as resolved and limited conversation to collaborators Jun 18, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dotnet An issue or pull request related to .NET (6) feature A feature to be implemented
Projects
None yet
1 participant