-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Assertion failed '!varTypeIsUnsigned(type) || varTypeIsSmall(type)' during 'Generate code' #91174
Labels
arch-x64
area-CodeGen-coreclr
CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
os-windows
Milestone
Comments
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue Details// 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 S1
{
public struct S1_D1_F2
{
}
}
public struct S2
{
}
static int s_int_10 = 2;
static long s_long_11 = -1;
static Vector128<uint> s_v128_uint_33 = Vector128<uint>.AllBitsSet;
static Vector256<byte> s_v256_byte_38 = Vector256<byte>.Zero;
static Vector256<ushort> s_v256_ushort_41 = Vector256.Create((ushort)1);
static Vector256<ulong> s_v256_ulong_45 = Vector256.CreateScalar((ulong)2);
static S1 s_s1_52 = new S1();
bool bool_54 = true;
int int_60 = 5;
Vector128<uint> v128_uint_83 = Vector128.Create((uint)5);
Vector256<ushort> v256_ushort_91 = Vector256.CreateScalar((ushort)0);
Vector256<ulong> v256_ulong_95 = Vector256.Create((ulong)5, 1, 2147483648, 5);
S1.S1_D1_F2 s1_s1_d1_f2_101 = new S1.S1_D1_F2();
S1 s1_102 = new S1();
S2 s2_103 = new S2();
static int s_loopInvariant = 1;
public S1.S1_D1_F2 Method1(out S1 p_s1_104, out Vector128<uint> p_v128_uint_105, S1 p_s1_106, ushort p_ushort_107, ref S2 p_s2_108, decimal p_decimal_109)
{
unchecked
{
int int_116 = 5;
S1.S1_D1_F2 s1_s1_d1_f2_124 = new S1.S1_D1_F2();
p_v128_uint_105 = v128_uint_83 * (s_v128_uint_33 *= 15*4);
if (bool_54 = bool_54 || (bool_54 = 15<=4))
{
}
else
{
for (; s_int_10 < 15+4; s_int_10++)
{
for (;;)
{
for (; int_116 < (int_60 += 15^4); int_116++)
{
int __loopvar156 = 15-4;
for (; int_60 < Avx2.MoveMask(s_v256_byte_38); s_long_11 ^= 15+4)
{
if (__loopvar156 > s_loopInvariant)
break;
if (Vector256.ToScalar(Vector256.AsUInt64(s_v256_ushort_41 += v256_ushort_91)) < Vector256.ToScalar(s_v256_ulong_45 = v256_ulong_95 *= 15|4))
{
}
else
{
int_116 <<= 15<<4;
}
}
}
}
}
}
return s1_s1_d1_f2_124;
}
}
public void Method0()
{
unchecked
{
s1_s1_d1_f2_101 = Method1(out s1_102, out s_v128_uint_33, s_s1_52, 15&4, ref s2_103, 15/4);
return;
}
}
public static void Main(string[] args)
{
new TestClass().Method0();
}
}
/*
Environment:
Assert failure(PID 17672 [0x00004508], Thread: 48876 [0xbeec]): Assertion failed '!varTypeIsUnsigned(type) || varTypeIsSmall(type)' in 'TestClass:Method1(byref,byref,TestClass+S1,ushort,byref,System.Decimal):TestClass+S1+S1_D1_F2:this' during 'Generate code' (IL size 248; hash 0xadb68bc7; Instrumented Tier0)
File: D:\git\runtime\src\coreclr\jit\codegenxarch.cpp Line: 6895
Image: D:\git\runtime\artifacts\tests\coreclr\windows.x64.Checked\tests\Core_Root\CoreRun.exe
*/
|
jakobbotsch
added a commit
to jakobbotsch/runtime
that referenced
this issue
Aug 29, 2023
These could create TYP_ULONG/TYP_UINT indirs/LCL_FLD nodes, which are illegal. Fix dotnet#91174
jakobbotsch
added a commit
that referenced
this issue
Aug 30, 2023
These could create TYP_ULONG/TYP_UINT indirs/LCL_FLD nodes, which are illegal. Fix #91174
github-actions bot
pushed a commit
that referenced
this issue
Sep 11, 2023
These could create TYP_ULONG/TYP_UINT indirs/LCL_FLD nodes, which are illegal. Fix #91174
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
arch-x64
area-CodeGen-coreclr
CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
os-windows
The text was updated successfully, but these errors were encountered: