Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Add support for no GC regions in x86 GC info - #115602

Merged
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86
May 16, 2025
Merged

Add support for no GC regions in x86 GC info#115602
jkotas merged 4 commits into
dotnet:mainfrom
filipnavara:nogcregions-x86

Conversation

@filipnavara

Copy link
Copy Markdown
Member

Contributes to #113985

#113985 (comment) identified an issue where GC info is not correctly recorded for inline jumps to finally blocks. It shows up in GC stress testing. This issue already exists on NativeAOT on win-x86 but we didn't have sufficient coverage to identify it.

For fully interruptible methods we can now encode a table in the x86 GC info that describes the no-GC regions as pair of (offset, size) tuples. The presence of the table is indicated by a new header opcode (SET_NOGCREGIONS_CNT + count for count >= 0 && count <= 4 or FFFF_NOGCREGION_CNT and extra count field after the header).

@github-actionsgithub-actionsBot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label May 15, 2025
@filipnavara
filipnavara requested review from a team, davidwrighton and jkotasMay 15, 2025 05:43
@filipnavara

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/dotnet-diag If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

@dotnet-policy-servicedotnet-policy-serviceBot added the community-contribution Indicates that the PR has been added by a community member label May 15, 2025
{
// TODO-Linux-x86: Do we need to handle the GC information for this NOP or JMP specially, as is done for other
// architectures?
#ifndef JIT32_GCENCODER

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

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

^ This is the primary issue addressed by this PR

@filipnavara
filipnavara requested a review from a teamMay 15, 2025 06:18
Comment threadsrc/coreclr/jit/lowerxarch.cpp
@jkotas

Copy link
Copy Markdown
Member

/azp run runtime-coreclr gcstress0x3-gcstress0xc

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr gcstress0x3-gcstress0xc

I don't expect this to reveal anything. It's now a strictly zero-diff change with x86 funclets disabled. May be worth running the same check on #113576 which has essentially the same commit applied with x86 funclets enabled (- the disabled cpObj optimization).

(In fact, give me a sec, I'll push the exact same change there... and DONE.)

@jkotas

Copy link
Copy Markdown
Member

I don't expect this to reveal anything.

Right, I just want to make sure that there is nothing subtle broken in the x86 GC encoder/decoder.

@davidwrighton

Copy link
Copy Markdown
Member

I've taken a pass through this and it looks good, although I haven't looked at the test failures to see if they are related.

@filipnavara

filipnavara commented May 15, 2025

Copy link
Copy Markdown
MemberAuthor

I haven't looked at the test failures to see if they are related.

The osx failure is unrelated. I will check the GC stress failures tomorrow. I believe I have previously seen them and there's one issue filed for x86 unwinding (broken by async2 codegen change using a slightly different pattern in few epilogs).

@filipnavara

Copy link
Copy Markdown
MemberAuthor

The two x86 GC stress failures are indeed instances of #115120.

@jkotasjkotas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thank you

@jkotas

Copy link
Copy Markdown
Member

/ba-g intermittent nuget restore failure in unrelated leg

@jkotas
jkotas merged commit b8752af into dotnet:mainMay 16, 2025
@jkotas

Copy link
Copy Markdown
Member

If this gets approved the shared files for GC info parsing and dumping will need to be synced to the dotnet/diagnostics repo.

Could you please send matching update PR to the diagnostics repo?

@filipnavara

Copy link
Copy Markdown
MemberAuthor

Could you please send matching update PR to the diagnostics repo?

Of course.

@filipnavara
filipnavara deleted the nogcregions-x86 branch June 5, 2025 06:44
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jul 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIcommunity-contributionIndicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@filipnavara@jkotas@davidwrighton@jakobbotsch