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

Deoptimization returns different versions of code when R2R is used #92616

Closed
mikelle-rogers opened this issue Sep 26, 2023 · 2 comments
Closed

Comments

@mikelle-rogers
Copy link
Member

mikelle-rogers commented Sep 26, 2023

Description

Stepping into a R2R method while debugging for the first time that does not result in a deoptimized method.

Reproduction Steps

using System.Runtime.CompilerServices;

class Program
{
    [MethodImpl(MethodImplOptions.AggressiveOptimization)]
    static void Main()
    {
        Console.Write(5);
        Console.Write(5);
    }
}

When using a release runtime, step in 4 times, then out 1, then in 2 times

Expected behavior

Should be in the WriteSpan method.

Actual behavior

Ends up in the Flush method instead of the WriteSpan method.

Regression?

No response

Known Workarounds

No response

Configuration

No response

Other information

No response

@mikelle-rogers mikelle-rogers self-assigned this Sep 26, 2023
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Sep 26, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Sep 26, 2023
@jkotas jkotas added area-Diagnostics-coreclr and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Sep 26, 2023
@ghost
Copy link

ghost commented Sep 26, 2023

Tagging subscribers to this area: @tommcdon
See info in area-owners.md if you want to be subscribed.

Issue Details

Description

Stepping into a R2R method while debugging for the first time that does not result in a deoptimized method.

Reproduction Steps

using System.Runtime.CompilerServices;

class Program
{
    [MethodImpl(MethodImplOptions.AggressiveOptimization)]
    static void Main()
    {
        Console.Write(5);
        Console.Write(5);
    }
}

When using a release runtime, step in 4 times, then out 1, then in 2 times

Expected behavior

Should be in the WriteSpan method.

Actual behavior

Ends up in the Flush method instead of the WriteSpan method.

Regression?

No response

Known Workarounds

No response

Configuration

No response

Other information

No response

Author: mikelle-rogers
Assignees: mikelle-rogers
Labels:

area-Diagnostics-coreclr, untriaged, needs-area-label

Milestone: -

@tommcdon tommcdon added this to the 8.0.0 milestone Sep 26, 2023
@tommcdon tommcdon added blocking-release and removed untriaged New issue has not been triaged by the area owner labels Sep 26, 2023
@tommcdon
Copy link
Member

Fixed via #92665

@ghost ghost locked as resolved and limited conversation to collaborators Oct 28, 2023
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

3 participants