Skip to content

remove x86 ICF special handling #116388

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

max-charlamb
Copy link
Contributor

@max-charlamb max-charlamb commented Jun 6, 2025

Based on comments in #116072

I ran against the diagnostics tests, looks like no regressions.

Sample Trace

main

OS Thread Id: 0x9228 (0)
Child SP       IP Call Site
02F79CBC 772e970c [InlinedCallFrame: 02f79cbc] Interop+Kernel32.g____PInvoke|43_0(IntPtr, Byte*, Int32, Int32*, IntPtr)
02F79CA0 08d9d119 Interop+Kernel32.ReadFile(IntPtr, Byte*, Int32, Int32 ByRef, IntPtr) [C:\Users\maxcharlamb\source\reposA\runtime\artifacts\obj\System.Console\Release\net10.0-windows\Microsoft.Interop.LibraryImportGenerator\Microsoft.Interop.LibraryImportGenerator\LibraryImports.g.cs @ 412]
02F79D18 08d9d02b System.ConsolePal+WindowsConsoleStream.ReadFileNative(IntPtr, System.Span`1, Boolean, Int32 ByRef, Boolean) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\ConsolePal.Windows.cs @ 1223]
02F79D50 08d9cf7f System.ConsolePal+WindowsConsoleStream.Read(System.Span`1) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\ConsolePal.Windows.cs @ 1181]
02F79D78 08d9cee9 System.IO.ConsoleStream.Read(Byte[], Int32, Int32) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\IO\ConsoleStream.cs @ 34]
02F79D98 65ab96eb System.IO.StreamReader.ReadBuffer()
02F79DB0 65ab9b3e System.IO.StreamReader.ReadLine()
02F79DFC 08d9ce62 System.IO.SyncTextReader.ReadLine() [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\IO\SyncTextReader.cs @ 77]
02F79E18 08d9c7d8 System.Console.ReadLine() [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\Console.cs @ 727]
02F79E24 08d9bab9 NibbleMapReplacement.C1.Block() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 379]
02F79E5C 08d9ba0b NibbleMapReplacement.C1.M2() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 269]
02F7A358 69ba3393 [InlinedCallFrame: 02f7a358] 
02F7A340 65a2aaf4 System.Runtime.EH.DispatchEx(System.Runtime.StackFrameIterator ByRef, ExInfo ByRef)
02F7A3D0 65a2a606 System.Runtime.EH.RhThrowEx(System.Object, ExInfo ByRef)
02F7B800 69ba2c77 [SoftwareExceptionFrame: 02f7b800] 
02F7BB5C 08d9b9f7 NibbleMapReplacement.C1.M2() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 265]
02F7BB70 08d9b98a NibbleMapReplacement.C1.F2(System.Exception) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 372]
02F7BB88 08d9b924 NibbleMapReplacement.C1.M4() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 291]
02F7BE24 69ba33b2 [InlinedCallFrame: 02f7be24] 
02F7BE14 65a2acee System.Runtime.EH.FindFirstPassHandler(System.Object, UInt32, System.Runtime.StackFrameIterator ByRef, UInt32 ByRef, Byte* ByRef)
02F7BEBC 65a2a91b System.Runtime.EH.DispatchEx(System.Runtime.StackFrameIterator ByRef, ExInfo ByRef)
02F7BF3C 65a2a606 System.Runtime.EH.RhThrowEx(System.Object, ExInfo ByRef)
02F7D36C 69ba2c77 [SoftwareExceptionFrame: 02f7d36c] 
02F7D6C8 08d9b8e5 NibbleMapReplacement.C1.M4() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 289]
02F7D6F8 08d9b839 NibbleMapReplacement.C1.U1(IntPtr, Int32) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 357]
02F7D738 08d9b734 [InlinedCallFrame: 02f7d738] 
02F7D730 08d9b734 ILStubClass.IL_STUB_PInvoke(IntPtr, Int32)
02F7D788 08d9b6b4 NibbleMapReplacement.C1.M5() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 301]
02F7DFE8 69ba2c77 [InlinedCallFrame: 02f7dfe8] 
02F7DFD4 65a64d4e System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(System.Object, IntPtr*)
02F7E038 65a64e03 System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(System.Object, System.Reflection.BindingFlags)
02F7E050 65a72a0b System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
02F7E08C 65a64824 System.Reflection.MethodBase.Invoke(System.Object, System.Object[])
02F7E098 08d9b63e NibbleMapReplacement.C1.M6() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 308]
02F7E0B8 08d9b597 NibbleMapReplacement.Program.Main(System.String[]) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 33]

pr

OS Thread Id: 0x9228 (0)
Child SP       IP Call Site
02F79CBC 772e970c [InlinedCallFrame: 02f79cbc] Interop+Kernel32.g____PInvoke|43_0(IntPtr, Byte*, Int32, Int32*, IntPtr)
02F79CBC 08d9d119 [InlinedCallFrame: 02f79cbc] Interop+Kernel32.g____PInvoke|43_0(IntPtr, Byte*, Int32, Int32*, IntPtr)
02F79CA0 08d9d119 Interop+Kernel32.ReadFile(IntPtr, Byte*, Int32, Int32 ByRef, IntPtr) [C:\Users\maxcharlamb\source\reposA\runtime\artifacts\obj\System.Console\Release\net10.0-windows\Microsoft.Interop.LibraryImportGenerator\Microsoft.Interop.LibraryImportGenerator\LibraryImports.g.cs @ 412]
02F79D18 08d9d02b System.ConsolePal+WindowsConsoleStream.ReadFileNative(IntPtr, System.Span`1, Boolean, Int32 ByRef, Boolean) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\ConsolePal.Windows.cs @ 1223]
02F79D50 08d9cf7f System.ConsolePal+WindowsConsoleStream.Read(System.Span`1) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\ConsolePal.Windows.cs @ 1181]
02F79D78 08d9cee9 System.IO.ConsoleStream.Read(Byte[], Int32, Int32) [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\IO\ConsoleStream.cs @ 34]
02F79D98 65ab96eb System.IO.StreamReader.ReadBuffer()
02F79DB0 65ab9b3e System.IO.StreamReader.ReadLine()
02F79DFC 08d9ce62 System.IO.SyncTextReader.ReadLine() [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\IO\SyncTextReader.cs @ 77]
02F79E18 08d9c7d8 System.Console.ReadLine() [C:\Users\maxcharlamb\source\reposA\runtime\src\libraries\System.Console\src\System\Console.cs @ 727]
02F79E24 08d9bab9 NibbleMapReplacement.C1.Block() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 379]
02F79E5C 08d9ba0b NibbleMapReplacement.C1.M2() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 269]
02F7A358 69ba3393 [InlinedCallFrame: 02f7a358] 
02F7A358 65a2aaf4 [InlinedCallFrame: 02f7a358] 
02F7A340 65a2aaf4 System.Runtime.EH.DispatchEx(System.Runtime.StackFrameIterator ByRef, ExInfo ByRef)
02F7A3D0 65a2a606 System.Runtime.EH.RhThrowEx(System.Object, ExInfo ByRef)
02F7B800 69ba2c77 [SoftwareExceptionFrame: 02f7b800] 
02F7BB5C 08d9b9f7 NibbleMapReplacement.C1.M2() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 265]
02F7BB70 08d9b98a NibbleMapReplacement.C1.F2(System.Exception) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 372]
02F7BB88 08d9b924 NibbleMapReplacement.C1.M4() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 291]
02F7BE24 69ba33b2 [InlinedCallFrame: 02f7be24] 
02F7BE24 65a2acee [InlinedCallFrame: 02f7be24] 
02F7BE14 65a2acee System.Runtime.EH.FindFirstPassHandler(System.Object, UInt32, System.Runtime.StackFrameIterator ByRef, UInt32 ByRef, Byte* ByRef)
02F7BEBC 65a2a91b System.Runtime.EH.DispatchEx(System.Runtime.StackFrameIterator ByRef, ExInfo ByRef)
02F7BF3C 65a2a606 System.Runtime.EH.RhThrowEx(System.Object, ExInfo ByRef)
02F7D36C 69ba2c77 [SoftwareExceptionFrame: 02f7d36c] 
02F7D6C8 08d9b8e5 NibbleMapReplacement.C1.M4() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 289]
02F7D6F8 08d9b839 NibbleMapReplacement.C1.U1(IntPtr, Int32) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 357]
02F7D738 08d9b734 [InlinedCallFrame: 02f7d738] 
02F7D738 08d9b734 ILStubClass.IL_STUB_PInvoke(IntPtr, Int32)
02F7D788 08d9b6b4 NibbleMapReplacement.C1.M5() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 301]
02F7DFE8 69ba2c77 [InlinedCallFrame: 02f7dfe8] 
02F7DFE8 65a64d4e [InlinedCallFrame: 02f7dfe8] 
02F7DFD4 65a64d4e System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(System.Object, IntPtr*)
02F7E038 65a64e03 System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(System.Object, System.Reflection.BindingFlags)
02F7E050 65a72a0b System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
02F7E08C 65a64824 System.Reflection.MethodBase.Invoke(System.Object, System.Object[])
02F7E098 08d9b63e NibbleMapReplacement.C1.M6() [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 308]
02F7E0B8 08d9b597 NibbleMapReplacement.Program.Main(System.String[]) [C:\Users\maxcharlamb\source\repos\NibbleMapReplacement\Program.cs @ 33]

Copy link
Contributor

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

@max-charlamb max-charlamb marked this pull request as ready for review June 6, 2025 22:33
@jkotas jkotas requested a review from janvorli June 7, 2025 01:41
@jkotas
Copy link
Member

jkotas commented Jun 7, 2025

@davidwrighton @janvorli Anything you can think of that depends on the existing behavior?

@filipnavara
Copy link
Member

I have a couple of tests that were hitting the code path and that I had to debug recently. I'll try to run them locally but can we run GC stress pipelines with this?

@jkotas
Copy link
Member

jkotas commented Jun 7, 2025

/azp run runtime-coreclr gcstress0x3-gcstress0xc

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

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