// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

// Adapted from:
// Generated by Fuzzlyn v1.5 on 2022-07-10 17:11:48
// Run on X86 Windows
// Seed: 2002556551479521504
// Reduced from 184.6 KiB to 0.9 KiB in 00:03:45
// Debug: Outputs 0
// Release: Outputs -10

using System;
using System.Runtime.CompilerServices;
using Xunit;

public class Runtime_71939
{
    [Fact]
    public static int TestEntryPoint()
    {
        int v3 = 1;
        return Check(0, -v3, Mutate(ref v3));
    }

    [MethodImpl(MethodImplOptions.NoInlining)]
    public static int Mutate(ref int arg)
    {
        arg = 10;
        return 0;
    }

    [MethodImpl(MethodImplOptions.NoInlining)]
    public static int Check(ulong arg0, int arg1, int arg2)
    {
        if (arg1 != -1)
        {
            Console.WriteLine("FAIL: mutated arg is {0}", arg1);
            return -1;
        }

        Console.WriteLine("PASS: mutated arg is {0}", arg1);
        return 100;
    }
}
