Skip to content

[Fuzzlyn] JIT: Assertion failed 'IsMultiRegNode()' during 'Head and tail merge' #110316

@amanasifkhalid

Description

@amanasifkhalid

Fuzzlyn run

// Generated by Fuzzlyn v2.4 on 2024-11-30 16:54:32
// Run on Arm64 MacOS
// Seed: 15678297652937587188-vectort,vector64,vector128,armadvsimd,armadvsimdarm64,armaes,armarmbase,armarmbasearm64,armcrc32,armcrc32arm64,armdp,armrdm,armrdmarm64,armsha1,armsha256
// Reduced from 463.1 KiB to 0.9 KiB in 00:02:29
// Hits JIT assert in Release:
// Assertion failed 'IsMultiRegNode()' in 'Program:Main(Fuzzlyn.ExecutionServer.IRuntime)' during 'Head and tail merge' (IL size 79; hash 0xade6b36b; FullOpts)
// 
//     File: /Users/runner/work/1/s/src/coreclr/jit/gentree.h Line: 6370
// 
using System;
using System.Numerics;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.Arm;

public struct S0
{
    public sbyte F3;
}

public struct S2
{
    public ulong F1;
}

public class Program
{
    public static Vector128<sbyte> s_1;
    public static void Main()
    {
        S2 vr6 = default(S2);
        S0 vr7 = default(S0);
        if ((0 != vr6.F1))
        {
            var vr8 = (sbyte)0;
            var vr9 = Vector128.CreateScalar(vr8);
            var vr10 = Vector128.Create<sbyte>(0);
            s_1 = AdvSimd.Arm64.VectorTableLookup(vr9, vr10);
        }
        else
        {
            var vr11 = Vector128.Create<sbyte>(0);
            var vr12 = vr7.F3;
            var vr13 = Vector128.CreateScalar(vr12);
            s_1 = AdvSimd.Arm64.VectorTableLookup(vr11, vr13);
        }
    }
}

cc @dotnet/jit-contrib

Metadata

Metadata

Assignees

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIblocking-clean-ci-optionalBlocking optional rolling runsin-prThere is an active PR which will close this issue when it is merged

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions