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

Remove Helper Method Frames for Exception, GC and Thread methods #107218

Merged
merged 16 commits into from
Sep 6, 2024

Conversation

AaronRobinsonMSFT
Copy link
Member

Each commit contains a single or pair of functions. This PR is best reviewed by each commit.

Copy link
Contributor

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

@jkotas
Copy link
Member

jkotas commented Aug 31, 2024

The trimming tests are failing with Cannot print exception string because Exception.ToString() failed. that I do not see in other PRs.

@EgorBo

This comment was marked as resolved.

@jkotas
Copy link
Member

jkotas commented Sep 1, 2024

@EgorBot -intel -arm64 -perf

using System;
using System.Runtime.CompilerServices;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;

BenchmarkRunner.Run<Bench>(args: args);

public class Bench
{
    [Benchmark]
    public void Foo()
    {
        for (int i = 0; i < 1000; i++)
            Work<char>(1);
    }

    [MethodImpl(MethodImplOptions.NoInlining)]
    static void Work<T>(int size) => GC.KeepAlive(GC.AllocateUninitializedArray<T>(size));
}

@AaronRobinsonMSFT
Copy link
Member Author

@EgorBot -intel -arm64 -perf

using System;
using System.Runtime.CompilerServices;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;

BenchmarkRunner.Run<Bench>(args: args);

public class Bench
{
    [Benchmark]
    public void Foo()
    {
        for (int i = 0; i < 1000; i++)
            Work<char>(1);
    }

    [MethodImpl(MethodImplOptions.NoInlining)]
    static void Work<T>(int size) => GC.KeepAlive(GC.AllocateUninitializedArray<T>(size));
}

@AaronRobinsonMSFT
Copy link
Member Author

@jkotas All green. Please take another look.

Copy link
Member

@jkotas jkotas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM otherwise

src/coreclr/vm/comsynchronizable.cpp Show resolved Hide resolved
src/coreclr/vm/comsynchronizable.cpp Outdated Show resolved Hide resolved
src/coreclr/vm/comsynchronizable.cpp Outdated Show resolved Hide resolved
src/coreclr/vm/comsynchronizable.cpp Show resolved Hide resolved
Copy link
Member

@jkotas jkotas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

@AaronRobinsonMSFT AaronRobinsonMSFT merged commit 5428078 into dotnet:main Sep 6, 2024
116 checks passed
@AaronRobinsonMSFT AaronRobinsonMSFT deleted the hmf_removal branch September 6, 2024 21:11
jtschuster pushed a commit to jtschuster/runtime that referenced this pull request Sep 17, 2024
…net#107218)

* Convert Exception.GetFrozenStackTrace()

* Convert GC.AllocateNewArray()
Removed use of Unsafe.As().

* Convert Thread.GetApartmentStateNative() and Thread.SetApartmentStateNative()

* Convert Thread.Join()

* Convert Thread.Priority property
sirntar pushed a commit to sirntar/runtime that referenced this pull request Sep 30, 2024
…net#107218)

* Convert Exception.GetFrozenStackTrace()

* Convert GC.AllocateNewArray()
Removed use of Unsafe.As().

* Convert Thread.GetApartmentStateNative() and Thread.SetApartmentStateNative()

* Convert Thread.Join()

* Convert Thread.Priority property
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants