Uh oh!
There was an error while loading. Please reload this page.
Delete DebugSymbols=true setting for the repo build - #102392
Conversation
Tagging subscribers to this area: @dotnet/area-infrastructure-libraries |
jkotas
commented
May 18, 2024
/azp run runtime-nativeaot-outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
jkotas
commented
May 18, 2024
/azp run runtime-coreclr outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
jkotas
commented
May 18, 2024
/azp run runtime-coreclr outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
jkotas
commented
May 18, 2024
/azp run runtime-coreclr outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
https://learn.microsoft.com/en-us/visualstudio/msbuild/common-msbuild-project-properties?view=vs-2022 documents
Does it mean documentation is incorrect or it's in fact an accidental bug? |
jkotas
commented
May 19, 2024
I have opened dotnet/sdk#41364 My conclusion after reading through mentions of |
This property does not do what its name says. The symbols are generated regardless of whether this property is true or false. What this property actually does is that it disables C# peephole IL optimizations. This change results in ~0.5% IL binary size improvement thanks to the Roslyn IL peephole optimizations that it enables.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
ViktorHofer
commented
May 21, 2024
For others reviewing this, the Microsoft.NET.Sdk makes this property still default to true when doing a Debug configuration build: https://github.com/dotnet/sdk/blob/ace21a69999eede779921900fca9420d37395aee/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props#L49 |
* Delete DebugSymbols This property does not do what its name says. The symbols are generated regardless of whether this property is true or false. What this property actually does is that it disables C# peephole IL optimizations. This change results in ~0.5% IL binary size improvement thanks to the Roslyn IL peephole optimizations that it enables. * Update eng/illink.targets Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com> --------- Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
Based on #102392 (comment), should |
jkotas
commented
May 30, 2024
Possibly. It depends on whether and how the behavior of |
This property does not do what its name says. The symbols are generated regardless of whether this property is true or false. What this property actually does is that it disables C# peephole IL optimizations.
This change results in ~0.5% IL binary size improvement thanks to the Roslyn IL peephole optimizations that it enables. Also, this gets us closer to default build configuration used by our users.