Skip to content

Null dereference in forward subtitution #99540

@filipnavara

Description

@filipnavara

Happens when compiling the JIT\Regression\JitBlue\Runtime_90323\Runtime_90323\native\Runtime_90323 test in NativeAOT win-x86 configuration.

Fatal error. System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Repeat 2 times:
--------------------------------
   at Internal.JitInterface.CorInfoImpl.JitCompileMethod(IntPtr ByRef, IntPtr, IntPtr, IntPtr, Internal.JitInterface.CORINFO_METHOD_INFO ByRef, UInt32, IntPtr ByRef, UInt32 ByRef)
--------------------------------
   at Internal.JitInterface.CorInfoImpl.CompileMethodInternal(ILCompiler.DependencyAnalysis.IMethodNode, Internal.IL.MethodIL)
   at Internal.JitInterface.CorInfoImpl.CompileMethod(ILCompiler.DependencyAnalysis.MethodCodeNode, Internal.IL.MethodIL)
   at ILCompiler.RyuJitCompilation.CompileSingleMethod(Internal.JitInterface.CorInfoImpl, ILCompiler.DependencyAnalysis.MethodCodeNode)
   at ILCompiler.RyuJitCompilation.CompileSingleThreaded(System.Collections.Generic.List`1<ILCompiler.DependencyAnalysis.MethodCodeNode>)
   at ILCompiler.RyuJitCompilation.ComputeDependencyNodeDependencies(System.Collections.Generic.List`1<ILCompiler.DependencyAnalysisFramework.DependencyNodeCore`1<ILCompiler.DependencyAnalysis.NodeFactory>>)
   at ILCompiler.DependencyAnalysisFramework.DependencyAnalyzer`2[[ILCompiler.DependencyAnalysisFramework.NoLogStrategy`1[[System.__Canon, System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], ILCompiler.DependencyAnalysisFramework, Version=9.0.0.0, Culture=neutral, PublicKeyToken=null],[System.__Canon, System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].ComputeDependencies(System.Collections.Generic.List`1<ILCompiler.DependencyAnalysisFramework.DependencyNodeCore`1<System.__Canon>>)
   at ILCompiler.DependencyAnalysisFramework.DependencyAnalyzer`2[[ILCompiler.DependencyAnalysisFramework.NoLogStrategy`1[[System.__Canon, System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], ILCompiler.DependencyAnalysisFramework, Version=9.0.0.0, Culture=neutral, PublicKeyToken=null],[System.__Canon, System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].ComputeMarkedNodes()
   at ILCompiler.RyuJitCompilation.CompileInternal(System.String, ILCompiler.ObjectDumper)
   at ILCompiler.Compilation.ILCompiler.ICompilation.Compile(System.String, ILCompiler.ObjectDumper)
   at ILCompiler.Program.Run()
   at ILCompiler.ILCompilerRootCommand+<>c__DisplayClass236_0.<.ctor>b__0(System.CommandLine.ParseResult)
   at System.CommandLine.Invocation.InvocationPipeline.Invoke(System.CommandLine.ParseResult)
   at System.CommandLine.ParseResult.Invoke()
   at ILCompiler.Program.Main(System.String[])

Native stack trace:

[0x0]   clrjit_win_aot_x86_x64!GenTree::OperGet+0xb   0x176d43d1f0   0x7ffd9f866e74   
[0x1]   clrjit_win_aot_x86_x64!GenTree::IsCall+0x14   0x176d43d200   0x7ffd9f9685e1   
[0x2]   clrjit_win_aot_x86_x64!ForwardSubVisitor::PostOrderVisit+0x91   0x176d43d240   0x7ffd9f96a0b7   
[0x3]   clrjit_win_aot_x86_x64!GenTreeVisitor<ForwardSubVisitor>::WalkTree+0xb57   0x176d43d2a0   0x7ffd9f96acbf   
[0x4]   clrjit_win_aot_x86_x64!Compiler::fgForwardSubStatement+0x49f   0x176d43d590   0x7ffd9f96a4df   
[0x5]   clrjit_win_aot_x86_x64!Compiler::fgForwardSubBlock+0x6f   0x176d43d880   0x7ffd9f96a40c   
[0x6]   clrjit_win_aot_x86_x64!Compiler::fgForwardSub+0x14c   0x176d43d8e0   0x7ffd9f8ad0cc   
[0x7]   clrjit_win_aot_x86_x64!CompilerPhaseWithStatus::DoPhase+0x2c   0x176d43d990   0x7ffd9fb3b157   
[0x8]   clrjit_win_aot_x86_x64!Phase::Run+0x87   0x176d43d9d0   0x7ffd9f8acfcf   
[0x9]   clrjit_win_aot_x86_x64!DoPhase+0x4f   0x176d43da50   0x7ffd9f8b6dd1   
[0xa]   clrjit_win_aot_x86_x64!Compiler::compCompile+0x7e1   0x176d43dac0   0x7ffd9f8bad02   
[0xb]   clrjit_win_aot_x86_x64!Compiler::compCompileHelper+0x1262   0x176d43e110   0x7ffd9f8b48aa   
[0xc]   clrjit_win_aot_x86_x64!`Compiler::compCompile'::`170'::__Body::Run+0x6a   0x176d43e290   0x7ffd9f8b90a3   
[0xd]   clrjit_win_aot_x86_x64!Compiler::compCompile+0xfc3   0x176d43e2f0   0x7ffd9f8b46ea   
[0xe]   clrjit_win_aot_x86_x64!``jitNativeCode'::`8'::__Body::Run'::`5'::__Body::Run+0x18a   0x176d43e5f0   0x7ffd9f8b4794   
[0xf]   clrjit_win_aot_x86_x64!`jitNativeCode'::`8'::__Body::Run+0x94   0x176d43e640   0x7ffd9f8c3ab8   
[0x10]   clrjit_win_aot_x86_x64!jitNativeCode+0x1d8   0x176d43e6f0   0x7ffd9f8cf59e   
[0x11]   clrjit_win_aot_x86_x64!CILJit::compileMethod+0x1ce   0x176d43edd0   0x7ffdc2f2942f   
[0x12]   jitinterface_x64!JitCompileMethod+0x11f   0x176d43ef20   0x7ffd45b78a48   

Value of parent is null in clrjit_win_aot_x86_x64!ForwardSubVisitor::PostOrderVisit+0x91:
image

JIT dump of System.Text.Json.Serialization.Metadata.JsonMetadataServices:PopulateProperties:
Runtime_90323.txt

Metadata

Metadata

Labels

arch-x86area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Type

No type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions