Skip to content

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

Closed
@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

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions