-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Add perfmap debug directory entry to crossgen2 output as needed #58552
Conversation
This is related to #58468 on main. |
In your snippet of the PerfMap file above,
is the duplication of the key (-4) intentional? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This mostly looks great to me, I believe I spotted a small copy & paste bug and I hope for feedback from Michal regarding the ABI but I guess you're the one who knows where this information is used. Thank you!
src/coreclr/tools/aot/ILCompiler.ReadyToRun/CodeGen/ReadyToRunObjectWriter.cs
Outdated
Show resolved
Hide resolved
src/coreclr/tools/aot/ILCompiler.ReadyToRun/CodeGen/ReadyToRunObjectWriter.cs
Show resolved
Hide resolved
...tools/aot/ILCompiler.ReadyToRun/Compiler/DependencyAnalysis/ReadyToRun/DebugDirectoryNode.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please do not attempt to stabilize any constants in the typesystem proper. That is not the appopriate place for stable constants.
src/coreclr/tools/Common/TypeSystem/Common/TargetArchitecture.cs
Outdated
Show resolved
Hide resolved
6a06a60
to
dc8d8f1
Compare
This is used to correlate PE's with their corresponding PerfMaps. For example the header in the perfmap could be: ``` FFFFFFFF 00 026D4D21B3EE3D93843FF7A964235822 FFFFFFFE 00 1 FFFFFFFD 00 1 FFFFFFFC 00 3 FFFFFFFB 00 1 ``` And the PE will have the corresponding entries in the PE as: ``` PerfMap (Type 21): System.Private.CoreLib.ni.r2rmap, Signature = 026d4d21b3ee3d93843ff7a964235822, Version = 1 ```
dc8d8f1
to
7adb893
Compare
This change in general contains:
For example the header in the perfmap is:
and the entries in the PE are: