Skip to content

JIT SVE: Assertion failed 'nestedOp2->OperIsHWIntrinsic()' during 'Lowering nodeinfo' #106869

@jakobbotsch

Description

@jakobbotsch
// Generated by Fuzzlyn v2.3 on 2024-08-23 10:25:51
// Run on Arm64 Windows
// Seed: 13938901376337307772-vectort,vector64,vector128,armsve
// Reduced from 210.5 KiB to 1.1 KiB in 00:02:19
// Hits JIT assert in Release:
// Assertion failed 'nestedOp2->OperIsHWIntrinsic()' in 'Program:Main(Fuzzlyn.ExecutionServer.IRuntime)' during 'Lowering nodeinfo' (IL size 119; hash 0xade6b36b; FullOpts)
//
//     File: C:\dev\dotnet\runtime2\src\coreclr\jit\lowerarmarch.cpp Line: 4062
//
using System;
using System.Numerics;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.Arm;

public struct S0
{
    public ulong F5;
}

public class C0
{
    public int F1;
}

public class Program
{
    public static S0 s_7;
    public static byte s_14;
    public static void Main()
    {
        var vr12 = new C0();
        var vr14 = vr12.F1;
        var vr15 = Vector128.CreateScalar(vr14).AsVector();
        var vr16 = Vector128.CreateScalar(0).AsVector();
        var vr17 = Vector128.CreateScalar(0).AsVector();
        var vr18 = Vector128.CreateScalar(0).AsVector();
        var vr19 = Vector128.CreateScalar(1).AsVector();
        var vr20 = Sve.ConditionalSelect(vr17, vr18, vr19);
        var vr21 = Vector128.CreateScalar(0).AsVector();
        var vr22 = Sve.ConditionalSelect(vr16, vr20, vr21);
        var vr23 = (uint)Sve.GetActiveElementCount(vr15, vr22);
        M17(s_7, vr23);
    }

    public static byte M17(S0 argThis, uint arg0)
    {
        var vr0 = argThis.F5;
        return (byte)(4294967295U | (sbyte)Sve.SaturatingDecrementByActiveElementCount(vr0, Vector.Create<byte>(s_14)));
    }
}

cc @dotnet/jit-contrib @dotnet/arm64-contrib

Metadata

Metadata

Assignees

Labels

Priority:2Work that is important, but not critical for the releasearea-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIarm-sveWork related to arm64 SVE/SVE2 supportin-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