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 some implicit Helper Method Frames (HMF) #107648

Merged
merged 9 commits into from
Sep 24, 2024

Conversation

AaronRobinsonMSFT
Copy link
Member

Remove FCThrow* in locations where explicit HMF have been removed. Convert the following:

GC.GetGeneration()
RuntimeHelpers.EnsureSufficientExecutionStack()
RuntimeHelpers.AllocTailCallArgBuffer()
Thread.IsBackground getter
Thread.IsThreadPoolThread property

Remove FCThrow in locations where explicit HMF have been removed.
Convert GC.GetGeneration()
RuntimeHelpers.EnsureSufficientExecutionStack()
RuntimeHelpers.AllocTailCallArgBuffer()
Thread.IsBackground getter
Thread.IsThreadPoolThread property
Copy link
Contributor

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

if (objUNSAFE == NULL)
FCThrowArgumentNull(W("obj"));

_ASSERTE(objUNSAFE != NULL);
int result = (INT32)GCHeapUtilities::GetGCHeap()->WhichGeneration(objUNSAFE);
FC_GC_POLL_RET();
Copy link
Member

Choose a reason for hiding this comment

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

BTW: FC_GC_POLL_RET has a hidden HMF as well (no need to fix in this PR)

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 Outdated Show resolved Hide resolved
@AaronRobinsonMSFT AaronRobinsonMSFT merged commit 3ab61c2 into dotnet:main Sep 24, 2024
150 checks passed
@AaronRobinsonMSFT AaronRobinsonMSFT deleted the hmf_implicit_fcthrow branch September 24, 2024 22:39
sirntar pushed a commit to sirntar/runtime that referenced this pull request Sep 30, 2024
* Remove some implicit Helper Method Frames (HMF)

Remove FCThrow in locations where explicit HMF have been removed.
Convert GC.GetGeneration()
RuntimeHelpers.EnsureSufficientExecutionStack()
RuntimeHelpers.AllocTailCallArgBuffer()
Thread.IsBackground getter
Thread.IsThreadPoolThread property

---------

Co-authored-by: Jan Kotas <[email protected]>
@github-actions github-actions bot locked and limited conversation to collaborators Oct 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants