diff options
Diffstat (limited to 'tests/src/JIT/Regression/JitBlue/DevDiv_280120/DevDiv_280120.cs')
-rw-r--r-- | tests/src/JIT/Regression/JitBlue/DevDiv_280120/DevDiv_280120.cs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_280120/DevDiv_280120.cs b/tests/src/JIT/Regression/JitBlue/DevDiv_280120/DevDiv_280120.cs new file mode 100644 index 0000000000..39888b100d --- /dev/null +++ b/tests/src/JIT/Regression/JitBlue/DevDiv_280120/DevDiv_280120.cs @@ -0,0 +1,22 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +// This test was originally a repro for an assertion regarding incorrect lclVar ref counts due to a bug in the +// decomposition of a long-typed st.lclFld node. The repro requires that a dead store of this type survives until +// decomposition. We must therefore avoid running liveness before decomposition as part of this test, which requires +// skipping SSA (and dependent optimizations). This pass is disabled in the project file by setting JitDoSsa to 0 +// before running the test. + +struct S +{ + long m_fld; + int m_a, m_b, m_c, m_d; + + static int Main(string[] args) + { + S s; + s.m_fld = (long)args.Length; + return 100; + } +} |