Skip to content

JIT: Potential bad codegen with AlignRight #105468

Closed
@jakobbotsch

Description

@jakobbotsch
// Generated by Fuzzlyn v1.7 on 2024-07-25 11:40:55
// Run on X64 Windows
// Seed: 418121815423725559-vectort,vector128,vector256,x86aes,x86avx,x86avx2,x86bmi1,x86bmi1x64,x86bmi2,x86bmi2x64,x86fma,x86lzcnt,x86lzcntx64,x86pclmulqdq,x86popcnt,x86popcntx64,x86sse,x86ssex64,x86sse2,x86sse2x64,x86sse3,x86sse41,x86sse41x64,x86sse42,x86sse42x64,x86ssse3,x86x86base
// Reduced from 72.7 KiB to 1.0 KiB in 00:01:55
// Debug: Outputs <0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>
// Release: Outputs <1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1>
using System;
using System.Runtime.CompilerServices;
using System.Numerics;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;

public struct S3
{
    public byte F0;
}

public class Program
{
    public static IRuntime s_rt;
    public static S3 s_3;
    public static void Main()
    {
        s_rt = new Runtime();
        var vr15 = (ushort)0;
        var vr16 = Vector256.CreateScalar(vr15);
        var vr17 = Vector256.Create<ushort>(1);
        var vr18 = (ushort)0;
        var vr19 = Vector256.CreateScalar(vr18);
        var vr20 = s_3.F0;
        var vr21 = Avx2.AlignRight(vr17, vr19, vr20);
        M6(vr16, vr21);
    }

    public static void M6(Vector256<ushort> arg1, Vector256<ushort> arg3)
    {
        s_rt.WriteLine(arg1);
    }
}

public interface IRuntime
{
    void WriteLine<T>(T value);
}

public class Runtime : IRuntime
{
    public void WriteLine<T>(T value) => System.Console.WriteLine(value);
}

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