Closed
Description
// Found by Antigen
using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
public class TestClass
{
public struct S2
{
public short short_1;
}
static byte s_byte_3 = 4;
static int s_int_8 = -1;
static float s_float_11 = -5f;
static S2 s_s2_17 = new S2();
int int_24 = 5;
float float_27 = 5.1025643f;
S2 s2_33 = new S2();
static int s_loopInvariant = 0;
public byte LeafMethod1()
{
unchecked
{
return 15%4;
}
}
public float LeafMethod9()
{
unchecked
{
return float_27;
}
}
public float Method1(ref float p_float_34, out S2 p_s2_35, byte p_byte_36, S2 p_s2_37, ref int p_int_38)
{
unchecked
{
uint uint_51 = 5;
S2 s2_54 = new S2();
S2 s2_55 = s2_54;
p_s2_35 = s2_33;
for (int __loopvar4 = s_loopInvariant; s_int_8 < s_int_8; __loopvar4 += 3, uint_51 &= 15/4)
{} Log("s2_55", s2_55);
return float_27 /= 15+4;
}
}
public void Method0()
{
unchecked
{
S2 s2_137 = new S2();
do
{
}
while (Method1(ref float_27, out s_s2_17, s_byte_3, s2_137, ref int_24) - LeafMethod9()== (s_float_11 *= 15+4)/ Method1(ref float_27, out s2_33, LeafMethod1(), s2_33, ref s_int_8)+ 21);
return;
}
}
public static void Main(string[] args)
{
new TestClass().Method0();
}
[MethodImpl(MethodImplOptions.NoInlining)]
public static void Log(string varName, object varValue)
{
}
}
/*
Environment:
set COMPlus_TieredCompilation=1
set COMPlus_TC_OnStackReplacement_InitialCounter=1
set COMPlus_OSR_HitLimit=2
set COMPlus_AltJitName=clrjit_universal_arm64_x64.dll
set COMPlus_AltJit=Method1
Assert failure(PID 32168 [0x00007da8], Thread: 33408 [0x8280]): Assertion failed 'isValidGeneralDatasize(size)' in 'TestClass:Method1(byref,byref,ubyte,S2,byref):float:this' during 'Generate code' (IL size 92; hash 0x0ec8894a; Tier1-OSR)
File: D:\git\dotnet-runtime\src\coreclr\jit\emitarm64.cpp Line: 5432
Image: d:\git\dotnet-runtime\artifacts\tests\coreclr\windows.x64.Checked\tests\Core_Root\CoreRun.exe
*/