Skip to content

Assertion failed 'node->IsUnusedValue() && "found an unmarked unused value"' during 'Lowering nodeinfo'  #91173

@kunalspathak

Description

@kunalspathak
// Found by Antigen


using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;
using System.Numerics;
public class TestClass
{
    public struct S4
    {
        public struct S4_D1_F2
        {
        }
        public struct S4_D1_F4
        {
        }
    }
    public struct S5
    {
    }
    static int s_int_21 = 2;
    static S4.S4_D1_F2 s_s4_s4_d1_f2_68 = new S4.S4_D1_F2();
    int int_79 = 4;
    Vector256<float> v256_float_115 = Vector256.Create(4f);
    S4.S4_D1_F2 s4_s4_d1_f2_126 = new S4.S4_D1_F2();
    S4.S4_D1_F4 s4_s4_d1_f4_128 = new S4.S4_D1_F4();
    static int s_loopInvariant = 5;
    public S4.S4_D1_F2 Method1(long p_long_131, S5 p_s5_132, S4.S4_D1_F4 p_s4_s4_d1_f4_133)
    {
        unchecked
        {
            switch (15&4)
            {
                case 4:
                {
                    for (;;)
                    {
                        switch (int_79 - (s_int_21 >>= 15*4))
                        {
                            case 2:
                            {
                                while (15>4|| 15<=4)
                                {
                                    while (Vector256.ToScalar(v256_float_115) != 15%4&& 15!=4)
{}                                                                    }
                                break;
                            }
                            case -2147483647:
                            {
                                try
                                {
                                    int __loopvar7 = s_loopInvariant;
                                }
                                catch (System.ArithmeticException)
                                {
                                    while ((15|4)<= 15+4)
                                    {
                                    }
                                }
                                break;
                            }
                            case -5:
                            {
                                break;
                            }
                            default:
                            {
                                break;
                            }
                        }
                    }
                    break;
                }
                default:
                {
                    break;
                }
            }
            return s_s4_s4_d1_f2_68;
        }
    }
    public void Method0()
    {
        unchecked
        {
            long long_205 = 5;
            S5 s5_228 = new S5();
            s4_s4_d1_f2_126 = Method1(long_205, s5_228, s4_s4_d1_f4_128);
            return;
        }
    }
    public static void Main(string[] args)
    {
        new TestClass().Method0();
    }
}
/*

Environment:

set COMPlus_JitNoCSE2=1
set COMPlus_JitDoAssertionProp=0

Assert failure(PID 4736 [0x00001280], Thread: 35412 [0x8a54]): Assertion failed 'node->IsUnusedValue() && "found an unmarked unused value"' in 'TestClass:Method1(long,TestClass+S5,TestClass+S4+S4_D1_F4):TestClass+S4+S4_D1_F2:this' during 'Lowering nodeinfo' (IL size 71; hash 0x280a50f7; Tier0-FullOpts)
    File: D:\git\runtime\src\coreclr\jit\lir.cpp Line: 1691
    Image: D:\git\runtime\artifacts\tests\coreclr\windows.x64.Checked\tests\Core_Root\CoreRun.exe
*/

Metadata

Metadata

Assignees

Labels

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

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions