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

Move ILVerify tool to dotnet/runtime repo #13827

Closed
jkotas opened this issue Nov 25, 2019 · 9 comments
Closed

Move ILVerify tool to dotnet/runtime repo #13827

jkotas opened this issue Nov 25, 2019 · 9 comments

Comments

@jkotas
Copy link
Member

jkotas commented Nov 25, 2019

https://github.com/dotnet/coreclr/issues/27934#issuecomment-558193025

@jkotas
Copy link
Member Author

jkotas commented Dec 9, 2019

Use case: dotnet/corert#7905 (comment)

@Entomy
Copy link

Entomy commented Dec 23, 2019

As mentioned in dotnet/corert#7923, there's a use case for ILVerify in ILSupport and demand.

ILSupport is an extension for VisualStudio providing... IL support. As far as I know, it's the only IL syntax classifier, and also provides project templates. The use case here is obvious, as verification should be done as part of the build process.

I happen to do language R&D, and there's an obvious use case there as well, in making sure I've got valid IL coming out of a compiler.

@msftgits msftgits transferred this issue from dotnet/coreclr Jan 31, 2020
@am11
Copy link
Member

am11 commented Feb 4, 2020

Another use-case - dotnet/roslyn#41166 (comment) - is to unit test compiler's output in roslyn repo against netcoreapp: https://github.com/dotnet/roslyn/blob/2ed60699f9961a451f60d560da8bd4788c0182fc/src/Test/Utilities/Portable/Platform/CoreClr/CoreCLRRuntimeEnvironment.cs#L104-L114.

@GSPP
Copy link

GSPP commented Feb 23, 2020

Another use case is verifying custom generated DLLs as a debugging aid. Invalid IL can be hard to detect and diagnose from just execution alone.

@maryamariyan maryamariyan added the untriaged New issue has not been triaged by the area owner label Feb 23, 2020
@BruceForstall BruceForstall added this to the 5.0 milestone May 11, 2020
@BruceForstall BruceForstall removed the untriaged New issue has not been triaged by the area owner label May 11, 2020
@ViktorHofer
Copy link
Member

Would it make more sense to move the sources into the Arcade repository which allows easier packaging and serves as a central place for other repositories to consume assets?

@jkotas
Copy link
Member Author

jkotas commented May 29, 2020

ilverify is in the same category as ilasm or ildasm. It is a generally applicable tool, not tied to .NET product engineering infrastructure. .NET Framework SDK includes equivalent tool called peverify. ilverify is the replacement for peverify.

Also, 90% of the ilverify code is shared with other components in CoreCLR. If we were to build it somewhere else, we would need to setup a source mirroring for this.

@ViktorHofer
Copy link
Member

Also, 90% of the ilverify code is shared with other components in CoreCLR

I see, then it makes sense to live in dotnet/runtime. Thanks for clarifying.

@BruceForstall
Copy link
Member

@agocke @jkotas After #35038, is this complete (can be closed)?

@jkotas
Copy link
Member Author

jkotas commented Jun 3, 2020

Yes, this can be closed. I have verified that the package is produced by the official build.

@jkotas jkotas closed this as completed Jun 3, 2020
@ghost ghost locked as resolved and limited conversation to collaborators Dec 11, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants