| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Whole program view lets us figure out whether a virtual method has been overriden by another method, or whether it can be considered `final`. Add a pass to collect this information and pass it to codegen, It kicks in less often than I expected (for linear enough hierarchies or not-too-much-derived types we could already do this with guarded devirtualization or type sealing), but I can still a bit over 100 method bodies affected by this in the Stage1 app.
|
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Whole program view lets us figure out whether a virtual method has been overriden by another method, or whether it can be considered final. Add a pass to collect this information and pass it to codegen, It kicks in less often than I expected (for linear enough hierarchies or not-too-much-derived types we could already do this with guarded devirtualization or type sealing), but I can still a bit over 100 method bodies affected by this in the Stage1 app. Cc @dotnet/ilc-contrib
|
Sorry, something went wrong.
|
/azp run runtime-nativeaot-outerloop |
Sorry, something went wrong.
|
Azure Pipelines successfully started running 1 pipeline(s). |
Sorry, something went wrong.
There was a problem hiding this comment.
Thanks
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Whole program view lets us figure out whether a virtual method has been overriden by another method, or whether it can be considered final. Add a pass to collect this information and pass it to codegen,
It kicks in less often than I expected (for linear enough hierarchies or not-too-much-derived types we could already do this with guarded devirtualization or type sealing), but I can still a bit over 100 method bodies affected by this in the Stage1 app.
Cc @dotnet/ilc-contrib