-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[WIP] System.Linq.Expressions.Interpreter.CallInstruction.CanCreateArbitraryDelegates should respect IsDynamicCodeSupported #86758
Conversation
Tagging subscribers to this area: @cston Issue DetailsThis PR is marked as draft as its sole purpose is to test potential issues with the change. The work reflects what @MichalStrehovsky noted regarding adaptations of
|
/azp run runtime-extra-platforms |
Azure Pipelines successfully started running 1 pipeline(s). |
Rerun the pipelines once: #86971 gets merged in |
/azp list |
5e76172
to
caea6ca
Compare
/azp run runtime-extra-platforms |
Azure Pipelines successfully started running 1 pipeline(s). |
The failures seem unrelated. @MichalStrehovsky would it make sense to add a unit test for NativeAOT/MonoAOT which verifies that: Maybe something like: var linqExprAssembly = typeof(System.Linq.Expressions.Expression).Assembly;
var callInstrType = linqExprAssembly?.GetType("System.Linq.Expressions.Interpreter.CallInstruction");
var canCreateArbitraryDelegatesGetter = callInstrType?.GetMethod("get_CanCreateArbitraryDelegates", BindingFlags.NonPublic | BindingFlags.Static);
Assert.False(canCreateArbitraryDelegatesGetter?.Invoke(null, null)); |
I don't have an opinion. The value of this switch affects runtime throughput and size. We should be able to observe this in size/throughput testing. |
FYI - note the snags that I hit in this area in #81803 (comment). |
Closing in favor of #88539. |
This PR is marked as draft as its sole purpose is to test potential issues with the change.
The work reflects what @MichalStrehovsky noted regarding adaptations of
Linq.Expressions
to be AOT compilation friendly: #69410 (comment) and the suggested way of enabling the mentioned codepath proposed by @rolfbjarne