Address APX requirements for GC and VM stubs

Open
#112,587 27 comments 0 reactions 2 assignees View on GitHub

Nobody has claimed this yet.

Assessment

This issue has not been assessed yet.

Description

apx area-CodeGen-coreclr

There are a number of asm stubs in some of the GC, PInvoke, and NativeAOT code.

I'm working to establish if APX extended GPRs (EGPRS) need to be added to some of the state saving --- for what I currently see, most of the registers that are manipulated in some of this code, src/coreclr/nativeaot/Runtime/amd64/PInvoke.asm and src/coreclr/nativeaot/Runtime/amd64/GcProbe.asm only need to address non-volatile registers --- all of the EGPRs are volatile.

My question is, is there any other asm points in the code, perhaps on gc transitions etc., where register state may need to be explictly saved for Windows? I am aware most of the state saving is done with xsave, but looking to make sure all dependencies are handled.

Dominant language
C#
Stars
18.3k
Forks
5.6k
PR merge metrics
PR metrics pending

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dotnet/runtime

All issues in dotnet/runtime

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.