Skip to content

JIT assert on arm32 when running DllImportGenerator unit tests: remainingSize == 4 #60705

@safern

Description

@safern

I just hit this on CI on a coreclr checked alpine 3.14 arm and Linux arm runs

net7.0-Linux-Debug-arm-CoreCLR_checked-(Alpine.314.Arm32.Open)

Console log:

/root/helix/work/workitem/e /root/helix/work/workitem/e
  Discovering: DllImportGenerator.Unit.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  DllImportGenerator.Unit.Tests (found 114 test cases)
  Starting:    DllImportGenerator.Unit.Tests (parallel test collections = on, max threads = 4)
    DllImportGenerator.UnitTests.IncrementalGenerationTests.AppendingUnrelatedSource_DoesNotRegenerateSource [SKIP]
      The GeneratorDriver treats all SyntaxTree replace operations on a Compilation as an Add/Remove operation instead of a Modify operation, so all cached results based on that input are thrown out. As a result, we cannot validate that unrelated changes within the same SyntaxTree do not cause regeneration.
    DllImportGenerator.UnitTests.IncrementalGenerationTests.ChangingMarshallingAttributes_SameStrategy_DoesNotRegenerate [SKIP]
      The GeneratorDriver treats all SyntaxTree replace operations on a Compilation as an Add/Remove operation instead of a Modify operation, so all cached results based on that input are thrown out. As a result, we cannot validate that unrelated changes within the same SyntaxTree do not cause regeneration.

Assert failure(PID 23 [0x00000017], Thread: 52 [0x0034]): Assertion failed 'remainingSize == 4' in 'Microsoft.CodeAnalysis.CSharp.Formatting.NewLineUserSettingFormattingRule:WithOptions(Microsoft.CodeAnalysis.Diagnostics.AnalyzerConfigOptions):Microsoft.CodeAnalysis.Formatting.Rules.AbstractFormattingRule:this' during 'Generate code' (IL size 31)

    File: /__w/1/s/src/coreclr/jit/codegenarmarch.cpp Line: 1062
    Image: /root/helix/work/correlation/dotnet

./RunTests.sh: line 162:    23 Aborted                 (core dumped) "$RUNTIME_PATH/dotnet" exec --runtimeconfig DllImportGenerator.Unit.Tests.runtimeconfig.json --depsfile DllImportGenerator.Unit.Tests.deps.json xunit.console.dll DllImportGenerator.Unit.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing $RSP_FILE
/root/helix/work/workitem/e
----- end Wed Oct 20 21:35:54 UTC 2021 ----- exit code 134 ----------------------------------------------------------

Core Dump: https://helixre8s23ayyeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-pull-60652-merge-c3b62da787c7471eb4/DllImportGenerator.Unit.Tests/1/core.1001.23?sv=2019-07-07&se=2021-11-09T21%3A34%3A31Z&sr=c&sp=rl&sig=AjcPkewA%2BElB7eAZKfTMCMRY7ZJgIJfGFW3iDA0wq%2FM%3D
How to debug dump: https://helixre8s23ayyeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-pull-60652-merge-c3b62da787c7471eb4/DllImportGenerator.Unit.Tests/1/how-to-debug-dump.md?sv=2019-07-07&se=2021-11-09T21%3A34%3A31Z&sr=c&sp=rl&sig=AjcPkewA%2BElB7eAZKfTMCMRY7ZJgIJfGFW3iDA0wq%2FM%3D

cc: @jkoritzinsky @elinor-fung

Metadata

Metadata

Labels

arch-arm32area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIbugdisabled-testThe test is disabled in source code against the issue

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions